diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 19dce3b..a8c3275 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -6,3 +6,17 @@ repos: rev: 25.1.0 hooks: - id: black + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v5.0.0 + hooks: + - id: check-yaml + - id: end-of-file-fixer + - id: trailing-whitespace + - repo: https://github.com/astral-sh/ruff-pre-commit + # Ruff version. + rev: v0.9.9 + hooks: + # Run the linter. + - id: ruff + types_or: [ python, pyi ] + args: [ --fix ] diff --git a/README.md b/README.md index deb32ae..8f6f698 100644 --- a/README.md +++ b/README.md @@ -71,4 +71,4 @@ On peut ensuite modifier le mot de passe de l'utilisateur root qui a tous les dr ### Complètement réinitialiser une instance * ```docker compose down --rmi all --volumes``` -* ```make build-dev``` \ No newline at end of file +* ```make build-dev``` diff --git a/deployment/scripts/wait-db.sh b/deployment/scripts/wait-db.sh index 57445ca..bafd6ff 100644 --- a/deployment/scripts/wait-db.sh +++ b/deployment/scripts/wait-db.sh @@ -5,4 +5,4 @@ wait_for_it=$(dirname "$0")/wait-for-it.sh chmod +x $wait_for_it chmod +x $1 -$wait_for_it -h $POSTGRES_HOST -p $POSTGRES_PORT -- $1 \ No newline at end of file +$wait_for_it -h $POSTGRES_HOST -p $POSTGRES_PORT -- $1 diff --git a/experimentations/filter_vc.py b/experimentations/filter_vc.py index 1015db0..697f23f 100755 --- a/experimentations/filter_vc.py +++ b/experimentations/filter_vc.py @@ -13,4 +13,3 @@ parser.add_simple_formatter("vc_raw_html", "") plain_txt = parser.format(text) print(plain_txt) - diff --git a/experimentations/get_amisdutempsdescerises.py b/experimentations/get_amisdutempsdescerises.py index 9dd11c8..f13bae8 100755 --- a/experimentations/get_amisdutempsdescerises.py +++ b/experimentations/get_amisdutempsdescerises.py @@ -1,40 +1,42 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import ( + amisdutempsdescerises, +) +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), amisdutempsdescerises.CExtractor()) url = "https://amisdutempsdescerises.org/page.php" url_human = "https://amisdutempsdescerises.org/" try: - events = u2e.process(url, url_human, cache = "cache-amiscerices.xml", default_values = {"category": "Rencontres & Débats"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-amiscerices.xml", + default_values={"category": "Rencontres & Débats"}, + published=True, + ) exportfile = "events-amiscerices.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_arachnee_events.py b/experimentations/get_arachnee_events.py index 12f5e2e..27daa75 100755 --- a/experimentations/get_arachnee_events.py +++ b/experimentations/get_arachnee_events.py @@ -1,37 +1,42 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - +from src.agenda_culturel.import_tasks.custom_extractors import arachnee +from src.agenda_culturel.import_tasks.downloader import ( + ChromiumHeadlessDownloader, +) +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(ChromiumHeadlessDownloader(), arachnee.CExtractor()) url = "https://www.arachnee-concerts.com/wp-admin/admin-ajax.php?action=movies-filter&per_page=9999&date=NaN.NaN.NaN&theatres=Clermont-Fd&cat=&sorting=&list_all_events=¤t_page=" url_human = "https://www.arachnee-concerts.com/agenda-des-concerts/Clermont-Fd/" try: - events = u2e.process(url, url_human, cache = "cache-arachnee.html", default_values = {}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-arachnee.html", + default_values={}, + published=True, + ) exportfile = "events-arachnee.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_c3c_events.py b/experimentations/get_c3c_events.py index b09c13e..9ce1f04 100755 --- a/experimentations/get_c3c_events.py +++ b/experimentations/get_c3c_events.py @@ -1,40 +1,42 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import billetterie_cf +from src.agenda_culturel.import_tasks.downloader import ( + ChromiumHeadlessDownloader, +) +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(ChromiumHeadlessDownloader(), billetterie_cf.CExtractor()) url = "https://billetterie-c3c.clermont-ferrand.fr/" url_human = "https://billetterie-c3c.clermont-ferrand.fr/" try: - events = u2e.process(url, url_human, cache = "cache-c3c.html", default_values = {"location": "La Cour des 3 Coquins"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-c3c.html", + default_values={"location": "La Cour des 3 Coquins"}, + published=True, + ) exportfile = "events-c3c.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_facebook_event.py b/experimentations/get_facebook_event.py index 0da957f..24b673a 100755 --- a/experimentations/get_facebook_event.py +++ b/experimentations/get_facebook_event.py @@ -1,41 +1,38 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.generic_extractors.fbevent import * - - - - +from src.agenda_culturel.import_tasks.downloader import ( + ChromiumHeadlessDownloader, +) +from src.agenda_culturel.import_tasks.generic_extractors.fbevent import ( + CExtractor, +) +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(ChromiumHeadlessDownloader(), CExtractor()) - url="https://www.facebook.com/events/3575802569389184/3575802576055850/?active_tab=about" + url = "https://www.facebook.com/events/3575802569389184/3575802576055850/?active_tab=about" - events = u2e.process(url, cache = "fb.html", published = True) + events = u2e.process(url, cache="fb.html", published=True) exportfile = "event-facebook.json" print("Saving events to file {}".format(exportfile)) with open(exportfile, "w") as f: json.dump(events, f, indent=4, default=str) - diff --git a/experimentations/get_facebook_events.py b/experimentations/get_facebook_events.py index 8760c3d..482c915 100755 --- a/experimentations/get_facebook_events.py +++ b/experimentations/get_facebook_events.py @@ -1,40 +1,42 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.generic_extractors import * - - - - +from src.agenda_culturel.import_tasks.downloader import ( + ChromiumHeadlessDownloader, +) +from src.agenda_culturel.import_tasks.generic_extractors import fbevents +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(ChromiumHeadlessDownloader(), fbevents.CExtractor()) url = "https://www.facebook.com/laJeteeClermont/upcoming_hosted_events" url_human = "https://www.facebook.com/laJeteeClermont/upcoming_hosted_events" try: - events = u2e.process(url, url_human, cache = "cache-lajetee-fb.html", default_values = {"location": "La Jetée"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-lajetee-fb.html", + default_values={"location": "La Jetée"}, + published=True, + ) exportfile = "events-lajetee-fb.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_gds_events.py b/experimentations/get_gds_events.py index 5ef11a9..e5ee423 100644 --- a/experimentations/get_gds_events.py +++ b/experimentations/get_gds_events.py @@ -1,8 +1,8 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory @@ -18,23 +18,25 @@ parent = os.path.dirname(current) sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import billetterie_cf +from src.agenda_culturel.import_tasks.downloader import ( + ChromiumHeadlessDownloader, +) +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(ChromiumHeadlessDownloader(), billetterie_cf.CExtractor()) url = "https://billetterie-gds.clermont-ferrand.fr/" url_human = "https://billetterie-gds.clermont-ferrand.fr/" try: - events = u2e.process(url, url_human, cache = "cache-gds.html", default_values = {}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-gds.html", + default_values={}, + published=True, + ) exportfile = "events-gds.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_ical_events.py b/experimentations/get_ical_events.py index fcc6dfd..05aed05 100755 --- a/experimentations/get_ical_events.py +++ b/experimentations/get_ical_events.py @@ -1,39 +1,44 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.generic_extractors.ical import * - - - - +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.generic_extractors.ical import ( + ICALExtractor, +) +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), ICALExtractor()) url = "https://calendar.google.com/calendar/ical/programmation.lesaugustes%40gmail.com/public/basic.ics" url_human = "https://www.cafelesaugustes.fr/la-programmation/" - events = u2e.process(url, url_human, cache = "cache-augustes.ical", default_values = {"category": "Sans catégorie", "location": "Café lecture les Augustes"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-augustes.ical", + default_values={ + "category": "Sans catégorie", + "location": "Café lecture les Augustes", + }, + published=True, + ) exportfile = "events-augustes.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_la_raymonde.py b/experimentations/get_la_raymonde.py index b5b91f6..af44d90 100755 --- a/experimentations/get_la_raymonde.py +++ b/experimentations/get_la_raymonde.py @@ -1,40 +1,43 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import laraymonde +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), laraymonde.CExtractor()) url = "https://www.raymondbar.net/" url_human = "https://www.raymondbar.net/" try: - events = u2e.process(url, url_human, cache = "cache-la-raymonde.html", default_values = {"location": "La Raymonde", "category": "Fêtes & Concerts"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-la-raymonde.html", + default_values={ + "location": "La Raymonde", + "category": "Fêtes & Concerts", + }, + published=True, + ) exportfile = "events-la-raymonde.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_lacomedie_events.py b/experimentations/get_lacomedie_events.py index 1251a1b..48fb7e6 100755 --- a/experimentations/get_lacomedie_events.py +++ b/experimentations/get_lacomedie_events.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import lacomedie +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), lacomedie.CExtractor()) url = "https://lacomediedeclermont.com/saison24-25/wp-admin/admin-ajax.php?action=load_dates_existantes" url_human = "https://lacomediedeclermont.com/saison24-25/" try: - events = u2e.process(url, url_human, cache = "cache-lacomedie.html", default_values = {"location": "La Comédie de Clermont"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-lacomedie.html", + default_values={"location": "La Comédie de Clermont"}, + published=True, + ) exportfile = "events-lacomedie.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_lacoope_events.py b/experimentations/get_lacoope_events.py index 93946b9..d72b2d9 100755 --- a/experimentations/get_lacoope_events.py +++ b/experimentations/get_lacoope_events.py @@ -1,40 +1,43 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import lacoope +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), lacoope.CExtractor()) url = "https://www.lacoope.org/concerts-calendrier/" url_human = "https://www.lacoope.org/concerts-calendrier/" try: - events = u2e.process(url, url_human, cache = "cache-lacoope.html", default_values = {"category": "Fêtes & Concerts", "location": "La Coopérative"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-lacoope.html", + default_values={ + "category": "Fêtes & Concerts", + "location": "La Coopérative", + }, + published=True, + ) exportfile = "events-lacoope.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_lapucealoreille_events.py b/experimentations/get_lapucealoreille_events.py index a345854..eaf35eb 100755 --- a/experimentations/get_lapucealoreille_events.py +++ b/experimentations/get_lapucealoreille_events.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import lapucealoreille +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), lapucealoreille.CExtractor()) url = "https://www.lapucealoreille63.fr/agenda" url_human = "https://www.lapucealoreille63.fr/agenda" try: - events = u2e.process(url, url_human, cache = "cache-lapucealoreille.xml", default_values = {}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-lapucealoreille.xml", + default_values={}, + published=True, + ) exportfile = "events-lapucealoreille.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_le_poulailler.py b/experimentations/get_le_poulailler.py index 63662a2..17e4374 100755 --- a/experimentations/get_le_poulailler.py +++ b/experimentations/get_le_poulailler.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.generic_extractors import wordpress_mec +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), wordpress_mec.CExtractor()) url = "https://www.cabaretlepoulailler.fr/agenda/tout-lagenda/" url_human = "https://www.cabaretlepoulailler.fr/agenda/tout-lagenda/" try: - events = u2e.process(url, url_human, cache = "cache-le-poulailler.html", default_values = {"location": "Le Poulailler"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-le-poulailler.html", + default_values={"location": "Le Poulailler"}, + published=True, + ) exportfile = "events-le-poulailler.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_le_rio.py b/experimentations/get_le_rio.py index 4f2d395..8cf65bc 100755 --- a/experimentations/get_le_rio.py +++ b/experimentations/get_le_rio.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import lerio +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), lerio.CExtractor()) url = "https://www.cinemalerio.com/evenements/" url_human = "https://www.cinemalerio.com/evenements/" try: - events = u2e.process(url, url_human, cache = "cache-le-rio.html", default_values = {"location": "Cinéma le Rio", "category": "Cinéma"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-le-rio.html", + default_values={"location": "Cinéma le Rio", "category": "Cinéma"}, + published=True, + ) exportfile = "events-le-roi.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_lefotomat.py b/experimentations/get_lefotomat.py index c204743..7405d94 100755 --- a/experimentations/get_lefotomat.py +++ b/experimentations/get_lefotomat.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import lefotomat +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), lefotomat.CExtractor()) url = "https://www.lefotomat.com/feed" url_human = "https://www.lefotomat.com/" try: - events = u2e.process(url, url_human, cache = "cache-lefotomat.xml", default_values = {"location": "Le Fotomat'"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-lefotomat.xml", + default_values={"location": "Le Fotomat'"}, + published=True, + ) exportfile = "events-lefotomat.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_les_vinzelles.py b/experimentations/get_les_vinzelles.py index 95a8878..eeaf802 100755 --- a/experimentations/get_les_vinzelles.py +++ b/experimentations/get_les_vinzelles.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.generic_extractors import * - - - - +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.generic_extractors import wordpress_mec +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), wordpress_mec.CExtractor()) url = "https://www.lesvinzelles.com/index.php/programme/" url_human = "https://www.lesvinzelles.com/index.php/programme/" try: - events = u2e.process(url, url_human, cache = "cache-les-vinzelles.html", default_values = {"location": "Les Vinzelles"}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-les-vinzelles.html", + default_values={"location": "Les Vinzelles"}, + published=True, + ) exportfile = "events-les-vinzelles.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_meditheques_clermont.py b/experimentations/get_meditheques_clermont.py index 026f1a4..56b90e8 100755 --- a/experimentations/get_meditheques_clermont.py +++ b/experimentations/get_meditheques_clermont.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.generic_extractors import * - - - - +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.extractor import iguana_agenda +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), iguana_agenda.CExtractor()) url = "https://bibliotheques-clermontmetropole.eu/iguana/Service.PubContainer.cls?uuid=a4a1f992-06da-4ff4-9176-4af0a095c7d1" url_human = "https://bibliotheques-clermontmetropole.eu/iguana/www.main.cls?surl=AGENDA_Tout%20lagenda" try: - events = u2e.process(url, url_human, cache = "cache-mediatheques.html", default_values = {}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-mediatheques.html", + default_values={}, + published=True, + ) exportfile = "events-mediatheques.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_milleformes_events.py b/experimentations/get_milleformes_events.py index c9a7264..4fa105e 100755 --- a/experimentations/get_milleformes_events.py +++ b/experimentations/get_milleformes_events.py @@ -1,8 +1,8 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory @@ -18,23 +18,23 @@ parent = os.path.dirname(current) sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.custom_extractors import * - - - - +from src.agenda_culturel.import_tasks.custom_extractors import mille_formes +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), mille_formes.CExtractor()) url = "https://www.milleformes.fr/programme" url_human = "https://www.milleformes.fr/programme" try: - events = u2e.process(url, url_human, cache = "cache-1000formes.html", default_values = {}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-1000formes.html", + default_values={}, + published=True, + ) exportfile = "events-1000formes.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_mobilizon.py b/experimentations/get_mobilizon.py index 36d1145..61ba905 100755 --- a/experimentations/get_mobilizon.py +++ b/experimentations/get_mobilizon.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.generic_extractors import * - - - - +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.generic_extractors import mobilizon +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), mobilizon.CExtractor()) url = "https://mobilizon.fr/@attac63/events?" url_human = "https://mobilizon.fr/@attac63/events" try: - events = u2e.process(url, url_human, cache = "cache-attac63.html", default_values = {}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-attac63.html", + default_values={}, + published=True, + ) exportfile = "events-attac63.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/get_puydedome.py b/experimentations/get_puydedome.py index b54d10b..9f16ed7 100755 --- a/experimentations/get_puydedome.py +++ b/experimentations/get_puydedome.py @@ -1,40 +1,40 @@ #!/usr/bin/python3 # coding: utf-8 -import os import json +import os import sys # getting the name of the directory # where the this file is present. current = os.path.dirname(os.path.realpath(__file__)) - + # Getting the parent directory name # where the current directory is present. parent = os.path.dirname(current) - -# adding the parent directory to + +# adding the parent directory to # the sys.path. sys.path.append(parent) sys.path.append(parent + "/src") -from src.agenda_culturel.import_tasks.downloader import * -from src.agenda_culturel.import_tasks.extractor import * -from src.agenda_culturel.import_tasks.importer import * -from src.agenda_culturel.import_tasks.generic_extractors import * - - - - +from src.agenda_culturel.import_tasks.downloader import SimpleDownloader +from src.agenda_culturel.import_tasks.generic_extractors import apidae_tourisme +from src.agenda_culturel.import_tasks.importer import URL2Events if __name__ == "__main__": - u2e = URL2Events(SimpleDownloader(), apidae_tourisme.CExtractor()) url = "https://widgets.apidae-tourisme.com/filter.js?widget[id]=48" url_human = "https://ens.puy-de-dome.fr/agenda.html" try: - events = u2e.process(url, url_human, cache = "cache-puydedome.html", default_values = {}, published = True) + events = u2e.process( + url, + url_human, + cache="cache-puydedome.html", + default_values={}, + published=True, + ) exportfile = "events-puydedome.json" print("Saving events to file {}".format(exportfile)) diff --git a/experimentations/notes-sources.md b/experimentations/notes-sources.md index b04ddc5..b939e4d 100644 --- a/experimentations/notes-sources.md +++ b/experimentations/notes-sources.md @@ -3,7 +3,7 @@ ## La Comédie de Clermont URL des dates avec événements: https://lacomediedeclermont.com/saison23-24/wp-admin/admin-ajax.php?action=load_dates_existantes -URL des informations d'une date avec paramètres en post: +URL des informations d'une date avec paramètres en post: ```curl --data "action=load_evenements_jour" --data "jour=2024-04-19" "https://lacomediedeclermont.com/saison23-24/wp-admin/admin-ajax.php"``` La donnée retournée est du html assez succinct, avec l'essentiel dedans. @@ -12,7 +12,7 @@ La donnée retournée est du html assez succinct, avec l'essentiel dedans. Dans le source de https://www.lacoope.org/concerts-calendrier/ on trouve un tableau javascript qui contient les urls des événements. Ce tableau peut contenir "Gratuit" en tag. Il n'y a pas l'heure de l'événement. Sur chaque page événémenet, il y a : -- meta name="description" +- meta name="description" - une url https://calendar.google.com/calendar/ avec la plupart des données ## Le caveau de la michodière @@ -20,10 +20,9 @@ Sur chaque page événémenet, il y a : L'adresse https://www.lecaveaudelamichodiere.com/concerts/ donne les concerts du mois en cours. La page est peuplée par une requête javascript qui semble difficile à rejouer indépendamment, car on se prend un erreur 403 (fucking plugin propriétaire eventon). -Si on récupère l'identifiant de l'événement (type event_11377_0), on peut forger une url du type +Si on récupère l'identifiant de l'événement (type event_11377_0), on peut forger une url du type ```https://www.lecaveaudelamichodiere.com/wp-admin/admin-ajax.php?action=eventon_ics_download&event_id=11377&ri=0``` pour récupérer un ical de l'événement. ## La petite gaillarde Le flux RSS https://lapetitegaillarde.fr/?feed=rss2 est à peu près bien structuré. - diff --git a/pyproject.toml b/pyproject.toml index 1bd3ab2..e2c760b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -62,7 +62,7 @@ extend-exclude = ''' [tool.ruff] -format = "grouped" +output-format = "grouped" line-length = 88 # black default extend-exclude = [ "src/migrations/*", @@ -73,6 +73,7 @@ extend-exclude = [ "*__init__.py", ] +[tool.ruff.lint] select = ["E", "F"] ignore = [ "E501", # line too long, handled by black @@ -80,19 +81,17 @@ ignore = [ "C901", # too complex "F405", # name may be undefined, or defined from star imports ] - - # Allow unused variables when underscore-prefixed. dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$" -# Assume Python 3.11. -target-version = "py311" -[tool.ruff.mccabe] +[tool.ruff.lint.mccabe] # Unlike Flake8, default to a complexity level of 10. max-complexity = 10 +[tool.ruff.lint.per-file-ignores] +"experimentations/*.py" = ["E402"] -[tool.ruff.isort] +[tool.ruff.lint.isort] force-to-top = ["src"] known-first-party = ["src"] diff --git a/scripts/format.sh b/scripts/format.sh index be52db8..3ba8574 100755 --- a/scripts/format.sh +++ b/scripts/format.sh @@ -3,4 +3,4 @@ APP_PATH="src" ruff $APP_PATH --fix -black $APP_PATH \ No newline at end of file +black $APP_PATH diff --git a/src/agenda_culturel/admin.py b/src/agenda_culturel/admin.py index 56941ca..9b14d33 100644 --- a/src/agenda_culturel/admin.py +++ b/src/agenda_culturel/admin.py @@ -1,22 +1,22 @@ -from django.contrib import admin from django import forms -from .models import ( - Event, - Category, - Tag, - StaticContent, - DuplicatedEvents, - BatchImportation, - RecurrentImport, - Place, - Message, - ReferenceLocation, - Organisation, -) +from django.contrib import admin from django_better_admin_arrayfield.admin.mixins import DynamicArrayMixin from django_better_admin_arrayfield.forms.widgets import DynamicArrayWidget from django_better_admin_arrayfield.models.fields import DynamicArrayField +from .models import ( + BatchImportation, + Category, + DuplicatedEvents, + Event, + Message, + Organisation, + Place, + RecurrentImport, + ReferenceLocation, + StaticContent, + Tag, +) admin.site.register(Category) admin.site.register(Tag) diff --git a/src/agenda_culturel/calendar.py b/src/agenda_culturel/calendar.py index 8836983..9e34165 100644 --- a/src/agenda_culturel/calendar.py +++ b/src/agenda_culturel/calendar.py @@ -1,14 +1,13 @@ -from datetime import datetime, timedelta, date, time import calendar -from django.db.models import Q, F +import logging +from datetime import date, datetime, time, timedelta + +from django.db.models import CharField, F, Q +from django.db.models.functions import Lower +from django.http import Http404 +from django.template.defaultfilters import date as _date from django.utils import timezone from django.utils.translation import gettext_lazy as _ -from django.template.defaultfilters import date as _date -from django.http import Http404 - -from django.db.models import CharField -from django.db.models.functions import Lower -import logging CharField.register_lookup(Lower) @@ -88,9 +87,10 @@ class DayInCalendar: self._add_event_internal(event) def _add_event_internal(self, event): - from .models import Category from copy import copy + from .models import Category + # copy event local_event = copy(event) @@ -234,7 +234,6 @@ class DayInCalendar: class IntervalInDay(DayInCalendar): - def __init__(self, d, id, name, short_name): self.name = name self.short_name = short_name @@ -244,7 +243,13 @@ class IntervalInDay(DayInCalendar): class CalendarList: def __init__( - self, firstdate, lastdate, filter=None, exact=False, ignore_dup=None, qs=None + self, + firstdate, + lastdate, + filter=None, + exact=False, + ignore_dup=None, + qs=None, ): self.firstdate = firstdate self.lastdate = lastdate @@ -308,7 +313,8 @@ class CalendarList: timezone.get_default_timezone(), ) lastdatetime = timezone.make_aware( - datetime.combine(self.c_lastdate, time.max), timezone.get_default_timezone() + datetime.combine(self.c_lastdate, time.max), + timezone.get_default_timezone(), ) qs = ( qs.filter( @@ -369,14 +375,16 @@ class CalendarList: self.calendar_days[e.start_day.__str__()].add_event(e) else: for d in daterange( - max(e.start_day, self.firstdate), min(e.end_day, self.lastdate) + max(e.start_day, self.firstdate), + min(e.end_day, self.lastdate), ): self.calendar_days[d.__str__()].add_event(e) else: for e_rec in e.get_recurrences_between(firstdate, lastdate): end = e_rec.start_day if e_rec.end_day is None else e_rec.end_day for d in daterange( - max(e_rec.start_day, self.firstdate), min(end, self.lastdate) + max(e_rec.start_day, self.firstdate), + min(end, self.lastdate), ): self.calendar_days[d.__str__()].add_event(e_rec) diff --git a/src/agenda_culturel/celery.py b/src/agenda_culturel/celery.py index bbd426e..6f063ae 100644 --- a/src/agenda_culturel/celery.py +++ b/src/agenda_culturel/celery.py @@ -1,23 +1,43 @@ -import os import json - -from celery import Celery, Task, chain -from celery.schedules import crontab -from celery.utils.log import get_task_logger -from celery.exceptions import MaxRetriesExceededError +import os import time as time_ -from django.conf import settings -from celery.signals import worker_ready - from contextlib import contextmanager -from .import_tasks.extractor import Extractor -from .import_tasks.importer import URL2Events -from .import_tasks.downloader import SimpleDownloader, ChromiumHeadlessDownloader -from .import_tasks.custom_extractors import * -from .import_tasks.generic_extractors import * - +from celery import Celery, Task, chain +from celery.exceptions import MaxRetriesExceededError +from celery.schedules import crontab +from celery.signals import worker_ready +from celery.utils.log import get_task_logger +from django.conf import settings from django.core.cache import cache +from datetime import date + +from .import_tasks.custom_extractors import ( + lacomedie, + lacoope, + lefotomat, + lapucealoreille, + billetterie_cf, + arachnee, + lerio, + laraymonde, + mille_formes, + amisdutempsdescerises, +) +from .import_tasks.downloader import ( + ChromiumHeadlessDownloader, + SimpleDownloader, +) +from .import_tasks.extractor import Extractor +from .import_tasks.generic_extractors import ( + wordpress_mec, + apidae_tourisme, + iguana_agenda, + mobilizon, + ical, + fbevents, +) +from .import_tasks.importer import URL2Events # Set the default Django settings module for the 'celery' program. APP_ENV = os.getenv("APP_ENV", "dev") @@ -78,7 +98,13 @@ def close_import_task(taskid, success, error_message, importer): task.nb_updated = 0 if importer is None else importer.get_nb_updated_events() task.nb_removed = 0 if importer is None else importer.get_nb_removed_events() - fields = ["status", "nb_initial", "nb_updated", "nb_imported", "nb_removed"] + fields = [ + "status", + "nb_initial", + "nb_updated", + "nb_imported", + "nb_removed", + ] if not success: logger.error(error_message) task.error_message = str(error_message)[:512] @@ -89,6 +115,7 @@ def close_import_task(taskid, success, error_message, importer): @app.task(bind=True) def import_events_from_json(self, json): from agenda_culturel.models import BatchImportation + from .db_importer import DBImporterEvents # create a batch importation @@ -124,7 +151,8 @@ class ChromiumTask(Task): def run_recurrent_import_internal(rimport, downloader, req_id): - from agenda_culturel.models import RecurrentImport, BatchImportation + from agenda_culturel.models import BatchImportation, RecurrentImport + from .db_importer import DBImporterEvents logger.info("Run recurrent import: {}".format(req_id)) @@ -282,7 +310,6 @@ def run_recurrent_import(self, pklist): def run_recurrent_imports_from_list(pklist): - tasks = chain( run_recurrent_import.s(pklist) if i == 0 else run_recurrent_import.s() for i in range(len(pklist)) @@ -350,7 +377,7 @@ def run_all_recurrent_imports(self, only_fb=False): @app.task(bind=True) def run_all_recurrent_imports_failed(self): - from agenda_culturel.models import RecurrentImport, BatchImportation + from agenda_culturel.models import BatchImportation, RecurrentImport logger.info("Run only failed imports") imports = RecurrentImport.objects.all().order_by("pk") @@ -367,7 +394,7 @@ def run_all_recurrent_imports_failed(self): @app.task(bind=True) def run_all_recurrent_imports_canceled(self): - from agenda_culturel.models import RecurrentImport, BatchImportation + from agenda_culturel.models import BatchImportation, RecurrentImport logger.info("Run only canceled imports") imports = RecurrentImport.objects.all().order_by("pk") @@ -406,9 +433,9 @@ def import_events_from_url( email=None, comments=None, ): + from agenda_culturel.models import BatchImportation, Event + from .db_importer import DBImporterEvents - from agenda_culturel.models import BatchImportation - from agenda_culturel.models import Event if isinstance(urls, list): url = urls[0] @@ -419,7 +446,6 @@ def import_events_from_url( with memcache_chromium_lock(self.app.oid) as acquired: if acquired: - logger.info( "URL import: {}".format(self.request.id) + " force " + str(force) ) @@ -431,7 +457,6 @@ def import_events_from_url( existing = None if force else Event.objects.filter(uuids__contains=[url]) # if it's unknown if force or len(existing) == 0: - # create an importer importer = DBImporterEvents(self.request.id) @@ -474,7 +499,10 @@ def import_events_from_url( ) else: close_import_task( - self.request.id, False, "Cannot find any event", importer + self.request.id, + False, + "Cannot find any event", + importer, ) except Exception as e: logger.error(e) @@ -503,9 +531,9 @@ def import_events_from_urls( @app.task(base=ChromiumTask, bind=True) def update_orphan_pure_import_events(self): - from agenda_culturel.models import RecurrentImport - from agenda_culturel.models import Event - from django.db.models import Q, F + from django.db.models import F, Q + + from agenda_culturel.models import Event, RecurrentImport # get all recurrent sources srcs = RecurrentImport.objects.all().values_list("source") diff --git a/src/agenda_culturel/db_importer.py b/src/agenda_culturel/db_importer.py index 405a25d..e6b6193 100644 --- a/src/agenda_culturel/db_importer.py +++ b/src/agenda_culturel/db_importer.py @@ -1,8 +1,9 @@ -from agenda_culturel.models import Event import json +import logging + from django.utils import timezone -import logging +from agenda_culturel.models import Event logger = logging.getLogger(__name__) @@ -55,7 +56,10 @@ class DBImporterEvents: if "url" in structure["header"]: self.url = structure["header"]["url"] else: - return (False, "JSON is not correctly structured: missing url in header") + return ( + False, + "JSON is not correctly structured: missing url in header", + ) if "date" in structure["header"]: self.date = structure["header"]["date"] diff --git a/src/agenda_culturel/filters.py b/src/agenda_culturel/filters.py index b8a940b..255457b 100644 --- a/src/agenda_culturel/filters.py +++ b/src/agenda_culturel/filters.py @@ -1,23 +1,22 @@ -import django_filters -from django.utils.translation import gettext_lazy as _ -from django import forms -from django.contrib.postgres.search import SearchQuery, SearchHeadline -from django.db.models import Q, F from datetime import date, timedelta -from urllib.parse import urlparse, parse_qs, urlencode +from urllib.parse import parse_qs, urlencode, urlparse -from django.http import QueryDict +import django_filters +from django import forms from django.contrib.gis.measure import D - +from django.contrib.postgres.search import SearchHeadline, SearchQuery +from django.db.models import F, Q +from django.http import QueryDict +from django.utils.translation import gettext_lazy as _ from .models import ( - ReferenceLocation, - RecurrentImport, - Tag, - Event, Category, - Message, DuplicatedEvents, + Event, + Message, + RecurrentImport, + ReferenceLocation, + Tag, ) @@ -188,7 +187,6 @@ class EventFilter(django_filters.FilterSet): return self.request.get_full_path().split("?")[0] def get_cleaned_data(self, name): - try: return self.form.cleaned_data[name] except AttributeError: @@ -510,7 +508,12 @@ class SimpleSearchEventFilter(django_filters.FilterSet): | Q(exact_location__name__icontains=value) | Q(description__icontains=value) ) - for f in ["title", "category__name", "exact_location__name", "description"]: + for f in [ + "title", + "category__name", + "exact_location__name", + "description", + ]: params = { f + "_hl": SearchHeadline( @@ -579,7 +582,14 @@ class SearchEventFilter(django_filters.FilterSet): class Meta: model = Event - fields = ["title", "location", "description", "category", "tags", "start_day"] + fields = [ + "title", + "location", + "description", + "category", + "tags", + "start_day", + ] def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) @@ -621,7 +631,6 @@ class DuplicatedEventsFilter(django_filters.FilterSet): class RecurrentImportFilter(django_filters.FilterSet): - name = django_filters.ModelMultipleChoiceFilter( label="Filtrer par nom", field_name="name", diff --git a/src/agenda_culturel/forms.py b/src/agenda_culturel/forms.py index c7acd99..bc8eecb 100644 --- a/src/agenda_culturel/forms.py +++ b/src/agenda_culturel/forms.py @@ -1,57 +1,58 @@ +import logging +import os +from string import ascii_uppercase as auc + +from django.conf import settings +from django.core.files import File from django.forms import ( - ModelForm, - ValidationError, - TextInput, - Form, - URLField, - MultipleHiddenInput, - Textarea, + BooleanField, CharField, ChoiceField, - RadioSelect, - MultipleChoiceField, - BooleanField, + EmailField, + Form, HiddenInput, ModelChoiceField, - EmailField, + ModelForm, + MultipleChoiceField, + MultipleHiddenInput, + RadioSelect, + Textarea, + TextInput, + URLField, + ValidationError, + formset_factory, ) -from django.forms import formset_factory - +from django.utils.formats import localize +from django.utils.safestring import mark_safe +from django.utils.translation import gettext_lazy as _ from django_better_admin_arrayfield.forms.widgets import DynamicArrayWidget from .models import ( - Event, - RecurrentImport, CategorisationRule, - Place, Category, - Tag, + Event, Message, + Place, + RecurrentImport, + Tag, ) -from django.conf import settings -from django.core.files import File - -from django.utils.translation import gettext_lazy as _ -from string import ascii_uppercase as auc -from .templatetags.utils_extra import int_to_abc -from django.utils.safestring import mark_safe -from django.utils.formats import localize from .templatetags.event_extra import event_field_verbose_name, field_to_html -import os - -import logging +from .templatetags.utils_extra import int_to_abc logger = logging.getLogger(__name__) class GroupFormMixin: - template_name = "agenda_culturel/forms/div_group.html" class FieldGroup: - def __init__( - self, id, label, display_label=False, maskable=False, default_masked=True + self, + id, + label, + display_label=False, + maskable=False, + default_masked=True, ): self.id = id self.label = label @@ -93,7 +94,10 @@ class GroupFormMixin: def fields_by_group(self): return [(g, self.get_fields_in_group(g)) for g in self.groups] + [ - (GroupFormMixin.FieldGroup("other", _("Other")), self.get_no_group_fields()) + ( + GroupFormMixin.FieldGroup("other", _("Other")), + self.get_no_group_fields(), + ) ] def clean(self): @@ -434,7 +438,9 @@ class EventModerateForm(ModelForm): required_css_class = "required" tags = MultipleChoiceField( - label=_("Tags"), help_text=_("Select tags from existing ones."), required=False + label=_("Tags"), + help_text=_("Select tags from existing ones."), + required=False, ) new_tags = MultipleChoiceFieldAcceptAll( @@ -534,12 +540,18 @@ class FixDuplicates(Form): if initial is None: initial = "Merge" choices += [ - ("Merge", _("Create a new version by merging (interactive mode).") + extra) + ( + "Merge", + _("Create a new version by merging (interactive mode).") + extra, + ) ] for i, e in enumerate(events): if e.status != Event.STATUS.TRASH: choices += [ - ("Remove-" + str(e.pk), _("Make {} independent.").format(auc[i])) + ( + "Remove-" + str(e.pk), + _("Make {} independent.").format(auc[i]), + ) ] choices += [("NotDuplicates", _("Make all versions independent."))] @@ -611,9 +623,15 @@ class MergeDuplicates(Form): if self.event: choices = [ ( - ("event_" + str(e.pk), _("Value of version {}").format(e.pk)) + ( + "event_" + str(e.pk), + _("Value of version {}").format(e.pk), + ) if e != self.event - else ("event_" + str(e.pk), _("Value of the selected version")) + else ( + "event_" + str(e.pk), + _("Value of the selected version"), + ) ) for e in self.events ] @@ -895,7 +913,6 @@ class PlaceForm(GroupFormMixin, ModelForm): class MessageForm(ModelForm): - class Meta: model = Message fields = ["subject", "name", "email", "message", "related_event"] @@ -912,7 +929,6 @@ class MessageForm(ModelForm): class MessageEventForm(ModelForm): - class Meta: model = Message fields = ["message"] diff --git a/src/agenda_culturel/import_tasks/custom_extractors/__init__.py b/src/agenda_culturel/import_tasks/custom_extractors/__init__.py index ecf5ec1..9a1b2ae 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/__init__.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/__init__.py @@ -1,5 +1,5 @@ -from os.path import dirname, basename, isfile, join import glob +from os.path import basename, dirname, isfile, join modules = glob.glob(join(dirname(__file__), "*.py")) __all__ = [ diff --git a/src/agenda_culturel/import_tasks/custom_extractors/amisdutempsdescerises.py b/src/agenda_culturel/import_tasks/custom_extractors/amisdutempsdescerises.py index 8b6014c..4b8280d 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/amisdutempsdescerises.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/amisdutempsdescerises.py @@ -1,23 +1,29 @@ -from ..extractor import Extractor -import json -from bs4 import BeautifulSoup -from urllib.parse import urlparse -import pytz import html +import json from datetime import datetime +from urllib.parse import urlparse + +import pytz +from bs4 import BeautifulSoup + +from ..extractor import Extractor # A class dedicated to get events from les amis du temps des cerises # Website https://amisdutempsdescerises.org/ class CExtractor(Extractor): - def __init__(self): super().__init__() self.data = b'------toto\r\nContent-Disposition: form-data; name="p"\r\n\r\nfutur\r\n------toto--\r\n' self.content_type = "multipart/form-data; boundary=----toto" def extract( - self, content, url, url_human=None, default_values=None, published=False + self, + content, + url, + url_human=None, + default_values=None, + published=False, ): self.set_header(url) self.clear_events() diff --git a/src/agenda_culturel/import_tasks/custom_extractors/arachnee.py b/src/agenda_culturel/import_tasks/custom_extractors/arachnee.py index 695b14b..deb87cb 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/arachnee.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/arachnee.py @@ -1,14 +1,15 @@ -from ..twosteps_extractor import TwoStepsExtractorNoPause -from ..extractor import Extractor -from bs4 import BeautifulSoup import re -from datetime import datetime, timedelta, date +from datetime import date, datetime, timedelta + +from bs4 import BeautifulSoup + +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractorNoPause # A class dedicated to get events from Arachnée Concert # URL: https://www.arachnee-concerts.com/agenda-des-concerts/ class CExtractor(TwoStepsExtractorNoPause): - def __init__(self): super().__init__() self.possible_dates = {} @@ -29,11 +30,16 @@ class CExtractor(TwoStepsExtractorNoPause): self.theater = match[1] return super().extract( - content, url, url_human, default_values, published, only_future, ignore_404 + content, + url, + url_human, + default_values, + published, + only_future, + ignore_404, ) def build_event_url_list(self, content, infuture_days=180): - soup = BeautifulSoup(content, "html.parser") containers = soup.select("ul.event_container>li") @@ -59,7 +65,6 @@ class CExtractor(TwoStepsExtractorNoPause): default_values=None, published=False, ): - soup = BeautifulSoup(event_content, "html.parser") title = ", ".join( [ diff --git a/src/agenda_culturel/import_tasks/custom_extractors/billetterie_cf.py b/src/agenda_culturel/import_tasks/custom_extractors/billetterie_cf.py index 452a1c3..0eb1b35 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/billetterie_cf.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/billetterie_cf.py @@ -1,15 +1,16 @@ -from ..twosteps_extractor import TwoStepsExtractor -from ..extractor import Extractor -from bs4 import BeautifulSoup import re from datetime import datetime, timedelta from urllib.parse import urlparse +from bs4 import BeautifulSoup + +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractor + # A class dedicated to get events from La Cour des 3 Coquins and Graines de spectacle # URL: https://billetterie-c3c.clermont-ferrand.fr// class CExtractor(TwoStepsExtractor): - def extract( self, content, @@ -22,7 +23,13 @@ class CExtractor(TwoStepsExtractor): ): self.root_address = "https://" + urlparse(url).netloc + "/" return super().extract( - content, url, url_human, default_values, published, only_future, ignore_404 + content, + url, + url_human, + default_values, + published, + only_future, + ignore_404, ) def category_agenda(self, category): @@ -177,7 +184,6 @@ class CExtractor(TwoStepsExtractor): category = categories[0] for dt in datetimes: - self.add_event_with_props( default_values, event_url, diff --git a/src/agenda_culturel/import_tasks/custom_extractors/lacomedie.py b/src/agenda_culturel/import_tasks/custom_extractors/lacomedie.py index 12719a5..dcc6190 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/lacomedie.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/lacomedie.py @@ -1,7 +1,9 @@ -from ..twosteps_extractor import TwoStepsExtractor +from datetime import date + import json5 from bs4 import BeautifulSoup -from datetime import datetime, date + +from ..twosteps_extractor import TwoStepsExtractor # A class dedicated to get events from La Coopérative de Mai: @@ -120,7 +122,12 @@ class CExtractor(TwoStepsExtractor): # on ajoute éventuellement les informations complémentaires d_suite = "" - for d in ["#typespec", "#dureespec", "#lieuspec", ".lkuncontdroitespec"]: + for d in [ + "#typespec", + "#dureespec", + "#lieuspec", + ".lkuncontdroitespec", + ]: comp_desc = soup.select(d) if comp_desc and len(comp_desc) > 0: for desc in comp_desc: diff --git a/src/agenda_culturel/import_tasks/custom_extractors/lacoope.py b/src/agenda_culturel/import_tasks/custom_extractors/lacoope.py index dd13557..8fcc795 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/lacoope.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/lacoope.py @@ -1,9 +1,11 @@ -from ..twosteps_extractor import TwoStepsExtractor -from ..generic_extractors.ggcal_link import GGCalendar import re + import json5 from bs4 import BeautifulSoup +from ..generic_extractors.ggcal_link import GGCalendar +from ..twosteps_extractor import TwoStepsExtractor + # A class dedicated to get events from La Coopérative de Mai: # URL: https://www.lacoope.org/concerts-calendrier/ diff --git a/src/agenda_culturel/import_tasks/custom_extractors/lapucealoreille.py b/src/agenda_culturel/import_tasks/custom_extractors/lapucealoreille.py index 6655548..c639cda 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/lapucealoreille.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/lapucealoreille.py @@ -1,7 +1,8 @@ -from ..twosteps_extractor import TwoStepsExtractor -from ..extractor import Extractor from bs4 import BeautifulSoup +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractor + # A class dedicated to get events from La puce à l'oreille # URL: https://www.lapucealoreille63.fr/ diff --git a/src/agenda_culturel/import_tasks/custom_extractors/laraymonde.py b/src/agenda_culturel/import_tasks/custom_extractors/laraymonde.py index 710eb16..df43b15 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/laraymonde.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/laraymonde.py @@ -1,16 +1,15 @@ -from ..twosteps_extractor import TwoStepsExtractorNoPause from bs4 import BeautifulSoup +from ..twosteps_extractor import TwoStepsExtractorNoPause + # A class dedicated to get events from Raymond Bar # URL: https://www.raymondbar.net/ class CExtractor(TwoStepsExtractorNoPause): - def __init__(self): super().__init__() def build_event_url_list(self, content, infuture_days=180): - soup = BeautifulSoup(content, "html.parser") links = soup.select(".showsList .showMore") diff --git a/src/agenda_culturel/import_tasks/custom_extractors/lefotomat.py b/src/agenda_culturel/import_tasks/custom_extractors/lefotomat.py index 4d910b4..2b4ca73 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/lefotomat.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/lefotomat.py @@ -1,7 +1,8 @@ -from ..twosteps_extractor import TwoStepsExtractor -from ..extractor import Extractor from bs4 import BeautifulSoup +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractor + # A class dedicated to get events from Le Fotomat' # URL: https://www.lefotomat.com/ diff --git a/src/agenda_culturel/import_tasks/custom_extractors/lerio.py b/src/agenda_culturel/import_tasks/custom_extractors/lerio.py index 3fb9c2f..d399314 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/lerio.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/lerio.py @@ -1,20 +1,20 @@ -from ..twosteps_extractor import TwoStepsExtractorNoPause -from ..extractor import Extractor -from bs4 import BeautifulSoup from datetime import datetime +from bs4 import BeautifulSoup + +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractorNoPause + # A class dedicated to get events from Cinéma Le Rio (Clermont-Ferrand) # URL: https://www.cinemalerio.com/evenements/ class CExtractor(TwoStepsExtractorNoPause): - def __init__(self): super().__init__() self.possible_dates = {} self.theater = None def build_event_url_list(self, content, infuture_days=180): - soup = BeautifulSoup(content, "html.parser") links = soup.select("td.seance_link a") @@ -37,7 +37,6 @@ class CExtractor(TwoStepsExtractorNoPause): default_values=None, published=False, ): - soup = BeautifulSoup(event_content, "html.parser") title = soup.select_one("h1").text diff --git a/src/agenda_culturel/import_tasks/custom_extractors/mille_formes.py b/src/agenda_culturel/import_tasks/custom_extractors/mille_formes.py index e7fce3d..1bef3c2 100644 --- a/src/agenda_culturel/import_tasks/custom_extractors/mille_formes.py +++ b/src/agenda_culturel/import_tasks/custom_extractors/mille_formes.py @@ -1,14 +1,15 @@ -from ..twosteps_extractor import TwoStepsExtractorNoPause -from ..extractor import Extractor -from bs4 import BeautifulSoup from datetime import date from urllib.parse import urlparse +from bs4 import BeautifulSoup + +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractorNoPause + # A class dedicated to get events from Mille formes # URL: https://www.milleformes.fr/programme class CExtractor(TwoStepsExtractorNoPause): - def extract( self, content, @@ -22,7 +23,13 @@ class CExtractor(TwoStepsExtractorNoPause): self.root_address = "https://" + urlparse(url).netloc + "/" self.today = date.today() return super().extract( - content, url, url_human, default_values, published, only_future, ignore_404 + content, + url, + url_human, + default_values, + published, + only_future, + ignore_404, ) def parse_category(self, cat): @@ -74,7 +81,6 @@ class CExtractor(TwoStepsExtractorNoPause): return result def build_event_url_list(self, content, infuture_days=180): - soup = BeautifulSoup(content, "html.parser") links = soup.select(".cell a.evenement") for lk in links: diff --git a/src/agenda_culturel/import_tasks/downloader.py b/src/agenda_culturel/import_tasks/downloader.py index 6d8c17f..671970d 100644 --- a/src/agenda_culturel/import_tasks/downloader.py +++ b/src/agenda_culturel/import_tasks/downloader.py @@ -1,19 +1,20 @@ -from urllib.parse import urlencode -import urllib.request -from urllib.request import Request import os +import time +import urllib.request +from abc import ABC, abstractmethod +from urllib.parse import urlencode +from urllib.request import Request + from selenium import webdriver -from selenium.webdriver.chrome.service import Service -from selenium.webdriver.chrome.options import Options from selenium.common.exceptions import ( - StaleElementReferenceException, NoSuchElementException, + SessionNotCreatedException, + StaleElementReferenceException, TimeoutException, WebDriverException, - SessionNotCreatedException, ) -from abc import ABC, abstractmethod -import time +from selenium.webdriver.chrome.options import Options +from selenium.webdriver.chrome.service import Service class Downloader(ABC): @@ -25,7 +26,13 @@ class Downloader(ABC): pass def get_content( - self, url, cache=None, referer=None, post=None, content_type=None, data=None + self, + url, + cache=None, + referer=None, + post=None, + content_type=None, + data=None, ): if cache and os.path.exists(cache): print("Loading cache ({})".format(cache)) @@ -33,7 +40,11 @@ class Downloader(ABC): content = "\n".join(f.readlines()) else: content = self.download( - url, referer=referer, post=post, content_type=content_type, data=data + url, + referer=referer, + post=post, + content_type=content_type, + data=data, ) if cache: diff --git a/src/agenda_culturel/import_tasks/extractor.py b/src/agenda_culturel/import_tasks/extractor.py index 173fce5..11add78 100644 --- a/src/agenda_culturel/import_tasks/extractor.py +++ b/src/agenda_culturel/import_tasks/extractor.py @@ -1,8 +1,9 @@ -from abc import ABC, abstractmethod -from enum import IntEnum -from datetime import datetime, time, date, timedelta import re import unicodedata +from abc import ABC, abstractmethod +from datetime import date, datetime, time, timedelta +from enum import IntEnum + from django.utils import timezone from django.utils.translation import gettext_lazy as _ @@ -71,7 +72,8 @@ class Extractor(ABC): def parse_french_date(text, default_year=None, default_year_by_proximity=None): # format NomJour Numero Mois Année m = re.search( - "[a-zA-ZéÉûÛ:.]+[ ]*([0-9]+)[er]*[ ]*([a-zA-ZéÉûÛ:.]+)[ ]*([0-9]+)", text + "[a-zA-ZéÉûÛ:.]+[ ]*([0-9]+)[er]*[ ]*([a-zA-ZéÉûÛ:.]+)[ ]*([0-9]+)", + text, ) if m: day = m.group(1) @@ -172,7 +174,12 @@ class Extractor(ABC): @abstractmethod def extract( - self, content, url, url_human=None, default_values=None, published=False + self, + content, + url, + url_human=None, + default_values=None, + published=False, ): pass @@ -290,8 +297,10 @@ class Extractor(ABC): return {"header": self.header, "events": self.events} def clean_url(url): + from .generic_extractors.fbevent import ( + CExtractor as FacebookEventExtractor, + ) from .generic_extractors.ical import ICALExtractor - from .generic_extractors.fbevent import CExtractor as FacebookEventExtractor result = url for e in [ICALExtractor, FacebookEventExtractor]: @@ -299,11 +308,13 @@ class Extractor(ABC): return result def get_default_extractors(single_event=False): - from .generic_extractors.ical import ICALExtractor - from .generic_extractors.fbevent import CExtractor as FacebookEventExtractor + from .generic_extractors.fbevent import ( + CExtractor as FacebookEventExtractor, + ) from .generic_extractors.ggcal_link import ( CExtractor as GoogleCalendarLinkEventExtractor, ) + from .generic_extractors.ical import ICALExtractor if single_event: return [ @@ -322,9 +333,13 @@ class Extractor(ABC): # A class that only produce a not found event class EventNotFoundExtractor(Extractor): - def extract( - self, content, url, url_human=None, default_values=None, published=False + self, + content, + url, + url_human=None, + default_values=None, + published=False, ): self.set_header(url) self.clear_events() diff --git a/src/agenda_culturel/import_tasks/generic_extractors/__init__.py b/src/agenda_culturel/import_tasks/generic_extractors/__init__.py index ecf5ec1..9a1b2ae 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/__init__.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/__init__.py @@ -1,5 +1,5 @@ -from os.path import dirname, basename, isfile, join import glob +from os.path import basename, dirname, isfile, join modules = glob.glob(join(dirname(__file__), "*.py")) __all__ = [ diff --git a/src/agenda_culturel/import_tasks/generic_extractors/apidae_tourisme.py b/src/agenda_culturel/import_tasks/generic_extractors/apidae_tourisme.py index a761eac..a745d69 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/apidae_tourisme.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/apidae_tourisme.py @@ -1,13 +1,12 @@ -from ..twosteps_extractor import TwoStepsExtractorNoPause -from ..extractor import Extractor from bs4 import BeautifulSoup +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractorNoPause + # A class dedicated to get events from apidae-tourisme widgets class CExtractor(TwoStepsExtractorNoPause): - def build_event_url_list(self, content, infuture_days=180): - # Get line starting with wrapper.querySelector(".results_agenda").innerHTML = " # split using "=" and keep the end # strip it, and remove the first character (") and the two last ones (";) diff --git a/src/agenda_culturel/import_tasks/generic_extractors/fbevent.py b/src/agenda_culturel/import_tasks/generic_extractors/fbevent.py index 4016094..851f0c2 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/fbevent.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/fbevent.py @@ -1,14 +1,14 @@ -from datetime import datetime -from bs4 import BeautifulSoup -from urllib.parse import urlparse -import time as t -from django.utils.translation import gettext_lazy as _ +import json +import logging import re +import time as t +from datetime import datetime +from urllib.parse import urlparse + +from bs4 import BeautifulSoup +from django.utils.translation import gettext_lazy as _ from ..extractor import Extractor -import json - -import logging logger = logging.getLogger(__name__) @@ -210,7 +210,6 @@ class FacebookEvent: return self.get_element("parent_if_exists_or_self")["id"] def build_events(self, url): - if self.neighbor_events is None or len(self.neighbor_events) == 0: return [self.build_event(url)] else: @@ -228,7 +227,6 @@ class FacebookEvent: class CExtractor(Extractor): - def __init__(self): super().__init__() self.has_2nd_method = True @@ -236,8 +234,8 @@ class CExtractor(Extractor): def prepare_2nd_extract_dler(downloader): if downloader.support_2nd_extract: from selenium.webdriver.common.by import By - from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC + from selenium.webdriver.support.ui import WebDriverWait path = './/div[not(@aria-hidden)]/div[@aria-label="Allow all cookies"]' try: @@ -307,7 +305,12 @@ class CExtractor(Extractor): return u.netloc in url_list def extract( - self, content, url, url_human=None, default_values=None, published=False + self, + content, + url, + url_human=None, + default_values=None, + published=False, ): # NOTE: this method does not use url_human = None and default_values = None diff --git a/src/agenda_culturel/import_tasks/generic_extractors/fbevents.py b/src/agenda_culturel/import_tasks/generic_extractors/fbevents.py index ebeb46b..4b8182d 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/fbevents.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/fbevents.py @@ -1,13 +1,14 @@ -from ..twosteps_extractor import TwoStepsExtractor -from .fbevent import FacebookEvent, CExtractor as FacebookEventExtractor -from bs4 import BeautifulSoup import json +import logging import os from datetime import datetime + +from bs4 import BeautifulSoup from django.utils.translation import gettext_lazy as _ - -import logging +from ..twosteps_extractor import TwoStepsExtractor +from .fbevent import CExtractor as FacebookEventExtractor +from .fbevent import FacebookEvent logger = logging.getLogger(__name__) @@ -15,7 +16,6 @@ logger = logging.getLogger(__name__) # A class dedicated to get events from a facebook events page # such as https://www.facebook.com/laJeteeClermont/events class CExtractor(TwoStepsExtractor): - def __init__(self): super().__init__() self.has_2nd_method_in_list = True @@ -41,7 +41,6 @@ class CExtractor(TwoStepsExtractor): self.find_event_id_fragment_in_array(e) def find_in_js(self, soup): - for json_script in soup.find_all("script", type="application/json"): json_txt = json_script.get_text() json_struct = json.loads(json_txt) diff --git a/src/agenda_culturel/import_tasks/generic_extractors/ggcal_link.py b/src/agenda_culturel/import_tasks/generic_extractors/ggcal_link.py index aba9edb..6dbcee8 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/ggcal_link.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/ggcal_link.py @@ -1,11 +1,11 @@ -from datetime import datetime -from bs4 import BeautifulSoup -from urllib.parse import urlparse, parse_qs -import dateutil.parser -from ..extractor import Extractor -import bbcode - import logging +from datetime import datetime +from urllib.parse import parse_qs, urlparse + +import dateutil.parser +from bs4 import BeautifulSoup + +from ..extractor import Extractor logger = logging.getLogger(__name__) @@ -115,15 +115,18 @@ class CExtractor(Extractor): return image def extract( - self, content, url, url_human=None, default_values=None, published=False + self, + content, + url, + url_human=None, + default_values=None, + published=False, ): soup = BeautifulSoup(content, "html.parser") for ggu in self.possible_urls: - link_calendar = soup.select('a[href^="' + ggu + '"]') if len(link_calendar) != 0: - gg_cal = GGCalendar(link_calendar[0]["href"]) if gg_cal.is_valid_event(): diff --git a/src/agenda_culturel/import_tasks/generic_extractors/ical.py b/src/agenda_culturel/import_tasks/generic_extractors/ical.py index f02d0ec..4b03ba6 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/ical.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/ical.py @@ -1,17 +1,14 @@ -import icalendar import warnings +from datetime import date, datetime, timedelta import bbcode - -from datetime import datetime, date, timedelta -from bs4 import BeautifulSoup, MarkupResemblesLocatorWarning +import icalendar import pytz - +from bs4 import BeautifulSoup, MarkupResemblesLocatorWarning +from celery.utils.log import get_task_logger from ..extractor import Extractor -from celery.utils.log import get_task_logger - logger = get_task_logger(__name__) @@ -68,7 +65,12 @@ class ICALExtractor(Extractor): return url def extract( - self, content, url, url_human=None, default_values=None, published=False + self, + content, + url, + url_human=None, + default_values=None, + published=False, ): warnings.filterwarnings("ignore", category=MarkupResemblesLocatorWarning) diff --git a/src/agenda_culturel/import_tasks/generic_extractors/iguana_agenda.py b/src/agenda_culturel/import_tasks/generic_extractors/iguana_agenda.py index 87008ef..3931546 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/iguana_agenda.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/iguana_agenda.py @@ -1,13 +1,14 @@ -from ..twosteps_extractor import TwoStepsExtractorNoPause -from ..extractor import Extractor -from bs4 import BeautifulSoup from urllib.parse import urlparse +from bs4 import BeautifulSoup + +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractorNoPause + # A class dedicated to get events from Raymond Bar # URL: https://www.raymondbar.net/ class CExtractor(TwoStepsExtractorNoPause): - def __init__(self): super().__init__() @@ -35,7 +36,6 @@ class CExtractor(TwoStepsExtractorNoPause): return tags def build_event_url_list(self, content, infuture_days=180): - soup = BeautifulSoup(content, "html.parser") root_address_human = self.url_human.split("?")[0] @@ -72,7 +72,6 @@ class CExtractor(TwoStepsExtractorNoPause): default_values=None, published=False, ): - root_address_human = "https://" + urlparse(self.url_human).netloc + "/" soup = BeautifulSoup(event_content, "xml") diff --git a/src/agenda_culturel/import_tasks/generic_extractors/mobilizon.py b/src/agenda_culturel/import_tasks/generic_extractors/mobilizon.py index 087b1c2..8c8f8d0 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/mobilizon.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/mobilizon.py @@ -1,11 +1,12 @@ -from ..extractor import Extractor -import dateutil.parser +import logging from datetime import datetime, timezone -import requests from urllib.parse import urlparse + +import dateutil.parser +import requests from bs4 import BeautifulSoup -import logging +from ..extractor import Extractor logger = logging.getLogger(__name__) @@ -13,14 +14,12 @@ logger = logging.getLogger(__name__) # A class dedicated to get events from les amis du temps des cerises # Website https://amisdutempsdescerises.org/ class CExtractor(Extractor): - def __init__(self): super().__init__() self.no_downloader = True # Source code adapted from https://framagit.org/Marc-AntoineA/mobilizon-client-python def _request(self, body, data): - headers = {} response = requests.post( @@ -33,17 +32,16 @@ class CExtractor(Extractor): response_json = response.json() if "errors" in response_json: raise Exception( - f'Errors while requesting { body }. { str(response_json["errors"]) }' + f"Errors while requesting {body}. {str(response_json['errors'])}" ) return response_json["data"] else: raise Exception( - f"Error while requesting. Status code: { response.status_code }" + f"Error while requesting. Status code: {response.status_code}" ) def _oncoming_events_number(self): - query = """ query($preferredUsername: String!, $afterDatetime: DateTime) { group(preferredUsername: $preferredUsername) { @@ -123,13 +121,17 @@ query($preferredUsername: String!, $afterDatetime: DateTime, $page: Int) { return events def extract( - self, content, url, url_human=None, default_values=None, published=False + self, + content, + url, + url_human=None, + default_values=None, + published=False, ): self.set_header(url) self.clear_events() if "@" in url: - # TODO: quand on a # https://mobilizon.fr/@xr_clermont_ferrand@mobilizon.extinctionrebellion.fr/events # on doit retourner : diff --git a/src/agenda_culturel/import_tasks/generic_extractors/wordpress_mec.py b/src/agenda_culturel/import_tasks/generic_extractors/wordpress_mec.py index 6db93e5..d927580 100644 --- a/src/agenda_culturel/import_tasks/generic_extractors/wordpress_mec.py +++ b/src/agenda_culturel/import_tasks/generic_extractors/wordpress_mec.py @@ -1,12 +1,12 @@ -from ..twosteps_extractor import TwoStepsExtractor -from ..extractor import Extractor from bs4 import BeautifulSoup +from ..extractor import Extractor +from ..twosteps_extractor import TwoStepsExtractor + # A class dedicated to get events from MEC Wordpress plugin # URL: https://webnus.net/modern-events-calendar/ class CExtractor(TwoStepsExtractor): - def local2agendaCategory(self, category): mapping = { "Musique": "Fêtes & Concerts", diff --git a/src/agenda_culturel/import_tasks/importer.py b/src/agenda_culturel/import_tasks/importer.py index d2a3e40..1793fd3 100644 --- a/src/agenda_culturel/import_tasks/importer.py +++ b/src/agenda_culturel/import_tasks/importer.py @@ -1,9 +1,9 @@ +import logging + from .downloader import SimpleDownloader from .extractor import Extractor from .generic_extractors.fbevent import CExtractor as FacebookEventExtractor -import logging - logger = logging.getLogger(__name__) @@ -37,7 +37,11 @@ class URL2Events: if content is None: content = self.downloader.get_content( - url, cache, referer=referer, content_type=content_type, data=data + url, + cache, + referer=referer, + content_type=content_type, + data=data, ) if content is None: @@ -70,6 +74,11 @@ class URL2Events: logger.info("Using cookie trick on a facebook event") e.prepare_2nd_extract() return self.process( - url, url_human, cache, default_values, published, False + url, + url_human, + cache, + default_values, + published, + False, ) return None diff --git a/src/agenda_culturel/import_tasks/twosteps_extractor.py b/src/agenda_culturel/import_tasks/twosteps_extractor.py index e6c05d0..f4b65ea 100644 --- a/src/agenda_culturel/import_tasks/twosteps_extractor.py +++ b/src/agenda_culturel/import_tasks/twosteps_extractor.py @@ -1,8 +1,8 @@ +import datetime +import logging from abc import abstractmethod -import logging from .extractor import Extractor -import datetime logger = logging.getLogger(__name__) @@ -12,7 +12,6 @@ logger = logging.getLogger(__name__) # - then for each document downloaded from these urls, build the events # This class is an abstract class class TwoStepsExtractor(Extractor): - def __init__(self): super().__init__() self.has_2nd_method_in_list = False @@ -145,7 +144,6 @@ class TwoStepsExtractor(Extractor): ignore_404=True, first=True, ): - first = True self.only_future = only_future self.now = datetime.datetime.now().date() @@ -180,7 +178,11 @@ class TwoStepsExtractor(Extractor): # then extract event information from this html document try: self.add_event_from_content( - content_event, event_url, url_human, default_values, published + content_event, + event_url, + url_human, + default_values, + published, ) except Exception as e: # some website (FB) sometime need a second step @@ -216,7 +218,6 @@ class TwoStepsExtractor(Extractor): class TwoStepsExtractorNoPause(TwoStepsExtractor): - def extract( self, content, @@ -233,7 +234,13 @@ class TwoStepsExtractorNoPause(TwoStepsExtractor): pause = False self.downloader.pause = False result = super().extract( - content, url, url_human, default_values, published, only_future, ignore_404 + content, + url, + url_human, + default_values, + published, + only_future, + ignore_404, ) self.downloader.pause = pause diff --git a/src/agenda_culturel/migrations/0001_squashed_0150_alter_event_local_image.py b/src/agenda_culturel/migrations/0001_squashed_0150_alter_event_local_image.py index ba20cbf..b5661d2 100644 --- a/src/agenda_culturel/migrations/0001_squashed_0150_alter_event_local_image.py +++ b/src/agenda_culturel/migrations/0001_squashed_0150_alter_event_local_image.py @@ -3,10 +3,8 @@ import autoslug.fields import ckeditor.fields import colorfield.fields -from django.conf import settings import django.contrib.gis.geos.point import django.contrib.postgres.operations -from django.db import migrations, models import django.db.models.deletion import django.db.models.functions.text import django_better_admin_arrayfield.models.fields @@ -15,11 +13,14 @@ import django_resized.forms import location_field.models.plain import location_field.models.spatial import recurrence.fields +from django.conf import settings +from django.db import migrations, models + def set_representative_from_fixed_masked(apps, cats): # get all duplicated events DuplicatedEvents = apps.get_model("agenda_culturel", "DuplicatedEvents") - duplicated = DuplicatedEvents.objects.all().prefetch_related('event_set') + duplicated = DuplicatedEvents.objects.all().prefetch_related("event_set") to_update = [] for d in duplicated: @@ -36,6 +37,7 @@ def set_representative_from_fixed_masked(apps, cats): DuplicatedEvents.objects.bulk_update(to_update, fields=["representative"]) + def set_fixed_masked_from_representative(apps, cats): Event = apps.get_model("agenda_culturel", "Event") events = Event.objects.all().prefetch_related("possibly_duplicated") @@ -45,14 +47,17 @@ def set_fixed_masked_from_representative(apps, cats): if not e.possibly_duplicated: e.masked = False else: - e.masked = e.possibly_duplicated.representative and e.possibly_duplicated.representative == e + e.masked = ( + e.possibly_duplicated.representative + and e.possibly_duplicated.representative == e + ) to_update.append(e) Event.objects.bulk_update(to_update, fields=["masked"]) # get all duplicated events DuplicatedEvents = apps.get_model("agenda_culturel", "DuplicatedEvents") - duplicated = DuplicatedEvents.objects.all().prefetch_related('event_set') + duplicated = DuplicatedEvents.objects.all().prefetch_related("event_set") # for each event to_update = [] @@ -62,6 +67,7 @@ def set_fixed_masked_from_representative(apps, cats): DuplicatedEvents.objects.bulk_update(to_update, fields=["fixed"]) + def strip_place_aliases(apps, schema_editor): Place = apps.get_model("agenda_culturel", "Place") @@ -73,22 +79,24 @@ def strip_place_aliases(apps, schema_editor): Place.objects.bulk_update(places, fields=["aliases"]) + def do_nothing(apps, schema_editor): pass + def migrate_data_slug_forward(apps, schema_editor): Category = apps.get_model("agenda_culturel", "Category") for instance in Category.objects.all(): - print("Generating slug for %s"%instance) - instance.save() # Will trigger slug update + print("Generating slug for %s" % instance) + instance.save() # Will trigger slug update + def migrate_data_slug_backward(apps, schema_editor): pass class Migration(migrations.Migration): - initial = True dependencies = [ @@ -97,878 +105,2398 @@ class Migration(migrations.Migration): operations = [ migrations.CreateModel( - name='Category', + name="Category", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(help_text='Category name', max_length=512, verbose_name='Name')), - ('color', colorfield.fields.ColorField(blank=True, default=None, help_text='Color used as background for the category', image_field=None, max_length=25, null=True, samples=None, verbose_name='Color')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "name", + models.CharField( + help_text="Category name", + max_length=512, + verbose_name="Name", + ), + ), + ( + "color", + colorfield.fields.ColorField( + blank=True, + default=None, + help_text="Color used as background for the category", + image_field=None, + max_length=25, + null=True, + samples=None, + verbose_name="Color", + ), + ), ], options={ - 'verbose_name': 'Category', - 'verbose_name_plural': 'Categories', + "verbose_name": "Category", + "verbose_name_plural": "Categories", }, ), migrations.CreateModel( - name='StaticContent', + name="StaticContent", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(help_text='Category name', max_length=512, unique=True, verbose_name='Name')), - ('text', ckeditor.fields.RichTextField(help_text='Text as shown to the visitors', verbose_name='Content')), - ('url_path', models.CharField(help_text='URL path where the content is included.', verbose_name='URL path')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "name", + models.CharField( + help_text="Category name", + max_length=512, + unique=True, + verbose_name="Name", + ), + ), + ( + "text", + ckeditor.fields.RichTextField( + help_text="Text as shown to the visitors", + verbose_name="Content", + ), + ), + ( + "url_path", + models.CharField( + help_text="URL path where the content is included.", + verbose_name="URL path", + ), + ), ], ), migrations.CreateModel( - name='Message', + name="Message", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('subject', models.CharField(help_text='The subject of your message', max_length=512, verbose_name='Subject')), - ('name', models.CharField(blank=True, help_text='Your name', max_length=512, null=True, verbose_name='Name')), - ('date', models.DateTimeField(auto_now_add=True)), - ('closed', models.BooleanField(default=False, help_text='this message has been processed and no longer needs to be handled', verbose_name='Closed')), - ('message', ckeditor.fields.RichTextField(help_text='Your message', verbose_name='Message')), - ('email', models.EmailField(blank=True, help_text='Your email address', max_length=254, null=True, verbose_name='Email address')), - ('comments', ckeditor.fields.RichTextField(blank=True, default='', help_text='Comments on the message from the moderation team', null=True, verbose_name='Comments')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "subject", + models.CharField( + help_text="The subject of your message", + max_length=512, + verbose_name="Subject", + ), + ), + ( + "name", + models.CharField( + blank=True, + help_text="Your name", + max_length=512, + null=True, + verbose_name="Name", + ), + ), + ("date", models.DateTimeField(auto_now_add=True)), + ( + "closed", + models.BooleanField( + default=False, + help_text="this message has been processed and no longer needs to be handled", + verbose_name="Closed", + ), + ), + ( + "message", + ckeditor.fields.RichTextField( + help_text="Your message", verbose_name="Message" + ), + ), + ( + "email", + models.EmailField( + blank=True, + help_text="Your email address", + max_length=254, + null=True, + verbose_name="Email address", + ), + ), + ( + "comments", + ckeditor.fields.RichTextField( + blank=True, + default="", + help_text="Comments on the message from the moderation team", + null=True, + verbose_name="Comments", + ), + ), ], ), migrations.CreateModel( - name='BatchImportation', + name="BatchImportation", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('created_date', models.DateTimeField(auto_now_add=True)), - ('source', models.URLField(blank=True, help_text='URL of the source document', max_length=1024, null=True, verbose_name='Source')), - ('browsable_url', models.URLField(blank=True, help_text='URL of the corresponding document that will be shown to visitors.', max_length=1024, null=True, verbose_name='Browsable url')), - ('status', models.CharField(choices=[('running', 'Running'), ('canceled', 'Canceled'), ('success', 'Success'), ('failed', 'Failed')], default='running', max_length=20, verbose_name='Status')), - ('error_message', models.CharField(blank=True, max_length=512, null=True, verbose_name='Error message')), - ('nb_imported', models.PositiveIntegerField(default=0, verbose_name='Number of imported events')), - ('nb_initial', models.PositiveIntegerField(default=0, verbose_name='Number of collected events')), - ('celery_id', models.CharField(default='', max_length=128)), - ('nb_removed', models.PositiveIntegerField(default=0, verbose_name='Number of removed events')), - ('nb_updated', models.PositiveIntegerField(default=0, verbose_name='Number of updated events')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("created_date", models.DateTimeField(auto_now_add=True)), + ( + "source", + models.URLField( + blank=True, + help_text="URL of the source document", + max_length=1024, + null=True, + verbose_name="Source", + ), + ), + ( + "browsable_url", + models.URLField( + blank=True, + help_text="URL of the corresponding document that will be shown to visitors.", + max_length=1024, + null=True, + verbose_name="Browsable url", + ), + ), + ( + "status", + models.CharField( + choices=[ + ("running", "Running"), + ("canceled", "Canceled"), + ("success", "Success"), + ("failed", "Failed"), + ], + default="running", + max_length=20, + verbose_name="Status", + ), + ), + ( + "error_message", + models.CharField( + blank=True, + max_length=512, + null=True, + verbose_name="Error message", + ), + ), + ( + "nb_imported", + models.PositiveIntegerField( + default=0, verbose_name="Number of imported events" + ), + ), + ( + "nb_initial", + models.PositiveIntegerField( + default=0, verbose_name="Number of collected events" + ), + ), + ("celery_id", models.CharField(default="", max_length=128)), + ( + "nb_removed", + models.PositiveIntegerField( + default=0, verbose_name="Number of removed events" + ), + ), + ( + "nb_updated", + models.PositiveIntegerField( + default=0, verbose_name="Number of updated events" + ), + ), ], ), migrations.CreateModel( - name='DuplicatedEvents', + name="DuplicatedEvents", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), ], ), migrations.CreateModel( - name='Event', + name="Event", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('created_date', models.DateTimeField(editable=False)), - ('modified_date', models.DateTimeField(blank=True, null=True)), - ('title', models.CharField(help_text='Short title', max_length=512, verbose_name='Title')), - ('status', models.CharField(choices=[('published', 'Published'), ('draft', 'Draft'), ('trash', 'Trash')], default='published', max_length=20, verbose_name='Status')), - ('start_day', models.DateField(help_text='Day of the event', verbose_name='Day of the event')), - ('start_time', models.TimeField(blank=True, help_text='Starting time', null=True, verbose_name='Starting time')), - ('end_day', models.DateField(blank=True, help_text='End day of the event, only required if different from the start day.', null=True, verbose_name='End day of the event')), - ('end_time', models.TimeField(blank=True, help_text='Final time', null=True, verbose_name='Final time')), - ('location', models.CharField(help_text='Address of the event', max_length=512, verbose_name='Location')), - ('description', models.TextField(blank=True, help_text='General description of the event', null=True, verbose_name='Description')), - ('local_image', models.ImageField(blank=True, help_text='Illustration image stored in the agenda server', max_length=1024, null=True, upload_to='', verbose_name='Illustration (local image)')), - ('image', models.URLField(blank=True, help_text='URL of the illustration image', max_length=1024, null=True, verbose_name='Illustration')), - ('image_alt', models.CharField(blank=True, help_text='Alternative text used by screen readers for the image', max_length=1024, null=True, verbose_name='Illustration description')), - ('reference_urls', django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.URLField(max_length=512), blank=True, help_text='List of all the urls where this event can be found.', null=True, size=None, verbose_name='URLs')), - ('tags', django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.CharField(max_length=64), blank=True, help_text='A list of tags that describe the event.', null=True, size=None, verbose_name='Tags')), - ('category', models.ForeignKey(default=None, help_text='Category of the event', null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to='agenda_culturel.category', verbose_name='Category')), - ('uuids', django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.CharField(max_length=512), blank=True, help_text='UUIDs from import to detect duplicated entries.', null=True, size=None, verbose_name='UUIDs')), - ('imported_date', models.DateTimeField(blank=True, null=True)), - ('possibly_duplicated', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.duplicatedevents')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ("created_date", models.DateTimeField(editable=False)), + ("modified_date", models.DateTimeField(blank=True, null=True)), + ( + "title", + models.CharField( + help_text="Short title", + max_length=512, + verbose_name="Title", + ), + ), + ( + "status", + models.CharField( + choices=[ + ("published", "Published"), + ("draft", "Draft"), + ("trash", "Trash"), + ], + default="published", + max_length=20, + verbose_name="Status", + ), + ), + ( + "start_day", + models.DateField( + help_text="Day of the event", + verbose_name="Day of the event", + ), + ), + ( + "start_time", + models.TimeField( + blank=True, + help_text="Starting time", + null=True, + verbose_name="Starting time", + ), + ), + ( + "end_day", + models.DateField( + blank=True, + help_text="End day of the event, only required if different from the start day.", + null=True, + verbose_name="End day of the event", + ), + ), + ( + "end_time", + models.TimeField( + blank=True, + help_text="Final time", + null=True, + verbose_name="Final time", + ), + ), + ( + "location", + models.CharField( + help_text="Address of the event", + max_length=512, + verbose_name="Location", + ), + ), + ( + "description", + models.TextField( + blank=True, + help_text="General description of the event", + null=True, + verbose_name="Description", + ), + ), + ( + "local_image", + models.ImageField( + blank=True, + help_text="Illustration image stored in the agenda server", + max_length=1024, + null=True, + upload_to="", + verbose_name="Illustration (local image)", + ), + ), + ( + "image", + models.URLField( + blank=True, + help_text="URL of the illustration image", + max_length=1024, + null=True, + verbose_name="Illustration", + ), + ), + ( + "image_alt", + models.CharField( + blank=True, + help_text="Alternative text used by screen readers for the image", + max_length=1024, + null=True, + verbose_name="Illustration description", + ), + ), + ( + "reference_urls", + django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.URLField(max_length=512), + blank=True, + help_text="List of all the urls where this event can be found.", + null=True, + size=None, + verbose_name="URLs", + ), + ), + ( + "tags", + django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.CharField(max_length=64), + blank=True, + help_text="A list of tags that describe the event.", + null=True, + size=None, + verbose_name="Tags", + ), + ), + ( + "category", + models.ForeignKey( + default=None, + help_text="Category of the event", + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + to="agenda_culturel.category", + verbose_name="Category", + ), + ), + ( + "uuids", + django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.CharField(max_length=512), + blank=True, + help_text="UUIDs from import to detect duplicated entries.", + null=True, + size=None, + verbose_name="UUIDs", + ), + ), + ("imported_date", models.DateTimeField(blank=True, null=True)), + ( + "possibly_duplicated", + models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.duplicatedevents", + ), + ), ], options={ - 'verbose_name': 'Event', - 'verbose_name_plural': 'Events', + "verbose_name": "Event", + "verbose_name_plural": "Events", }, ), - django.contrib.postgres.operations.TrigramExtension( - ), + django.contrib.postgres.operations.TrigramExtension(), migrations.AlterField( - model_name='event', - name='possibly_duplicated', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.duplicatedevents', verbose_name='Possibly duplicated'), + model_name="event", + name="possibly_duplicated", + field=models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.duplicatedevents", + verbose_name="Possibly duplicated", + ), ), migrations.AddField( - model_name='event', - name='import_sources', - field=django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.CharField(max_length=512), blank=True, help_text='Importation source used to detect removed entries.', null=True, size=None, verbose_name='Importation source'), + model_name="event", + name="import_sources", + field=django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.CharField(max_length=512), + blank=True, + help_text="Importation source used to detect removed entries.", + null=True, + size=None, + verbose_name="Importation source", + ), ), migrations.AlterField( - model_name='event', - name='status', - field=models.CharField(choices=[('published', 'Published'), ('draft', 'Draft'), ('trash', 'Trash')], default='draft', max_length=20, verbose_name='Status'), + model_name="event", + name="status", + field=models.CharField( + choices=[ + ("published", "Published"), + ("draft", "Draft"), + ("trash", "Trash"), + ], + default="draft", + max_length=20, + verbose_name="Status", + ), ), migrations.AddField( - model_name='event', - name='recurrence_dtend', + model_name="event", + name="recurrence_dtend", field=models.DateTimeField(blank=True, editable=False, null=True), ), migrations.AddField( - model_name='event', - name='recurrence_dtstart', + model_name="event", + name="recurrence_dtstart", field=models.DateTimeField(blank=True, editable=False, null=True), ), migrations.AddField( - model_name='event', - name='recurrences', - field=recurrence.fields.RecurrenceField(blank=True, null=True, verbose_name='Recurrence'), + model_name="event", + name="recurrences", + field=recurrence.fields.RecurrenceField( + blank=True, null=True, verbose_name="Recurrence" + ), ), migrations.CreateModel( - name='RecurrentImport', + name="RecurrentImport", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('processor', models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC')], default='ical', max_length=20, verbose_name='Processor')), - ('recurrence', models.CharField(choices=[('daily', 'daily'), ('weekly', 'weekly')], default='daily', max_length=10, verbose_name='Import recurrence')), - ('source', models.URLField(help_text='URL of the source document', max_length=1024, verbose_name='Source')), - ('browsable_url', models.URLField(blank=True, help_text='URL of the corresponding document that will be shown to visitors.', max_length=1024, null=True, verbose_name='Browsable url')), - ('defaultLocation', models.CharField(blank=True, help_text='Address for each imported event', max_length=512, null=True, verbose_name='Location')), - ('defaultTags', django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.CharField(max_length=64), blank=True, help_text='A list of tags that describe each imported event.', null=True, size=None, verbose_name='Tags for each imported event')), - ('defaultCategory', models.ForeignKey(blank=True, default=None, help_text='Category of each imported event', null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to='agenda_culturel.category', verbose_name='Category')), - ('downloader', models.CharField(choices=[('simple', 'simple'), ('chromium headless', 'Headless Chromium')], default='simple', max_length=20, verbose_name='Downloader')), - ('defaultPublished', models.BooleanField(default=True, help_text='Status of each imported event (published or draft)', verbose_name='Published')), - ('name', models.CharField(default='', help_text='Recurrent import name', max_length=512, verbose_name='Name')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "processor", + models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), + ), + ( + "recurrence", + models.CharField( + choices=[("daily", "daily"), ("weekly", "weekly")], + default="daily", + max_length=10, + verbose_name="Import recurrence", + ), + ), + ( + "source", + models.URLField( + help_text="URL of the source document", + max_length=1024, + verbose_name="Source", + ), + ), + ( + "browsable_url", + models.URLField( + blank=True, + help_text="URL of the corresponding document that will be shown to visitors.", + max_length=1024, + null=True, + verbose_name="Browsable url", + ), + ), + ( + "defaultLocation", + models.CharField( + blank=True, + help_text="Address for each imported event", + max_length=512, + null=True, + verbose_name="Location", + ), + ), + ( + "defaultTags", + django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.CharField(max_length=64), + blank=True, + help_text="A list of tags that describe each imported event.", + null=True, + size=None, + verbose_name="Tags for each imported event", + ), + ), + ( + "defaultCategory", + models.ForeignKey( + blank=True, + default=None, + help_text="Category of each imported event", + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + to="agenda_culturel.category", + verbose_name="Category", + ), + ), + ( + "downloader", + models.CharField( + choices=[ + ("simple", "simple"), + ("chromium headless", "Headless Chromium"), + ], + default="simple", + max_length=20, + verbose_name="Downloader", + ), + ), + ( + "defaultPublished", + models.BooleanField( + default=True, + help_text="Status of each imported event (published or draft)", + verbose_name="Published", + ), + ), + ( + "name", + models.CharField( + default="", + help_text="Recurrent import name", + max_length=512, + verbose_name="Name", + ), + ), ], ), migrations.AddField( - model_name='batchimportation', - name='recurrentImport', - field=models.ForeignKey(blank=True, editable=False, help_text='Reference to the recurrent import processing', null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.recurrentimport', verbose_name='Recurrent import'), + model_name="batchimportation", + name="recurrentImport", + field=models.ForeignKey( + blank=True, + editable=False, + help_text="Reference to the recurrent import processing", + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.recurrentimport", + verbose_name="Recurrent import", + ), ), migrations.RemoveField( - model_name='batchimportation', - name='browsable_url', + model_name="batchimportation", + name="browsable_url", ), migrations.RemoveField( - model_name='batchimportation', - name='source', + model_name="batchimportation", + name="source", ), migrations.CreateModel( - name='CategorisationRule', + name="CategorisationRule", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('weight', models.IntegerField(default=0, help_text='The lower is the weight, the earlier the filter is applied', verbose_name='Weight')), - ('description_contains', models.CharField(blank=True, help_text='Text contained in the description', max_length=512, null=True, verbose_name='Contained in the description')), - ('desc_exact', models.BooleanField(default=False, help_text='If checked, the extract will be searched for in the description using the exact form (capitals, accents).', verbose_name='Exact description extract')), - ('title_contains', models.CharField(blank=True, help_text='Text contained in the event title', max_length=512, null=True, verbose_name='Contained in the title')), - ('title_exact', models.BooleanField(default=False, help_text='If checked, the extract will be searched for in the title using the exact form (capitals, accents).', verbose_name='Exact title extract')), - ('category', models.ForeignKey(help_text='Category applied to the event', on_delete=django.db.models.deletion.CASCADE, to='agenda_culturel.category', verbose_name='Category')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "weight", + models.IntegerField( + default=0, + help_text="The lower is the weight, the earlier the filter is applied", + verbose_name="Weight", + ), + ), + ( + "description_contains", + models.CharField( + blank=True, + help_text="Text contained in the description", + max_length=512, + null=True, + verbose_name="Contained in the description", + ), + ), + ( + "desc_exact", + models.BooleanField( + default=False, + help_text="If checked, the extract will be searched for in the description using the exact form (capitals, accents).", + verbose_name="Exact description extract", + ), + ), + ( + "title_contains", + models.CharField( + blank=True, + help_text="Text contained in the event title", + max_length=512, + null=True, + verbose_name="Contained in the title", + ), + ), + ( + "title_exact", + models.BooleanField( + default=False, + help_text="If checked, the extract will be searched for in the title using the exact form (capitals, accents).", + verbose_name="Exact title extract", + ), + ), + ( + "category", + models.ForeignKey( + help_text="Category applied to the event", + on_delete=django.db.models.deletion.CASCADE, + to="agenda_culturel.category", + verbose_name="Category", + ), + ), ], ), migrations.AlterField( - model_name='event', - name='location', - field=models.CharField(default='', help_text='Address of the event', max_length=512, verbose_name='Location'), + model_name="event", + name="location", + field=models.CharField( + default="", + help_text="Address of the event", + max_length=512, + verbose_name="Location", + ), ), migrations.AlterModelOptions( - name='batchimportation', - options={'permissions': [('run_batchimportation', 'Can run a batch importation')]}, + name="batchimportation", + options={ + "permissions": [("run_batchimportation", "Can run a batch importation")] + }, ), migrations.AlterModelOptions( - name='categorisationrule', - options={'permissions': [('apply_categorisationrules', 'Apply a categorisation rule')]}, + name="categorisationrule", + options={ + "permissions": [ + ( + "apply_categorisationrules", + "Apply a categorisation rule", + ) + ] + }, ), migrations.AlterModelOptions( - name='event', - options={'permissions': [('set_duplicated_event', 'Can set an event as duplicated')], 'verbose_name': 'Event', 'verbose_name_plural': 'Events'}, + name="event", + options={ + "permissions": [ + ("set_duplicated_event", "Can set an event as duplicated") + ], + "verbose_name": "Event", + "verbose_name_plural": "Events", + }, ), migrations.AlterModelOptions( - name='recurrentimport', - options={'permissions': [('run_recurrentimport', 'Can run a recurrent import')]}, + name="recurrentimport", + options={ + "permissions": [("run_recurrentimport", "Can run a recurrent import")] + }, ), migrations.CreateModel( - name='ModerationQuestion', + name="ModerationQuestion", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('question', models.CharField(help_text='Text that will be shown to moderators', max_length=512, unique=True, verbose_name='Question')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "question", + models.CharField( + help_text="Text that will be shown to moderators", + max_length=512, + unique=True, + verbose_name="Question", + ), + ), ], ), migrations.CreateModel( - name='ModerationAnswer', + name="ModerationAnswer", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('answer', models.CharField(help_text='Text that will be shown to moderators', max_length=512, unique=True, verbose_name='Answer')), - ('adds_tags', django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.CharField(max_length=64), blank=True, help_text='A list of tags that will be added if you choose this answer.', null=True, size=None, verbose_name='Adds tags')), - ('removes_tags', django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.CharField(max_length=64), blank=True, help_text='A list of tags that will be removed if you choose this answer.', null=True, size=None, verbose_name='Removes tags')), - ('description', models.ForeignKey(help_text='Associated question from moderation', on_delete=django.db.models.deletion.CASCADE, to='agenda_culturel.moderationquestion', verbose_name='Question')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "answer", + models.CharField( + help_text="Text that will be shown to moderators", + max_length=512, + unique=True, + verbose_name="Answer", + ), + ), + ( + "adds_tags", + django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.CharField(max_length=64), + blank=True, + help_text="A list of tags that will be added if you choose this answer.", + null=True, + size=None, + verbose_name="Adds tags", + ), + ), + ( + "removes_tags", + django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.CharField(max_length=64), + blank=True, + help_text="A list of tags that will be removed if you choose this answer.", + null=True, + size=None, + verbose_name="Removes tags", + ), + ), + ( + "description", + models.ForeignKey( + help_text="Associated question from moderation", + on_delete=django.db.models.deletion.CASCADE, + to="agenda_culturel.moderationquestion", + verbose_name="Question", + ), + ), ], ), migrations.RenameField( - model_name='moderationanswer', - old_name='description', - new_name='question', + model_name="moderationanswer", + old_name="description", + new_name="question", ), migrations.AlterField( - model_name='moderationanswer', - name='answer', - field=models.CharField(help_text='Text that will be shown to moderators', max_length=512, verbose_name='Answer'), + model_name="moderationanswer", + name="answer", + field=models.CharField( + help_text="Text that will be shown to moderators", + max_length=512, + verbose_name="Answer", + ), ), migrations.AlterField( - model_name='moderationanswer', - name='question', - field=models.ForeignKey(help_text='Associated question from moderation', on_delete=django.db.models.deletion.CASCADE, related_name='answers', to='agenda_culturel.moderationquestion', verbose_name='Question'), + model_name="moderationanswer", + name="question", + field=models.ForeignKey( + help_text="Associated question from moderation", + on_delete=django.db.models.deletion.CASCADE, + related_name="answers", + to="agenda_culturel.moderationquestion", + verbose_name="Question", + ), ), migrations.AlterModelOptions( - name='batchimportation', - options={'permissions': [('run_batchimportation', 'Can run a batch importation')], 'verbose_name': 'Batch importation', 'verbose_name_plural': 'Batch importations'}, + name="batchimportation", + options={ + "permissions": [ + ("run_batchimportation", "Can run a batch importation") + ], + "verbose_name": "Batch importation", + "verbose_name_plural": "Batch importations", + }, ), migrations.AlterModelOptions( - name='categorisationrule', - options={'permissions': [('apply_categorisationrules', 'Apply a categorisation rule')], 'verbose_name': 'Categorisation rule', 'verbose_name_plural': 'Categorisation rules'}, + name="categorisationrule", + options={ + "permissions": [ + ( + "apply_categorisationrules", + "Apply a categorisation rule", + ) + ], + "verbose_name": "Categorisation rule", + "verbose_name_plural": "Categorisation rules", + }, ), migrations.AlterModelOptions( - name='message', - options={'verbose_name': 'Contact message', 'verbose_name_plural': 'Contact messages'}, + name="message", + options={ + "verbose_name": "Contact message", + "verbose_name_plural": "Contact messages", + }, ), migrations.AlterModelOptions( - name='moderationquestion', - options={'permissions': [('use_moderation_question', 'Can use a moderation question to tag an event')], 'verbose_name': 'Moderation question', 'verbose_name_plural': 'Moderation questions'}, + name="moderationquestion", + options={ + "permissions": [ + ( + "use_moderation_question", + "Can use a moderation question to tag an event", + ) + ], + "verbose_name": "Moderation question", + "verbose_name_plural": "Moderation questions", + }, ), migrations.AlterModelOptions( - name='recurrentimport', - options={'permissions': [('run_recurrentimport', 'Can run a recurrent import')], 'verbose_name': 'Recurrent import', 'verbose_name_plural': 'Recurrent imports'}, + name="recurrentimport", + options={ + "permissions": [("run_recurrentimport", "Can run a recurrent import")], + "verbose_name": "Recurrent import", + "verbose_name_plural": "Recurrent imports", + }, ), migrations.AddField( - model_name='event', - name='moderated_date', + model_name="event", + name="moderated_date", field=models.DateTimeField(blank=True, null=True), ), migrations.AddField( - model_name='categorisationrule', - name='loc_exact', - field=models.BooleanField(default=False, help_text='If checked, the extract will be searched for in the location using the exact form (capitals, accents).', verbose_name='Exact location extract'), + model_name="categorisationrule", + name="loc_exact", + field=models.BooleanField( + default=False, + help_text="If checked, the extract will be searched for in the location using the exact form (capitals, accents).", + verbose_name="Exact location extract", + ), ), migrations.AddField( - model_name='categorisationrule', - name='location_contains', - field=models.CharField(blank=True, help_text='Text contained in the event location', max_length=512, null=True, verbose_name='Contained in the location'), + model_name="categorisationrule", + name="location_contains", + field=models.CharField( + blank=True, + help_text="Text contained in the event location", + max_length=512, + null=True, + verbose_name="Contained in the location", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lephotomat', 'le photomat')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lephotomat", "le photomat"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', 'la puce à loreille')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à loreille"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='name', - field=models.CharField(default='', help_text='Recurrent import name. Be careful to choose a name that is easy to understand, as it will be public and displayed on the sites About page.', max_length=512, verbose_name='Name'), + model_name="recurrentimport", + name="name", + field=models.CharField( + default="", + help_text="Recurrent import name. Be careful to choose a name that is easy to understand, as it will be public and displayed on the sites About page.", + max_length=512, + verbose_name="Name", + ), ), migrations.CreateModel( - name='Place', + name="Place", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(help_text='Name of the place', verbose_name='Name')), - ('address', models.CharField(help_text='Address of this place (without city name)', verbose_name='Address')), - ('location', location_field.models.plain.PlainLocationField(max_length=63)), - ('aliases', django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.CharField(max_length=512), blank=True, help_text='Alternative names or addresses used to match a place with the free-form location of an event.', null=True, size=None, verbose_name='Alternative names')), - ('city', models.CharField(default='', help_text='City name', verbose_name='City')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "name", + models.CharField( + help_text="Name of the place", verbose_name="Name" + ), + ), + ( + "address", + models.CharField( + help_text="Address of this place (without city name)", + verbose_name="Address", + ), + ), + ( + "location", + location_field.models.plain.PlainLocationField(max_length=63), + ), + ( + "aliases", + django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.CharField(max_length=512), + blank=True, + help_text="Alternative names or addresses used to match a place with the free-form location of an event.", + null=True, + size=None, + verbose_name="Alternative names", + ), + ), + ( + "city", + models.CharField( + default="", help_text="City name", verbose_name="City" + ), + ), ], options={ - 'verbose_name': 'Place', - 'verbose_name_plural': 'Places', + "verbose_name": "Place", + "verbose_name_plural": "Places", }, ), migrations.AlterField( - model_name='event', - name='location', - field=models.CharField(default='', help_text='Address of the event in case its not available in the already known places (free form)', max_length=512, verbose_name='Location (free form)'), + model_name="event", + name="location", + field=models.CharField( + default="", + help_text="Address of the event in case its not available in the already known places (free form)", + max_length=512, + verbose_name="Location (free form)", + ), ), migrations.AddField( - model_name='event', - name='exact_location', - field=models.ForeignKey(help_text='Address of the event', null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.place', verbose_name='Location'), + model_name="event", + name="exact_location", + field=models.ForeignKey( + help_text="Address of the event", + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.place", + verbose_name="Location", + ), ), migrations.AlterField( - model_name='place', - name='address', - field=models.CharField(blank=True, help_text='Address of this place (without city name)', null=True, verbose_name='Address'), + model_name="place", + name="address", + field=models.CharField( + blank=True, + help_text="Address of this place (without city name)", + null=True, + verbose_name="Address", + ), ), - django.contrib.postgres.operations.UnaccentExtension( + django.contrib.postgres.operations.UnaccentExtension(), + migrations.AlterModelOptions( + name="duplicatedevents", + options={ + "verbose_name": "Duplicated events", + "verbose_name_plural": "Duplicated events", + }, ), migrations.AlterModelOptions( - name='duplicatedevents', - options={'verbose_name': 'Duplicated events', 'verbose_name_plural': 'Duplicated events'}, + name="staticcontent", + options={ + "verbose_name": "Static content", + "verbose_name_plural": "Static contents", + }, + ), + migrations.AlterField( + model_name="event", + name="exact_location", + field=models.ForeignKey( + blank=True, + help_text="Address of the event", + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.place", + verbose_name="Location", + ), + ), + migrations.AlterField( + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à loreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterModelOptions( - name='staticcontent', - options={'verbose_name': 'Static content', 'verbose_name_plural': 'Static contents'}, - ), - migrations.AlterField( - model_name='event', - name='exact_location', - field=models.ForeignKey(blank=True, help_text='Address of the event', null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.place', verbose_name='Location'), - ), - migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', 'la puce à loreille'), ('Plugin wordpress MEC', 'Plugin wordpress MEC')], default='ical', max_length=20, verbose_name='Processor'), - ), - migrations.AlterModelOptions( - name='place', - options={'ordering': ['name'], 'verbose_name': 'Place', 'verbose_name_plural': 'Places'}, + name="place", + options={ + "ordering": ["name"], + "verbose_name": "Place", + "verbose_name_plural": "Places", + }, ), migrations.AddField( - model_name='batchimportation', - name='url_source', - field=models.URLField(blank=True, editable=False, help_text='Source URL if no RecurrentImport is associated.', max_length=1024, null=True, verbose_name='URL (if not recurrent import)'), + model_name="batchimportation", + name="url_source", + field=models.URLField( + blank=True, + editable=False, + help_text="Source URL if no RecurrentImport is associated.", + max_length=1024, + null=True, + verbose_name="URL (if not recurrent import)", + ), ), migrations.AddField( - model_name='categorisationrule', - name='place', - field=models.ForeignKey(blank=True, help_text='Location from place', null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.place', verbose_name='Place'), + model_name="categorisationrule", + name="place", + field=models.ForeignKey( + blank=True, + help_text="Location from place", + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.place", + verbose_name="Place", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page")], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='downloader', - field=models.CharField(choices=[('simple', 'simple'), ('chromium headless', 'Headless Chromium'), ('chromium (pause)', 'Headless Chromium (pause)')], default='simple', max_length=20, verbose_name='Downloader'), + model_name="recurrentimport", + name="downloader", + field=models.CharField( + choices=[ + ("simple", "simple"), + ("chromium headless", "Headless Chromium"), + ("chromium (pause)", "Headless Chromium (pause)"), + ], + default="simple", + max_length=20, + verbose_name="Downloader", + ), ), migrations.AlterField( - model_name='message', - name='comments', - field=django_ckeditor_5.fields.CKEditor5Field(blank=True, default='', help_text='Comments on the message from the moderation team', null=True, verbose_name='Comments'), + model_name="message", + name="comments", + field=django_ckeditor_5.fields.CKEditor5Field( + blank=True, + default="", + help_text="Comments on the message from the moderation team", + null=True, + verbose_name="Comments", + ), ), migrations.AlterField( - model_name='message', - name='message', - field=django_ckeditor_5.fields.CKEditor5Field(help_text='Your message', verbose_name='Message'), + model_name="message", + name="message", + field=django_ckeditor_5.fields.CKEditor5Field( + help_text="Your message", verbose_name="Message" + ), ), migrations.AlterField( - model_name='staticcontent', - name='text', - field=django_ckeditor_5.fields.CKEditor5Field(help_text='Text as shown to the visitors', verbose_name='Content'), + model_name="staticcontent", + name="text", + field=django_ckeditor_5.fields.CKEditor5Field( + help_text="Text as shown to the visitors", + verbose_name="Content", + ), ), migrations.AlterField( - model_name='message', - name='message', - field=django_ckeditor_5.fields.CKEditor5Field(blank=True, help_text='Your message', verbose_name='Message'), + model_name="message", + name="message", + field=django_ckeditor_5.fields.CKEditor5Field( + blank=True, help_text="Your message", verbose_name="Message" + ), ), migrations.AlterField( - model_name='staticcontent', - name='text', - field=django_ckeditor_5.fields.CKEditor5Field(blank=True, help_text='Text as shown to the visitors', verbose_name='Content'), + model_name="staticcontent", + name="text", + field=django_ckeditor_5.fields.CKEditor5Field( + blank=True, + help_text="Text as shown to the visitors", + verbose_name="Content", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page"), ('cour3coquins', 'la cour des 3 coquins')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page"), + ("cour3coquins", "la cour des 3 coquins"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='event', - name='location', - field=models.CharField(blank=True, default='', help_text='Address of the event in case its not available in the already known places (free form)', max_length=512, null=True, verbose_name='Location (free form)'), + model_name="event", + name="location", + field=models.CharField( + blank=True, + default="", + help_text="Address of the event in case its not available in the already known places (free form)", + max_length=512, + null=True, + verbose_name="Location (free form)", + ), ), migrations.AddField( - model_name='category', - name='pictogram', - field=models.FileField(blank=True, help_text='Pictogram of the category (svg format)', max_length=1024, null=True, upload_to='', verbose_name='Pictogram'), + model_name="category", + name="pictogram", + field=models.FileField( + blank=True, + help_text="Pictogram of the category (svg format)", + max_length=1024, + null=True, + upload_to="", + verbose_name="Pictogram", + ), ), migrations.AddField( - model_name='category', - name='position', - field=models.IntegerField(default=0, verbose_name='Position for ordering categories'), + model_name="category", + name="position", + field=models.IntegerField( + default=0, verbose_name="Position for ordering categories" + ), ), migrations.AddField( - model_name='message', - name='spam', - field=models.BooleanField(default=False, help_text='This message is a spam.', verbose_name='Spam'), + model_name="message", + name="spam", + field=models.BooleanField( + default=False, + help_text="This message is a spam.", + verbose_name="Spam", + ), ), migrations.AddField( - model_name='place', - name='location_pt', - field=location_field.models.spatial.LocationField(default=django.contrib.gis.geos.point.Point(45.783329, 3.08333), srid=4326), + model_name="place", + name="location_pt", + field=location_field.models.spatial.LocationField( + default=django.contrib.gis.geos.point.Point(45.783329, 3.08333), + srid=4326, + ), ), migrations.RemoveField( - model_name='place', - name='location', + model_name="place", + name="location", ), migrations.RenameField( - model_name='place', - old_name='location_pt', - new_name='location', + model_name="place", + old_name="location_pt", + new_name="location", ), migrations.AlterField( - model_name='place', - name='location', - field=location_field.models.spatial.LocationField(default=django.contrib.gis.geos.point.Point(3.08333, 45.783329), srid=4326), + model_name="place", + name="location", + field=location_field.models.spatial.LocationField( + default=django.contrib.gis.geos.point.Point(3.08333, 45.783329), + srid=4326, + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('cour3coquins', 'la cour des 3 coquins')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("cour3coquins", "la cour des 3 coquins"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.CreateModel( - name='ReferenceLocation', + name="ReferenceLocation", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(help_text='Name of the location', unique=True, verbose_name='Name')), - ('location', location_field.models.spatial.LocationField(default=django.contrib.gis.geos.point.Point(3.08333, 45.783329), srid=4326)), - ('main', models.BooleanField(default=False, help_text='This location is one of the main locations (shown first).', verbose_name='Main')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "name", + models.CharField( + help_text="Name of the location", + unique=True, + verbose_name="Name", + ), + ), + ( + "location", + location_field.models.spatial.LocationField( + default=django.contrib.gis.geos.point.Point(3.08333, 45.783329), + srid=4326, + ), + ), + ( + "main", + models.BooleanField( + default=False, + help_text="This location is one of the main locations (shown first).", + verbose_name="Main", + ), + ), ], options={ - 'verbose_name': 'Reference location', - 'verbose_name_plural': 'Reference locations', + "verbose_name": "Reference location", + "verbose_name_plural": "Reference locations", }, ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('cour3coquins', 'la cour des 3 coquins'), ('arachnee', 'Arachnée concert')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("cour3coquins", "la cour des 3 coquins"), + ("arachnee", "Arachnée concert"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AddField( - model_name='duplicatedevents', - name='fixed', - field=models.BooleanField(blank=True, default=False, help_text='This duplicated events is fixed, ie exactly one of the listed events is not masked.', null=True, verbose_name='Fixed'), + model_name="duplicatedevents", + name="fixed", + field=models.BooleanField( + blank=True, + default=False, + help_text="This duplicated events is fixed, ie exactly one of the listed events is not masked.", + null=True, + verbose_name="Fixed", + ), ), migrations.AddField( - model_name='event', - name='masked', - field=models.BooleanField(blank=True, default=False, help_text='This event is masked by a duplicated version.', null=True, verbose_name='Masked'), + model_name="event", + name="masked", + field=models.BooleanField( + blank=True, + default=False, + help_text="This event is masked by a duplicated version.", + null=True, + verbose_name="Masked", + ), ), migrations.AlterField( - model_name='categorisationrule', - name='weight', - field=models.IntegerField(default=1, help_text='The lower is the weight, the earlier the filter is applied', verbose_name='Weight'), + model_name="categorisationrule", + name="weight", + field=models.IntegerField( + default=1, + help_text="The lower is the weight, the earlier the filter is applied", + verbose_name="Weight", + ), ), migrations.CreateModel( - name='Tag', + name="Tag", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(help_text='Tag name', max_length=512, verbose_name='Name')), - ('description', models.TextField(blank=True, help_text='Description of the tag', null=True, verbose_name='Description')), - ('principal', models.BooleanField(default=True, help_text='This tag is highlighted as a main tag for visitors, particularly in the filter.', verbose_name='Principal')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "name", + models.CharField( + help_text="Tag name", + max_length=512, + verbose_name="Name", + ), + ), + ( + "description", + models.TextField( + blank=True, + help_text="Description of the tag", + null=True, + verbose_name="Description", + ), + ), + ( + "principal", + models.BooleanField( + default=True, + help_text="This tag is highlighted as a main tag for visitors, particularly in the filter.", + verbose_name="Principal", + ), + ), ], ), migrations.AlterField( - model_name='tag', - name='description', - field=django_ckeditor_5.fields.CKEditor5Field(blank=True, help_text='Description of the tag', null=True, verbose_name='Description'), + model_name="tag", + name="description", + field=django_ckeditor_5.fields.CKEditor5Field( + blank=True, + help_text="Description of the tag", + null=True, + verbose_name="Description", + ), ), migrations.AlterField( - model_name='tag', - name='name', - field=models.CharField(help_text='Tag name', max_length=512, unique=True, verbose_name='Name'), + model_name="tag", + name="name", + field=models.CharField( + help_text="Tag name", + max_length=512, + unique=True, + verbose_name="Name", + ), ), migrations.AddField( - model_name='tag', - name='category', - field=models.ForeignKey(blank=True, default=None, help_text='This tags corresponds to a sub-category of the given category', null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.category', verbose_name='Category'), + model_name="tag", + name="category", + field=models.ForeignKey( + blank=True, + default=None, + help_text="This tags corresponds to a sub-category of the given category", + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.category", + verbose_name="Category", + ), ), migrations.AddField( - model_name='duplicatedevents', - name='representative', - field=models.ForeignKey(default=None, help_text='This event is the representative event of the duplicated events group', null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to='agenda_culturel.event', verbose_name='Representative event'), + model_name="duplicatedevents", + name="representative", + field=models.ForeignKey( + default=None, + help_text="This event is the representative event of the duplicated events group", + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + to="agenda_culturel.event", + verbose_name="Representative event", + ), ), migrations.RunPython( code=set_representative_from_fixed_masked, reverse_code=set_fixed_masked_from_representative, ), migrations.RemoveField( - model_name='duplicatedevents', - name='fixed', + model_name="duplicatedevents", + name="fixed", ), migrations.RemoveField( - model_name='event', - name='masked', + model_name="event", + name="masked", ), migrations.RenameField( - model_name='event', - old_name='possibly_duplicated', - new_name='other_versions', + model_name="event", + old_name="possibly_duplicated", + new_name="other_versions", ), migrations.AlterField( - model_name='event', - name='other_versions', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.duplicatedevents', verbose_name='Other versions'), + model_name="event", + name="other_versions", + field=models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.duplicatedevents", + verbose_name="Other versions", + ), ), migrations.RunPython( code=strip_place_aliases, reverse_code=do_nothing, ), migrations.DeleteModel( - name='ModerationAnswer', + name="ModerationAnswer", ), migrations.DeleteModel( - name='ModerationQuestion', + name="ModerationQuestion", ), migrations.AddField( - model_name='tag', - name='in_excluded_suggestions', - field=models.BooleanField(default=False, help_text='This tag will be part of the excluded suggestions.', verbose_name='In excluded suggestions'), + model_name="tag", + name="in_excluded_suggestions", + field=models.BooleanField( + default=False, + help_text="This tag will be part of the excluded suggestions.", + verbose_name="In excluded suggestions", + ), ), migrations.AddField( - model_name='tag', - name='in_included_suggestions', - field=models.BooleanField(default=False, help_text='This tag will be part of the included suggestions.', verbose_name='In included suggestions'), + model_name="tag", + name="in_included_suggestions", + field=models.BooleanField( + default=False, + help_text="This tag will be part of the included suggestions.", + verbose_name="In included suggestions", + ), ), migrations.AlterField( - model_name='referencelocation', - name='main', - field=models.IntegerField(default=0, help_text='This location is one of the main locations (shown first higher values).', verbose_name='Main'), + model_name="referencelocation", + name="main", + field=models.IntegerField( + default=0, + help_text="This location is one of the main locations (shown first higher values).", + verbose_name="Main", + ), ), migrations.AddField( - model_name='place', - name='description', - field=django_ckeditor_5.fields.CKEditor5Field(blank=True, help_text='Description of the place, including accessibility.', null=True, verbose_name='Description'), + model_name="place", + name="description", + field=django_ckeditor_5.fields.CKEditor5Field( + blank=True, + help_text="Description of the place, including accessibility.", + null=True, + verbose_name="Description", + ), ), migrations.RemoveField( - model_name='tag', - name='category', + model_name="tag", + name="category", ), migrations.CreateModel( - name='Organisation', + name="Organisation", fields=[ - ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), - ('name', models.CharField(help_text='Organisation name', max_length=512, unique=True, verbose_name='Name')), - ('website', models.URLField(blank=True, help_text='Website of the organisation', max_length=1024, null=True, verbose_name='Website')), - ('description', django_ckeditor_5.fields.CKEditor5Field(blank=True, help_text='Description of the organisation.', null=True, verbose_name='Description')), - ('principal_place', models.ForeignKey(blank=True, help_text='Place mainly associated with this organizer. Mainly used if there is a similarity in the name, to avoid redundant displays.', null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.place', verbose_name='Principal place')), + ( + "id", + models.BigAutoField( + auto_created=True, + primary_key=True, + serialize=False, + verbose_name="ID", + ), + ), + ( + "name", + models.CharField( + help_text="Organisation name", + max_length=512, + unique=True, + verbose_name="Name", + ), + ), + ( + "website", + models.URLField( + blank=True, + help_text="Website of the organisation", + max_length=1024, + null=True, + verbose_name="Website", + ), + ), + ( + "description", + django_ckeditor_5.fields.CKEditor5Field( + blank=True, + help_text="Description of the organisation.", + null=True, + verbose_name="Description", + ), + ), + ( + "principal_place", + models.ForeignKey( + blank=True, + help_text="Place mainly associated with this organizer. Mainly used if there is a similarity in the name, to avoid redundant displays.", + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.place", + verbose_name="Principal place", + ), + ), ], options={ - 'verbose_name': 'Organisation', - 'verbose_name_plural': 'Organisations', + "verbose_name": "Organisation", + "verbose_name_plural": "Organisations", }, ), migrations.AddField( - model_name='recurrentimport', - name='defaultOrganiser', - field=models.ForeignKey(blank=True, default=None, help_text='Organiser of each imported event', null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to='agenda_culturel.organisation', verbose_name='Organiser'), + model_name="recurrentimport", + name="defaultOrganiser", + field=models.ForeignKey( + blank=True, + default=None, + help_text="Organiser of each imported event", + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + to="agenda_culturel.organisation", + verbose_name="Organiser", + ), ), migrations.AddField( - model_name='event', - name='organisers', - field=models.ManyToManyField(blank=True, help_text='list of event organisers. Organizers will only be displayed if one of them does not normally use the venue.', related_name='organised_events', to='agenda_culturel.organisation', verbose_name='Organisers'), + model_name="event", + name="organisers", + field=models.ManyToManyField( + blank=True, + help_text="list of event organisers. Organizers will only be displayed if one of them does not normally use the venue.", + related_name="organised_events", + to="agenda_culturel.organisation", + verbose_name="Organisers", + ), ), migrations.AddIndex( - model_name='event', - index=models.Index(fields=['start_day', 'start_time'], name='agenda_cult_start_d_68ab5f_idx'), + model_name="event", + index=models.Index( + fields=["start_day", "start_time"], + name="agenda_cult_start_d_68ab5f_idx", + ), ), migrations.AddIndex( - model_name='event', - index=models.Index(models.F('start_time'), django.db.models.functions.text.Lower('title'), name='start_time title'), + model_name="event", + index=models.Index( + models.F("start_time"), + django.db.models.functions.text.Lower("title"), + name="start_time title", + ), ), migrations.AlterModelOptions( - name='tag', - options={'verbose_name': 'Étiquette', 'verbose_name_plural': 'Étiquettes'}, + name="tag", + options={ + "verbose_name": "Étiquette", + "verbose_name_plural": "Étiquettes", + }, ), migrations.AddIndex( - model_name='category', - index=models.Index(fields=['name'], name='agenda_cult_name_28aa03_idx'), + model_name="category", + index=models.Index(fields=["name"], name="agenda_cult_name_28aa03_idx"), ), migrations.AddIndex( - model_name='referencelocation', - index=models.Index(fields=['name'], name='agenda_cult_name_76f079_idx'), + model_name="referencelocation", + index=models.Index(fields=["name"], name="agenda_cult_name_76f079_idx"), ), migrations.AddIndex( - model_name='staticcontent', - index=models.Index(fields=['name'], name='agenda_cult_name_fe4995_idx'), + model_name="staticcontent", + index=models.Index(fields=["name"], name="agenda_cult_name_fe4995_idx"), ), migrations.AddIndex( - model_name='tag', - index=models.Index(fields=['name'], name='agenda_cult_name_9c9c74_idx'), + model_name="tag", + index=models.Index(fields=["name"], name="agenda_cult_name_9c9c74_idx"), ), migrations.AlterModelOptions( - name='tag', - options={'verbose_name': 'Tag', 'verbose_name_plural': 'Tags'}, + name="tag", + options={"verbose_name": "Tag", "verbose_name_plural": "Tags"}, ), migrations.AlterField( - model_name='event', - name='category', - field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to='agenda_culturel.category', verbose_name='Category'), + model_name="event", + name="category", + field=models.ForeignKey( + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + to="agenda_culturel.category", + verbose_name="Category", + ), ), migrations.AlterField( - model_name='event', - name='description', - field=models.TextField(blank=True, null=True, verbose_name='Description'), + model_name="event", + name="description", + field=models.TextField(blank=True, null=True, verbose_name="Description"), ), migrations.AlterField( - model_name='event', - name='end_day', - field=models.DateField(blank=True, null=True, verbose_name='End day'), + model_name="event", + name="end_day", + field=models.DateField(blank=True, null=True, verbose_name="End day"), ), migrations.AlterField( - model_name='event', - name='end_time', - field=models.TimeField(blank=True, null=True, verbose_name='End time'), + model_name="event", + name="end_time", + field=models.TimeField(blank=True, null=True, verbose_name="End time"), ), migrations.AlterField( - model_name='event', - name='exact_location', - field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, to='agenda_culturel.place', verbose_name='Location'), + model_name="event", + name="exact_location", + field=models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.SET_NULL, + to="agenda_culturel.place", + verbose_name="Location", + ), ), migrations.AlterField( - model_name='event', - name='image', - field=models.URLField(blank=True, help_text='External URL of the illustration image', max_length=1024, null=True, verbose_name='Illustration (URL)'), + model_name="event", + name="image", + field=models.URLField( + blank=True, + help_text="External URL of the illustration image", + max_length=1024, + null=True, + verbose_name="Illustration (URL)", + ), ), migrations.AlterField( - model_name='event', - name='local_image', - field=models.ImageField(blank=True, max_length=1024, null=True, upload_to='', verbose_name='Illustration'), + model_name="event", + name="local_image", + field=models.ImageField( + blank=True, + max_length=1024, + null=True, + upload_to="", + verbose_name="Illustration", + ), ), migrations.AlterField( - model_name='event', - name='start_day', - field=models.DateField(verbose_name='Start day'), + model_name="event", + name="start_day", + field=models.DateField(verbose_name="Start day"), ), migrations.AlterField( - model_name='event', - name='start_time', - field=models.TimeField(blank=True, null=True, verbose_name='Start time'), + model_name="event", + name="start_time", + field=models.TimeField(blank=True, null=True, verbose_name="Start time"), ), migrations.AlterField( - model_name='event', - name='tags', - field=django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.CharField(max_length=64), blank=True, null=True, size=None, verbose_name='Tags'), + model_name="event", + name="tags", + field=django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.CharField(max_length=64), + blank=True, + null=True, + size=None, + verbose_name="Tags", + ), ), migrations.AlterField( - model_name='event', - name='title', - field=models.CharField(max_length=512, verbose_name='Title'), + model_name="event", + name="title", + field=models.CharField(max_length=512, verbose_name="Title"), ), migrations.AddField( - model_name='referencelocation', - name='suggested_distance', - field=models.IntegerField(default=None, help_text='If this distance is given, this location is part of the suggested filters.', null=True, verbose_name='Suggested distance (km)'), + model_name="referencelocation", + name="suggested_distance", + field=models.IntegerField( + default=None, + help_text="If this distance is given, this location is part of the suggested filters.", + null=True, + verbose_name="Suggested distance (km)", + ), ), migrations.AddField( - model_name='message', - name='related_event', - field=models.ForeignKey(default=None, help_text='The message is associated with this event.', null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to='agenda_culturel.event', verbose_name='Related event'), + model_name="message", + name="related_event", + field=models.ForeignKey( + default=None, + help_text="The message is associated with this event.", + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + to="agenda_culturel.event", + verbose_name="Related event", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('cour3coquins', 'la cour des 3 coquins'), ('arachnee', 'Arachnée concert'), ('rio', 'Le Rio')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("cour3coquins", "la cour des 3 coquins"), + ("arachnee", "Arachnée concert"), + ("rio", "Le Rio"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AddField( - model_name='event', - name='created_by_user', - field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='created_events', to=settings.AUTH_USER_MODEL, verbose_name='Author of the event creation'), + model_name="event", + name="created_by_user", + field=models.ForeignKey( + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + related_name="created_events", + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the event creation", + ), ), migrations.AddField( - model_name='event', - name='imported_by_user', - field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='imported_events', to=settings.AUTH_USER_MODEL, verbose_name='Author of the last importation'), + model_name="event", + name="imported_by_user", + field=models.ForeignKey( + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + related_name="imported_events", + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the last importation", + ), ), migrations.AddField( - model_name='event', - name='moderated_by_user', - field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='moderated_events', to=settings.AUTH_USER_MODEL, verbose_name='Author of the last moderation'), + model_name="event", + name="moderated_by_user", + field=models.ForeignKey( + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + related_name="moderated_events", + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the last moderation", + ), ), migrations.AddField( - model_name='event', - name='modified_by_user', - field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='modified_events', to=settings.AUTH_USER_MODEL, verbose_name='Author of the last modification'), + model_name="event", + name="modified_by_user", + field=models.ForeignKey( + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + related_name="modified_events", + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the last modification", + ), ), migrations.AddField( - model_name='place', - name='postcode', - field=models.CharField(blank=True, help_text='The post code is not displayed, but makes it easier to find an address when you enter it.', null=True, verbose_name='Postcode'), + model_name="place", + name="postcode", + field=models.CharField( + blank=True, + help_text="The post code is not displayed, but makes it easier to find an address when you enter it.", + null=True, + verbose_name="Postcode", + ), ), migrations.AlterModelOptions( - name='message', - options={'verbose_name': 'Message', 'verbose_name_plural': 'Messages'}, + name="message", + options={ + "verbose_name": "Message", + "verbose_name_plural": "Messages", + }, ), migrations.AddField( - model_name='message', - name='user', - field=models.ForeignKey(default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, to=settings.AUTH_USER_MODEL, verbose_name='Author of the message'), + model_name="message", + name="user", + field=models.ForeignKey( + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the message", + ), ), migrations.AddIndex( - model_name='event', - index=models.Index(fields=['end_day', 'end_time'], name='agenda_cult_end_day_4660a5_idx'), + model_name="event", + index=models.Index( + fields=["end_day", "end_time"], + name="agenda_cult_end_day_4660a5_idx", + ), ), migrations.AddIndex( - model_name='event', - index=models.Index(fields=['status'], name='agenda_cult_status_893243_idx'), + model_name="event", + index=models.Index(fields=["status"], name="agenda_cult_status_893243_idx"), ), migrations.AddIndex( - model_name='event', - index=models.Index(fields=['recurrence_dtstart', 'recurrence_dtend'], name='agenda_cult_recurre_a8911c_idx'), + model_name="event", + index=models.Index( + fields=["recurrence_dtstart", "recurrence_dtend"], + name="agenda_cult_recurre_a8911c_idx", + ), ), migrations.AddIndex( - model_name='event', - index=models.Index(models.F('start_time'), models.F('start_day'), models.F('end_day'), models.F('end_time'), django.db.models.functions.text.Lower('title'), name='datetimes title'), + model_name="event", + index=models.Index( + models.F("start_time"), + models.F("start_day"), + models.F("end_day"), + models.F("end_time"), + django.db.models.functions.text.Lower("title"), + name="datetimes title", + ), ), migrations.AddIndex( - model_name='batchimportation', - index=models.Index(fields=['created_date'], name='agenda_cult_created_a23990_idx'), + model_name="batchimportation", + index=models.Index( + fields=["created_date"], name="agenda_cult_created_a23990_idx" + ), ), migrations.AddIndex( - model_name='batchimportation', - index=models.Index(fields=['status'], name='agenda_cult_status_54b205_idx'), + model_name="batchimportation", + index=models.Index(fields=["status"], name="agenda_cult_status_54b205_idx"), ), migrations.AddIndex( - model_name='batchimportation', - index=models.Index(fields=['created_date', 'recurrentImport'], name='agenda_cult_created_0296e4_idx'), + model_name="batchimportation", + index=models.Index( + fields=["created_date", "recurrentImport"], + name="agenda_cult_created_0296e4_idx", + ), ), migrations.AddIndex( - model_name='duplicatedevents', - index=models.Index(fields=['representative'], name='agenda_cult_represe_9a4fa2_idx'), + model_name="duplicatedevents", + index=models.Index( + fields=["representative"], + name="agenda_cult_represe_9a4fa2_idx", + ), ), migrations.AddIndex( - model_name='message', - index=models.Index(fields=['related_event'], name='agenda_cult_related_79de3c_idx'), + model_name="message", + index=models.Index( + fields=["related_event"], name="agenda_cult_related_79de3c_idx" + ), ), migrations.AddIndex( - model_name='message', - index=models.Index(fields=['user'], name='agenda_cult_user_id_42dc88_idx'), + model_name="message", + index=models.Index(fields=["user"], name="agenda_cult_user_id_42dc88_idx"), ), migrations.AddIndex( - model_name='message', - index=models.Index(fields=['date'], name='agenda_cult_date_049c71_idx'), + model_name="message", + index=models.Index(fields=["date"], name="agenda_cult_date_049c71_idx"), ), migrations.AddIndex( - model_name='message', - index=models.Index(fields=['spam', 'closed'], name='agenda_cult_spam_22f9b3_idx'), + model_name="message", + index=models.Index( + fields=["spam", "closed"], name="agenda_cult_spam_22f9b3_idx" + ), ), migrations.AddIndex( - model_name='place', - index=models.Index(fields=['name'], name='agenda_cult_name_222846_idx'), + model_name="place", + index=models.Index(fields=["name"], name="agenda_cult_name_222846_idx"), ), migrations.AddIndex( - model_name='place', - index=models.Index(fields=['city'], name='agenda_cult_city_156dc7_idx'), + model_name="place", + index=models.Index(fields=["city"], name="agenda_cult_city_156dc7_idx"), ), migrations.AddIndex( - model_name='place', - index=models.Index(fields=['location'], name='agenda_cult_locatio_6f3c05_idx'), + model_name="place", + index=models.Index( + fields=["location"], name="agenda_cult_locatio_6f3c05_idx" + ), ), migrations.AddField( - model_name='recurrentimport', - name='forceLocation', - field=models.BooleanField(default=False, help_text='force location even if another is detected.', verbose_name='Force location'), + model_name="recurrentimport", + name="forceLocation", + field=models.BooleanField( + default=False, + help_text="force location even if another is detected.", + verbose_name="Force location", + ), ), migrations.AddField( - model_name='message', - name='message_type', - field=models.CharField(choices=[('from_contributor', 'From contributor'), ('import_process', 'Import process'), ('contact_form', 'Contact form'), ('event_report', 'Event report'), ('from_contrib_no_msg', 'From contributor (without message)')], default=None, max_length=20, null=True, verbose_name='Type'), + model_name="message", + name="message_type", + field=models.CharField( + choices=[ + ("from_contributor", "From contributor"), + ("import_process", "Import process"), + ("contact_form", "Contact form"), + ("event_report", "Event report"), + ( + "from_contrib_no_msg", + "From contributor (without message)", + ), + ], + default=None, + max_length=20, + null=True, + verbose_name="Type", + ), ), migrations.AlterField( - model_name='event', - name='reference_urls', - field=django_better_admin_arrayfield.models.fields.ArrayField(base_field=models.URLField(max_length=512), blank=True, null=True, size=None, verbose_name='Online sources or ticketing'), + model_name="event", + name="reference_urls", + field=django_better_admin_arrayfield.models.fields.ArrayField( + base_field=models.URLField(max_length=512), + blank=True, + null=True, + size=None, + verbose_name="Online sources or ticketing", + ), ), migrations.AlterField( - model_name='tag', - name='principal', - field=models.BooleanField(default=False, help_text='This tag is highlighted as a main tag for visitors, particularly in the filter.', verbose_name='Principal'), + model_name="tag", + name="principal", + field=models.BooleanField( + default=False, + help_text="This tag is highlighted as a main tag for visitors, particularly in the filter.", + verbose_name="Principal", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('cour3coquins', 'la cour des 3 coquins'), ('arachnee', 'Arachnée concert'), ('rio', 'Le Rio'), ('raymonde', 'La Raymonde'), ('apidae', 'Agenda apidae tourisme')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("cour3coquins", "la cour des 3 coquins"), + ("arachnee", "Arachnée concert"), + ("rio", "Le Rio"), + ("raymonde", "La Raymonde"), + ("apidae", "Agenda apidae tourisme"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('cour3coquins', 'la cour des 3 coquins'), ('arachnee', 'Arachnée concert'), ('rio', 'Le Rio'), ('raymonde', 'La Raymonde'), ('apidae', 'Agenda apidae tourisme'), ('iguana', 'Agenda iguana (médiathèques)')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("cour3coquins", "la cour des 3 coquins"), + ("arachnee", "Arachnée concert"), + ("rio", "Le Rio"), + ("raymonde", "La Raymonde"), + ("apidae", "Agenda apidae tourisme"), + ("iguana", "Agenda iguana (médiathèques)"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AddField( - model_name='category', - name='slug', - field=autoslug.fields.AutoSlugField(default=None, editable=False, null=True, populate_from='name', unique=True), + model_name="category", + name="slug", + field=autoslug.fields.AutoSlugField( + default=None, + editable=False, + null=True, + populate_from="name", + unique=True, + ), ), migrations.RunPython( code=migrate_data_slug_forward, reverse_code=migrate_data_slug_backward, ), migrations.AlterField( - model_name='message', - name='message_type', - field=models.CharField(choices=[('from_contributor', 'From contributor'), ('import_process', 'Import process'), ('update_process', 'Update process'), ('contact_form', 'Contact form'), ('event_report', 'Event report'), ('from_contrib_no_msg', 'From contributor (without message)')], default=None, max_length=20, null=True, verbose_name='Type'), + model_name="message", + name="message_type", + field=models.CharField( + choices=[ + ("from_contributor", "From contributor"), + ("import_process", "Import process"), + ("update_process", "Update process"), + ("contact_form", "Contact form"), + ("event_report", "Event report"), + ( + "from_contrib_no_msg", + "From contributor (without message)", + ), + ], + default=None, + max_length=20, + null=True, + verbose_name="Type", + ), ), migrations.AlterField( - model_name='message', - name='message_type', - field=models.CharField(choices=[('from_contributor', 'From contributor'), ('import_process', 'Import process'), ('update_process', 'Update process'), ('contact_form', 'Contact form'), ('event_report', 'Event report'), ('from_contrib_no_msg', 'From contributor (without message)'), ('warning', 'Warning')], default=None, max_length=20, null=True, verbose_name='Type'), + model_name="message", + name="message_type", + field=models.CharField( + choices=[ + ("from_contributor", "From contributor"), + ("import_process", "Import process"), + ("update_process", "Update process"), + ("contact_form", "Contact form"), + ("event_report", "Event report"), + ( + "from_contrib_no_msg", + "From contributor (without message)", + ), + ("warning", "Warning"), + ], + default=None, + max_length=20, + null=True, + verbose_name="Type", + ), ), migrations.AlterField( - model_name='event', - name='created_by_user', - field=models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='created_events', to=settings.AUTH_USER_MODEL, verbose_name='Author of the event creation'), + model_name="event", + name="created_by_user", + field=models.ForeignKey( + blank=True, + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + related_name="created_events", + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the event creation", + ), ), migrations.AlterField( - model_name='event', - name='imported_by_user', - field=models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='imported_events', to=settings.AUTH_USER_MODEL, verbose_name='Author of the last importation'), + model_name="event", + name="imported_by_user", + field=models.ForeignKey( + blank=True, + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + related_name="imported_events", + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the last importation", + ), ), migrations.AlterField( - model_name='event', - name='moderated_by_user', - field=models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='moderated_events', to=settings.AUTH_USER_MODEL, verbose_name='Author of the last moderation'), + model_name="event", + name="moderated_by_user", + field=models.ForeignKey( + blank=True, + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + related_name="moderated_events", + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the last moderation", + ), ), migrations.AlterField( - model_name='event', - name='modified_by_user', - field=models.ForeignKey(blank=True, default=None, null=True, on_delete=django.db.models.deletion.SET_DEFAULT, related_name='modified_events', to=settings.AUTH_USER_MODEL, verbose_name='Author of the last modification'), + model_name="event", + name="modified_by_user", + field=models.ForeignKey( + blank=True, + default=None, + null=True, + on_delete=django.db.models.deletion.SET_DEFAULT, + related_name="modified_events", + to=settings.AUTH_USER_MODEL, + verbose_name="Author of the last modification", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('Billetterie CF', 'Billetterie Clermont-Ferrand'), ('arachnee', 'Arachnée concert'), ('rio', 'Le Rio'), ('raymonde', 'La Raymonde'), ('apidae', 'Agenda apidae tourisme'), ('iguana', 'Agenda iguana (médiathèques)')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("Billetterie CF", "Billetterie Clermont-Ferrand"), + ("arachnee", "Arachnée concert"), + ("rio", "Le Rio"), + ("raymonde", "La Raymonde"), + ("apidae", "Agenda apidae tourisme"), + ("iguana", "Agenda iguana (médiathèques)"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('Billetterie CF', 'Billetterie Clermont-Ferrand'), ('arachnee', 'Arachnée concert'), ('rio', 'Le Rio'), ('raymonde', 'La Raymonde'), ('apidae', 'Agenda apidae tourisme'), ('iguana', 'Agenda iguana (médiathèques)'), ('Mille formes', 'Mille formes')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("Billetterie CF", "Billetterie Clermont-Ferrand"), + ("arachnee", "Arachnée concert"), + ("rio", "Le Rio"), + ("raymonde", "La Raymonde"), + ("apidae", "Agenda apidae tourisme"), + ("iguana", "Agenda iguana (médiathèques)"), + ("Mille formes", "Mille formes"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AddIndex( - model_name='event', - index=models.Index(fields=['recurrences'], name='agenda_cult_recurre_5c5094_idx'), + model_name="event", + index=models.Index( + fields=["recurrences"], name="agenda_cult_recurre_5c5094_idx" + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('Billetterie CF', 'Billetterie Clermont-Ferrand'), ('arachnee', 'Arachnée concert'), ('rio', 'Le Rio'), ('raymonde', 'La Raymonde'), ('apidae', 'Agenda apidae tourisme'), ('iguana', 'Agenda iguana (médiathèques)'), ('Mille formes', 'Mille formes'), ('Amis cerises', 'Les Amis du Temps des Cerises')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("Billetterie CF", "Billetterie Clermont-Ferrand"), + ("arachnee", "Arachnée concert"), + ("rio", "Le Rio"), + ("raymonde", "La Raymonde"), + ("apidae", "Agenda apidae tourisme"), + ("iguana", "Agenda iguana (médiathèques)"), + ("Mille formes", "Mille formes"), + ("Amis cerises", "Les Amis du Temps des Cerises"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('Billetterie CF', 'Billetterie Clermont-Ferrand'), ('arachnee', 'Arachnée concert'), ('rio', 'Le Rio'), ('raymonde', 'La Raymonde'), ('apidae', 'Agenda apidae tourisme'), ('iguana', 'Agenda iguana (médiathèques)'), ('Mille formes', 'Mille formes'), ('Amis cerises', 'Les Amis du Temps des Cerises'), ('Mobilizon', 'Mobilizon')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("Billetterie CF", "Billetterie Clermont-Ferrand"), + ("arachnee", "Arachnée concert"), + ("rio", "Le Rio"), + ("raymonde", "La Raymonde"), + ("apidae", "Agenda apidae tourisme"), + ("iguana", "Agenda iguana (médiathèques)"), + ("Mille formes", "Mille formes"), + ("Amis cerises", "Les Amis du Temps des Cerises"), + ("Mobilizon", "Mobilizon"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='source', - field=models.URLField(help_text='URL of the source document', max_length=1024, unique=True, verbose_name='Source'), + model_name="recurrentimport", + name="source", + field=models.URLField( + help_text="URL of the source document", + max_length=1024, + unique=True, + verbose_name="Source", + ), ), migrations.AlterField( - model_name='recurrentimport', - name='processor', - field=models.CharField(choices=[('ical', 'ical'), ('icalnobusy', 'ical no busy'), ('icalnovc', 'ical no VC'), ('ical naive tz', 'ical naive timezone'), ('lacoope', 'lacoope.org'), ('lacomedie', 'la comédie'), ('lefotomat', 'le fotomat'), ('lapucealoreille', "la puce à l'oreille"), ('Plugin wordpress MEC', 'Plugin wordpress MEC'), ('Facebook events', "Événements d'une page FB"), ('Billetterie CF', 'Billetterie Clermont-Ferrand'), ('arachnee', 'Arachnée concert'), ('rio', 'Le Rio'), ('raymonde', 'La Raymonde'), ('apidae', 'Agenda apidae tourisme'), ('iguana', 'Agenda iguana (médiathèques)'), ('Mille formes', 'Mille formes'), ('Amis cerises', 'Les Amis du Temps des Cerises'), ('Mobilizon', 'Mobilizon')], default='ical', max_length=20, verbose_name='Processor'), + model_name="recurrentimport", + name="processor", + field=models.CharField( + choices=[ + ("ical", "ical"), + ("icalnobusy", "ical no busy"), + ("icalnovc", "ical no VC"), + ("ical naive tz", "ical naive timezone"), + ("lacoope", "lacoope.org"), + ("lacomedie", "la comédie"), + ("lefotomat", "le fotomat"), + ("lapucealoreille", "la puce à l'oreille"), + ("Plugin wordpress MEC", "Plugin wordpress MEC"), + ("Facebook events", "Événements d'une page FB"), + ("Billetterie CF", "Billetterie Clermont-Ferrand"), + ("arachnee", "Arachnée concert"), + ("rio", "Le Rio"), + ("raymonde", "La Raymonde"), + ("apidae", "Agenda apidae tourisme"), + ("iguana", "Agenda iguana (médiathèques)"), + ("Mille formes", "Mille formes"), + ("Amis cerises", "Les Amis du Temps des Cerises"), + ("Mobilizon", "Mobilizon"), + ], + default="ical", + max_length=20, + verbose_name="Processor", + ), ), migrations.AlterField( - model_name='event', - name='local_image', - field=django_resized.forms.ResizedImageField(blank=True, crop=None, force_format='JPEG', keep_meta=True, max_length=1024, null=True, quality=75, scale=0.5, size=[900, None], upload_to='', verbose_name='Illustration'), + model_name="event", + name="local_image", + field=django_resized.forms.ResizedImageField( + blank=True, + crop=None, + force_format="JPEG", + keep_meta=True, + max_length=1024, + null=True, + quality=75, + scale=0.5, + size=[900, None], + upload_to="", + verbose_name="Illustration", + ), ), migrations.AlterField( - model_name='place', - name='city', - field=models.CharField(help_text='City name', verbose_name='City'), + model_name="place", + name="city", + field=models.CharField(help_text="City name", verbose_name="City"), ), ] diff --git a/src/agenda_culturel/migrations/0151_referencelocation_slug.py b/src/agenda_culturel/migrations/0151_referencelocation_slug.py index f31fd62..4a4bffb 100644 --- a/src/agenda_culturel/migrations/0151_referencelocation_slug.py +++ b/src/agenda_culturel/migrations/0151_referencelocation_slug.py @@ -3,27 +3,35 @@ import autoslug.fields from django.db import migrations + def migrate_data_slug_forward(apps, schema_editor): ReferenceLocation = apps.get_model("agenda_culturel", "ReferenceLocation") for instance in ReferenceLocation.objects.all(): - print("Generating slug for %s"%instance) - instance.save() # Will trigger slug update + print("Generating slug for %s" % instance) + instance.save() # Will trigger slug update + def migrate_data_slug_backward(apps, schema_editor): pass -class Migration(migrations.Migration): +class Migration(migrations.Migration): dependencies = [ - ('agenda_culturel', '0001_squashed_0150_alter_event_local_image'), + ("agenda_culturel", "0001_squashed_0150_alter_event_local_image"), ] operations = [ migrations.AddField( - model_name='referencelocation', - name='slug', - field=autoslug.fields.AutoSlugField(default=None, editable=False, null=True, populate_from='name', unique=True), + model_name="referencelocation", + name="slug", + field=autoslug.fields.AutoSlugField( + default=None, + editable=False, + null=True, + populate_from="name", + unique=True, + ), ), migrations.RunPython( code=migrate_data_slug_forward, diff --git a/src/agenda_culturel/migrations/images/account-music-outline.svg b/src/agenda_culturel/migrations/images/account-music-outline.svg index 234f360..1fbcd95 100644 --- a/src/agenda_culturel/migrations/images/account-music-outline.svg +++ b/src/agenda_culturel/migrations/images/account-music-outline.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/calendar.svg b/src/agenda_culturel/migrations/images/calendar.svg index 002fbf7..3891b74 100644 --- a/src/agenda_culturel/migrations/images/calendar.svg +++ b/src/agenda_culturel/migrations/images/calendar.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/compass-outline.svg b/src/agenda_culturel/migrations/images/compass-outline.svg index 1ed99c4..f90f1d4 100644 --- a/src/agenda_culturel/migrations/images/compass-outline.svg +++ b/src/agenda_culturel/migrations/images/compass-outline.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/dance-ballroom.svg b/src/agenda_culturel/migrations/images/dance-ballroom.svg index 09c4fdc..98942d1 100644 --- a/src/agenda_culturel/migrations/images/dance-ballroom.svg +++ b/src/agenda_culturel/migrations/images/dance-ballroom.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/drama-masks.svg b/src/agenda_culturel/migrations/images/drama-masks.svg index e278941..d2049ae 100644 --- a/src/agenda_culturel/migrations/images/drama-masks.svg +++ b/src/agenda_culturel/migrations/images/drama-masks.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/ferris-wheel.svg b/src/agenda_culturel/migrations/images/ferris-wheel.svg index 00d4d32..d013e2d 100644 --- a/src/agenda_culturel/migrations/images/ferris-wheel.svg +++ b/src/agenda_culturel/migrations/images/ferris-wheel.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/leaf.svg b/src/agenda_culturel/migrations/images/leaf.svg index f605060..3fef879 100644 --- a/src/agenda_culturel/migrations/images/leaf.svg +++ b/src/agenda_culturel/migrations/images/leaf.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/party-popper.svg b/src/agenda_culturel/migrations/images/party-popper.svg index 4ad1672..35e9f3e 100644 --- a/src/agenda_culturel/migrations/images/party-popper.svg +++ b/src/agenda_culturel/migrations/images/party-popper.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/school-outline.svg b/src/agenda_culturel/migrations/images/school-outline.svg index 5caeb47..e948776 100644 --- a/src/agenda_culturel/migrations/images/school-outline.svg +++ b/src/agenda_culturel/migrations/images/school-outline.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/theater.svg b/src/agenda_culturel/migrations/images/theater.svg index 85c7781..85b88be 100644 --- a/src/agenda_culturel/migrations/images/theater.svg +++ b/src/agenda_culturel/migrations/images/theater.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/tools.svg b/src/agenda_culturel/migrations/images/tools.svg index e83473e..0cbf6cb 100644 --- a/src/agenda_culturel/migrations/images/tools.svg +++ b/src/agenda_culturel/migrations/images/tools.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/track-light.svg b/src/agenda_culturel/migrations/images/track-light.svg index 9827c0f..7185a57 100644 --- a/src/agenda_culturel/migrations/images/track-light.svg +++ b/src/agenda_culturel/migrations/images/track-light.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/track-light_qY7G1tL.svg b/src/agenda_culturel/migrations/images/track-light_qY7G1tL.svg index 9827c0f..7185a57 100644 --- a/src/agenda_culturel/migrations/images/track-light_qY7G1tL.svg +++ b/src/agenda_culturel/migrations/images/track-light_qY7G1tL.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/warehouse.svg b/src/agenda_culturel/migrations/images/warehouse.svg index 8d4e223..f8494b6 100644 --- a/src/agenda_culturel/migrations/images/warehouse.svg +++ b/src/agenda_culturel/migrations/images/warehouse.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/migrations/images/workshop.svg b/src/agenda_culturel/migrations/images/workshop.svg index 3d02d00..70bf16d 100644 --- a/src/agenda_culturel/migrations/images/workshop.svg +++ b/src/agenda_culturel/migrations/images/workshop.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/models.py b/src/agenda_culturel/models.py index 50ca80b..2ec08a5 100644 --- a/src/agenda_culturel/models.py +++ b/src/agenda_culturel/models.py @@ -1,55 +1,51 @@ -from django.db import models, connection -from django_better_admin_arrayfield.models.fields import ArrayField -from django.utils.translation import gettext_lazy as _ -from django.template.defaultfilters import slugify -from django.utils.dateparse import parse_date -from django.urls import reverse -from colorfield.fields import ColorField -from django_ckeditor_5.fields import CKEditor5Field +import copy +import hashlib +import logging +import os +import unicodedata +import urllib.request +import uuid +from collections import defaultdict +from datetime import date, time, timedelta from urllib.parse import urlparse + +import emoji +import recurrence +import recurrence.fields +from autoslug import AutoSlugField +from colorfield.fields import ColorField +from django.contrib.auth.models import User +from django.contrib.gis.geos import Point +from django.contrib.postgres.search import TrigramSimilarity +from django.contrib.sites.models import Site from django.core.cache import cache from django.core.cache.utils import make_template_fragment_key -from django.contrib.auth.models import User -import emoji -from django.core.files.storage import default_storage -from django.contrib.sites.models import Site -from django.core.mail import send_mail -from django.template.loader import render_to_string -from autoslug import AutoSlugField -from django_resized import ResizedImageField - -import uuid - -import hashlib -import urllib.request -import os from django.core.files import File -from django.utils import timezone -from django.contrib.postgres.search import TrigramSimilarity -from django.db.models import Q, Count, F, Subquery, OuterRef, Func +from django.core.files.storage import default_storage +from django.core.mail import send_mail +from django.db import connection, models +from django.db.models import Count, F, Func, OuterRef, Q, Subquery from django.db.models.functions import Lower -import recurrence.fields -import recurrence -import copy -import unicodedata -from collections import defaultdict +from django.template.defaultfilters import date as _date +from django.template.defaultfilters import slugify +from django.template.loader import render_to_string +from django.urls import reverse +from django.utils import timezone +from django.utils.dateparse import parse_date +from django.utils.timezone import datetime +from django.utils.translation import gettext_lazy as _ +from django_better_admin_arrayfield.models.fields import ArrayField +from django_ckeditor_5.fields import CKEditor5Field +from django_resized import ResizedImageField +from icalendar import Calendar as icalCal +from icalendar import Event as icalEvent +from location_field.models.spatial import LocationField + +from .calendar import CalendarDay +from .import_tasks.extractor import Extractor from .import_tasks.generic_extractors.fbevent import ( CExtractor as FacebookEventExtractor, ) -from .import_tasks.extractor import Extractor - -from django.template.defaultfilters import date as _date -from datetime import time, timedelta, date -from django.utils.timezone import datetime - -from location_field.models.spatial import LocationField -from django.contrib.gis.geos import Point - -from .calendar import CalendarDay -from icalendar import Calendar as icalCal -from icalendar import Event as icalEvent - -import logging logger = logging.getLogger(__name__) @@ -188,9 +184,11 @@ class Category(models.Model): class Tag(models.Model): - name = models.CharField( - verbose_name=_("Name"), help_text=_("Tag name"), max_length=512, unique=True + verbose_name=_("Name"), + help_text=_("Tag name"), + max_length=512, + unique=True, ) description = CKEditor5Field( @@ -253,7 +251,6 @@ class Tag(models.Model): result = cache.get(id_cache) if not result: - free_tags = Event.get_all_tags(False) f_tags = [t["tag"] for t in free_tags] @@ -323,7 +320,6 @@ class Tag(models.Model): class DuplicatedEvents(models.Model): - representative = models.ForeignKey( "Event", verbose_name=_("Representative event"), @@ -473,7 +469,6 @@ class DuplicatedEvents(models.Model): class ReferenceLocation(models.Model): - name = models.CharField( verbose_name=_("Name"), help_text=_("Name of the location"), @@ -481,7 +476,10 @@ class ReferenceLocation(models.Model): null=False, ) location = LocationField( - based_fields=["name"], zoom=12, default=Point(3.08333, 45.783329), srid=4326 + based_fields=["name"], + zoom=12, + default=Point(3.08333, 45.783329), + srid=4326, ) main = models.IntegerField( verbose_name=_("Main"), @@ -570,7 +568,8 @@ class Place(models.Model): def get_absolute_url(self): return reverse( - "view_place_fullname", kwargs={"pk": self.pk, "extra": slugify(self.name)} + "view_place_fullname", + kwargs={"pk": self.pk, "extra": slugify(self.name)}, ) def nb_events(self): @@ -716,7 +715,10 @@ class Event(models.Model): title = models.CharField(verbose_name=_("Title"), max_length=512) status = models.CharField( - _("Status"), max_length=20, choices=STATUS.choices, default=STATUS.DRAFT + _("Status"), + max_length=20, + choices=STATUS.choices, + default=STATUS.DRAFT, ) category = models.ForeignKey( @@ -742,7 +744,10 @@ class Event(models.Model): end_time = models.TimeField(verbose_name=_("End time"), blank=True, null=True) recurrences = recurrence.fields.RecurrenceField( - verbose_name=_("Recurrence"), include_dtstart=False, blank=True, null=True + verbose_name=_("Recurrence"), + include_dtstart=False, + blank=True, + null=True, ) exact_location = models.ForeignKey( @@ -845,7 +850,10 @@ class Event(models.Model): def get_import_messages(self): return self.message_set.filter( - message_type__in=[Message.TYPE.IMPORT_PROCESS, Message.TYPE.UPDATE_PROCESS] + message_type__in=[ + Message.TYPE.IMPORT_PROCESS, + Message.TYPE.UPDATE_PROCESS, + ] ).order_by("date") def get_consolidated_end_day(self, intuitive=True): @@ -995,7 +1003,12 @@ class Event(models.Model): if not simple: c += [ - {"timestamp": m.date, "data": m, "user": m.user, "is_date": False} + { + "timestamp": m.date, + "data": m, + "user": m.user, + "is_date": False, + } for m in self.message_set.filter(spam=False) ] @@ -1408,7 +1421,10 @@ class Event(models.Model): CategorisationRule.apply_rules(self) def get_contributor_message(self): - types = [Message.TYPE.FROM_CONTRIBUTOR, Message.TYPE.FROM_CONTRIBUTOR_NO_MSG] + types = [ + Message.TYPE.FROM_CONTRIBUTOR, + Message.TYPE.FROM_CONTRIBUTOR_NO_MSG, + ] if self.other_versions is None or self.other_versions.representative is None: return Message.objects.filter( related_event=self.pk, message_type__in=types, closed=False @@ -1481,7 +1497,7 @@ class Event(models.Model): # check if we need to clean the other_versions if ( not clone - and not "noclean_other_versions" in kwargs + and "noclean_other_versions" not in kwargs and self.pk and self.other_versions is not None and self.other_versions.nb_duplicated() == 1 @@ -1901,7 +1917,6 @@ class Event(models.Model): return events[0] def update(self, other, all): - # integrate pending organisers if other.has_pending_organisers() and other.pending_organisers is not None: self.organisers.set(other.pending_organisers) @@ -2030,7 +2045,8 @@ class Event(models.Model): else: # we only update local information if it's a pure import and has no moderated_date same_imported.update( - event, pure and same_imported.moderated_date is None + event, + pure and same_imported.moderated_date is None, ) # save messages if event.has_message(): @@ -2046,7 +2062,8 @@ class Event(models.Model): ): same_imported.download_image() same_imported.save( - update_fields=["local_image"], noclean_other_versions=True + update_fields=["local_image"], + noclean_other_versions=True, ) to_update.append(same_imported) @@ -2104,7 +2121,13 @@ class Event(models.Model): nb_updated = Event.objects.bulk_update( to_update, fields=Event.data_fields(no_m2m=True) - + ["imported_date", "modified_date", "uuids", "status", "import_sources"], + + [ + "imported_date", + "modified_date", + "uuids", + "status", + "import_sources", + ], ) nb_draft = 0 @@ -2329,15 +2352,15 @@ class Event(models.Model): class Message(models.Model): - class TYPE(models.TextChoices): FROM_CONTRIBUTOR = "from_contributor", _("From contributor") IMPORT_PROCESS = "import_process", _("Import process") UPDATE_PROCESS = "update_process", _("Update process") CONTACT_FORM = "contact_form", _("Contact form") EVENT_REPORT = "event_report", _("Event report") - FROM_CONTRIBUTOR_NO_MSG = "from_contrib_no_msg", _( - "From contributor (without message)" + FROM_CONTRIBUTOR_NO_MSG = ( + "from_contrib_no_msg", + _("From contributor (without message)"), ) WARNING = "warning", _("Warning") @@ -2470,7 +2493,10 @@ class RecurrentImport(models.Model): class DOWNLOADER(models.TextChoices): SIMPLE = "simple", _("simple") CHROMIUMHEADLESS = "chromium headless", _("Headless Chromium") - CHROMIUMHEADLESSPAUSE = "chromium (pause)", _("Headless Chromium (pause)") + CHROMIUMHEADLESSPAUSE = ( + "chromium (pause)", + _("Headless Chromium (pause)"), + ) class RECURRENCE(models.TextChoices): DAILY = ( @@ -2489,7 +2515,10 @@ class RecurrentImport(models.Model): default="", ) processor = models.CharField( - _("Processor"), max_length=20, choices=PROCESSOR.choices, default=PROCESSOR.ICAL + _("Processor"), + max_length=20, + choices=PROCESSOR.choices, + default=PROCESSOR.ICAL, ) downloader = models.CharField( _("Downloader"), @@ -2628,7 +2657,10 @@ class BatchImportation(models.Model): ) status = models.CharField( - _("Status"), max_length=20, choices=STATUS.choices, default=STATUS.RUNNING + _("Status"), + max_length=20, + choices=STATUS.choices, + default=STATUS.RUNNING, ) error_message = models.CharField( diff --git a/src/agenda_culturel/settings/base.py b/src/agenda_culturel/settings/base.py index 5169baf..da2b4f9 100644 --- a/src/agenda_culturel/settings/base.py +++ b/src/agenda_culturel/settings/base.py @@ -1,8 +1,9 @@ -from os import getenv as os_getenv, path as os_path # noqa +from os import getenv as os_getenv # noqa +from os import path as os_path from pathlib import Path -from django.utils.translation import gettext_lazy as _ from django.core.management.utils import get_random_secret_key +from django.utils.translation import gettext_lazy as _ # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent.parent diff --git a/src/agenda_culturel/settings/test.py b/src/agenda_culturel/settings/test.py index 85075e7..7558a69 100644 --- a/src/agenda_culturel/settings/test.py +++ b/src/agenda_culturel/settings/test.py @@ -1,6 +1,5 @@ from .base import * # noqa - DATABASES = { "default": { "ENGINE": "django.db.backends.sqlite3", diff --git a/src/agenda_culturel/static/MarkerCluster.pdl.css b/src/agenda_culturel/static/MarkerCluster.pdl.css index 525370b..fc847a2 100644 --- a/src/agenda_culturel/static/MarkerCluster.pdl.css +++ b/src/agenda_culturel/static/MarkerCluster.pdl.css @@ -57,4 +57,4 @@ } .marker-cluster span { line-height: 30px; - } \ No newline at end of file + } diff --git a/src/agenda_culturel/static/air-datepicker/air-datepicker.js b/src/agenda_culturel/static/air-datepicker/air-datepicker.js index 8c696a7..60f55a1 100644 --- a/src/agenda_culturel/static/air-datepicker/air-datepicker.js +++ b/src/agenda_culturel/static/air-datepicker/air-datepicker.js @@ -1 +1 @@ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.AirDatepicker=t():e.AirDatepicker=t()}(this,(function(){return function(){"use strict";var e={d:function(t,i){for(var s in i)e.o(i,s)&&!e.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:i[s]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return R}});var i={days:"days",months:"months",years:"years",day:"day",month:"month",year:"year",eventChangeViewDate:"changeViewDate",eventChangeCurrentView:"changeCurrentView",eventChangeFocusDate:"changeFocusDate",eventChangeSelectedDate:"changeSelectedDate",eventChangeTime:"changeTime",eventChangeLastSelectedDate:"changeLastSelectedDate",actionSelectDate:"selectDate",actionUnselectDate:"unselectDate",cssClassWeekend:"-weekend-"},s={classes:"",inline:!1,locale:{days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],daysShort:["Вос","Пон","Вто","Сре","Чет","Пят","Суб"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",clear:"Очистить",dateFormat:"dd.MM.yyyy",timeFormat:"HH:mm",firstDay:1},startDate:new Date,firstDay:"",weekends:[6,0],dateFormat:"",altField:"",altFieldDateFormat:"T",toggleSelected:!0,keyboardNav:!0,selectedDates:!1,container:"",isMobile:!1,visible:!1,position:"bottom left",offset:12,view:i.days,minView:i.days,showOtherMonths:!0,selectOtherMonths:!0,moveToOtherMonthsOnSelect:!0,showOtherYears:!0,selectOtherYears:!0,moveToOtherYearsOnSelect:!0,minDate:"",maxDate:"",disableNavWhenOutOfRange:!0,multipleDates:!1,multipleDatesSeparator:", ",range:!1,dynamicRange:!0,buttons:!1,monthsField:"monthsShort",showEvent:"focus",autoClose:!1,fixedHeight:!1,prevHtml:'',nextHtml:'',navTitles:{days:"MMMM, yyyy",months:"yyyy",years:"yyyy1 - yyyy2"},timepicker:!1,onlyTimepicker:!1,dateTimeSeparator:" ",timeFormat:"",minHours:0,maxHours:24,minMinutes:0,maxMinutes:59,hoursStep:1,minutesStep:1,onSelect:!1,onChangeViewDate:!1,onChangeView:!1,onRenderCell:!1,onShow:!1,onHide:!1,onClickDayName:!1};function a(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return"string"==typeof e?t.querySelector(e):e}function n(){let{tagName:e="div",className:t="",innerHtml:i="",id:s="",attrs:a={}}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=document.createElement(e);return t&&n.classList.add(...t.split(" ")),s&&(n.id=s),i&&(n.innerHTML=i),a&&r(n,a),n}function r(e,t){for(let[i,s]of Object.entries(t))void 0!==s&&e.setAttribute(i,s);return e}function o(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function h(e){let t=e.getHours(),{hours:i,dayPeriod:s}=l(t);return{year:e.getFullYear(),month:e.getMonth(),fullMonth:e.getMonth()+1<10?"0"+(e.getMonth()+1):e.getMonth()+1,date:e.getDate(),fullDate:e.getDate()<10?"0"+e.getDate():e.getDate(),day:e.getDay(),hours:t,fullHours:d(t),hours12:i,dayPeriod:s,fullHours12:d(i),minutes:e.getMinutes(),fullMinutes:e.getMinutes()<10?"0"+e.getMinutes():e.getMinutes()}}function l(e){return{dayPeriod:e>11?"pm":"am",hours:e%12==0?12:e%12}}function d(e){return e<10?"0"+e:e}function c(e){let t=10*Math.floor(e.getFullYear()/10);return[t,t+9]}function u(){let e=[];for(var t=arguments.length,i=new Array(t),s=0;s{if("object"==typeof t)for(let i in t)t[i]&&e.push(i);else t&&e.push(t)})),e.join(" ")}function p(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.days;if(!e||!t)return!1;let a=h(e),n=h(t);return{[i.days]:a.date===n.date&&a.month===n.month&&a.year===n.year,[i.months]:a.month===n.month&&a.year===n.year,[i.years]:a.year===n.year}[s]}function m(e,t,i){let s=g(e,!1).getTime(),a=g(t,!1).getTime();return i?s>=a:s>a}function v(e,t){return!m(e,t,!0)}function g(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=new Date(e.getTime());return"boolean"!=typeof t||t||function(e){e.setHours(0,0,0,0)}(i),i}function D(e,t,i){e.length?e.forEach((e=>{e.addEventListener(t,i)})):e.addEventListener(t,i)}function y(e,t){return!(!e||e===document||e instanceof DocumentFragment)&&(e.matches(t)?e:y(e.parentNode,t))}function f(e,t,i){return e>i?i:e1?t-1:0),s=1;se)).forEach((t=>{for(let[i,s]of Object.entries(t))if(void 0!==s&&"[object Object]"===s.toString()){let t=void 0!==e[i]?e[i].toString():void 0,a=s.toString(),n=Array.isArray(s)?[]:{};e[i]=e[i]?t!==a?n:e[i]:n,w(e[i],s)}else e[i]=s})),e}function b(e){let t=e;return e instanceof Date||("string"==typeof e&&/^\d{4}-\d{2}-\d{2}$/.test(e)&&(e+="T00:00:00"),t=new Date(e)),isNaN(t.getTime())&&(console.log(`Unable to convert value "${e}" to Date object`),t=!1),t}function k(e){let t="\\s|\\.|-|/|\\\\|,|\\$|\\!|\\?|:|;";return new RegExp("(^|>|"+t+")("+e+")($|<|"+t+")","g")}function $(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class C{constructor(){let{type:e,date:t,dp:i,opts:s,body:a}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$(this,"focus",(()=>{this.$cell.classList.add("-focus-"),this.focused=!0})),$(this,"removeFocus",(()=>{this.$cell.classList.remove("-focus-"),this.focused=!1})),$(this,"select",(()=>{this.$cell.classList.add("-selected-"),this.selected=!0})),$(this,"removeSelect",(()=>{this.$cell.classList.remove("-selected-","-range-from-","-range-to-"),this.selected=!1})),$(this,"onChangeSelectedDate",(()=>{this.isDisabled||(this._handleSelectedStatus(),this.opts.range&&this._handleRangeStatus())})),$(this,"onChangeFocusDate",(e=>{if(!e)return void(this.focused&&this.removeFocus());let t=p(e,this.date,this.type);t?this.focus():!t&&this.focused&&this.removeFocus(),this.opts.range&&this._handleRangeStatus()})),$(this,"render",(()=>(this.$cell.innerHTML=this._getHtml(),this._handleClasses(),this.$cell))),this.type=e,this.singleType=this.type.slice(0,-1),this.date=t,this.dp=i,this.opts=s,this.body=a,this.customData=!1,this.init()}init(){var e;let{onRenderCell:t}=this.opts;t&&(this.customData=t({date:this.date,cellType:this.singleType,datepicker:this.dp})),this._createElement(),this._bindDatepickerEvents(),null!==(e=this.customData)&&void 0!==e&&e.disabled&&this.dp.disableDate(this.date)}_bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeFocusDate,this.onChangeFocusDate)}unbindDatepickerEvents(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeFocusDate,this.onChangeFocusDate)}_createElement(){var e;let{year:t,month:i,date:s}=h(this.date),a=(null===(e=this.customData)||void 0===e?void 0:e.attrs)||{};this.$cell=n({attrs:{"data-year":t,"data-month":i,"data-date":s,...a}}),this.$cell.adpCell=this}_getClassName(){var e;let t=new Date,{selectOtherMonths:s,selectOtherYears:a}=this.opts,{minDate:n,maxDate:r,isDateDisabled:o}=this.dp,{day:l}=h(this.date),d=this._isOutOfMinMaxRange(),c=o(this.date),m=u("air-datepicker-cell",`-${this.singleType}-`,{"-current-":p(t,this.date,this.type),"-min-date-":n&&p(n,this.date,this.type),"-max-date-":r&&p(r,this.date,this.type)}),v="";switch(this.type){case i.days:v=u({"-weekend-":this.dp.isWeekend(l),"-other-month-":this.isOtherMonth,"-disabled-":this.isOtherMonth&&!s||d||c});break;case i.months:v=u({"-disabled-":d});break;case i.years:v=u({"-other-decade-":this.isOtherDecade,"-disabled-":d||this.isOtherDecade&&!a})}return u(m,v,null===(e=this.customData)||void 0===e?void 0:e.classes).split(" ")}_getHtml(){var e;let{year:t,month:s,date:a}=h(this.date),{showOtherMonths:n,showOtherYears:r}=this.opts;if(null!==(e=this.customData)&&void 0!==e&&e.html)return this.customData.html;switch(this.type){case i.days:return!n&&this.isOtherMonth?"":a;case i.months:return this.dp.locale[this.opts.monthsField][s];case i.years:return!r&&this.isOtherDecade?"":t}}_isOutOfMinMaxRange(){let{minDate:e,maxDate:t}=this.dp,{type:s,date:a}=this,{month:n,year:r,date:o}=h(a),l=s===i.days,d=s===i.years,c=!!e&&new Date(r,d?e.getMonth():n,l?o:e.getDate()),u=!!t&&new Date(r,d?t.getMonth():n,l?o:t.getDate());return e&&t?v(c,e)||m(u,t):e?v(c,e):t?m(u,t):void 0}destroy(){this.unbindDatepickerEvents()}_handleRangeStatus(){const{selectedDates:e,focusDate:t,rangeDateTo:i,rangeDateFrom:s}=this.dp,a=e.length;if(!a)return;let n=s,r=i;if(1===a&&t){const i=m(t,e[0]);n=i?e[0]:t,r=i?t:e[0]}let o=u({"-in-range-":n&&r&&(h=this.date,l=n,d=r,m(h,l)&&v(h,d)),"-range-from-":n&&p(this.date,n,this.type),"-range-to-":r&&p(this.date,r,this.type)});var h,l,d;this.$cell.classList.remove("-range-from-","-range-to-","-in-range-"),o&&this.$cell.classList.add(...o.split(" "))}_handleSelectedStatus(){let e=this.dp._checkIfDateIsSelected(this.date,this.type);e?this.select():!e&&this.selected&&this.removeSelect()}_handleInitialFocusStatus(){p(this.dp.focusDate,this.date,this.type)&&this.focus()}_handleClasses(){this.$cell.setAttribute("class",""),this._handleInitialFocusStatus(),this.dp.hasSelectedDates&&(this._handleSelectedStatus(),this.dp.opts.range&&this._handleRangeStatus()),this.$cell.classList.add(...this._getClassName())}get isDisabled(){return this.$cell.matches(".-disabled-")}get isOtherMonth(){return this.dp.isOtherMonth(this.date)}get isOtherDecade(){return this.dp.isOtherDecade(this.date)}}function _(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}let M={[i.days]:`
`,[i.months]:`
`,[i.years]:`
`};const S=".air-datepicker-cell";class T{constructor(e){let{dp:t,type:s,opts:a}=e;_(this,"handleClick",(e=>{let t=e.target.closest(S).adpCell;if(t.isDisabled)return;if(!this.dp.isMinViewReached)return void this.dp.down();let i=this.dp._checkIfDateIsSelected(t.date,t.type);i?this.dp._handleAlreadySelectedDates(i,t.date):this.dp.selectDate(t.date)})),_(this,"handleDayNameClick",(e=>{let t=e.target.getAttribute("data-day-index");this.opts.onClickDayName({dayIndex:Number(t),datepicker:this.dp})})),_(this,"onChangeCurrentView",(e=>{e!==this.type?this.hide():(this.show(),this.render())})),_(this,"onMouseOverCell",(e=>{let t=y(e.target,S);this.dp.setFocusDate(!!t&&t.adpCell.date)})),_(this,"onMouseOutCell",(()=>{this.dp.setFocusDate(!1)})),_(this,"onClickBody",(e=>{let{onClickDayName:t}=this.opts,i=e.target;i.closest(S)&&this.handleClick(e),t&&i.closest(".air-datepicker-body--day-name")&&this.handleDayNameClick(e)})),_(this,"onMouseDown",(e=>{this.pressed=!0;let t=y(e.target,S),i=t&&t.adpCell;p(i.date,this.dp.rangeDateFrom)&&(this.rangeFromFocused=!0),p(i.date,this.dp.rangeDateTo)&&(this.rangeToFocused=!0)})),_(this,"onMouseMove",(e=>{if(!this.pressed||!this.dp.isMinViewReached)return;e.preventDefault();let t=y(e.target,S),i=t&&t.adpCell,{selectedDates:s,rangeDateTo:a,rangeDateFrom:n}=this.dp;if(!i||i.isDisabled)return;let{date:r}=i;if(2===s.length){if(this.rangeFromFocused&&!m(r,a)){let{hours:e,minutes:t}=h(n);r.setHours(e),r.setMinutes(t),this.dp.rangeDateFrom=r,this.dp.replaceDate(n,r)}if(this.rangeToFocused&&!v(r,n)){let{hours:e,minutes:t}=h(a);r.setHours(e),r.setMinutes(t),this.dp.rangeDateTo=r,this.dp.replaceDate(a,r)}}})),_(this,"onMouseUp",(()=>{this.pressed=!1,this.rangeFromFocused=!1,this.rangeToFocused=!1})),_(this,"onChangeViewDate",((e,t)=>{if(!this.isVisible)return;let s=c(e),a=c(t);switch(this.dp.currentView){case i.days:if(p(e,t,i.months))return;break;case i.months:if(p(e,t,i.years))return;break;case i.years:if(s[0]===a[0]&&s[1]===a[1])return}this.render()})),_(this,"render",(()=>{this.destroyCells(),this._generateCells(),this.cells.forEach((e=>{this.$cells.appendChild(e.render())}))})),this.dp=t,this.type=s,this.opts=a,this.cells=[],this.$el="",this.pressed=!1,this.isVisible=!0,this.init()}init(){this._buildBaseHtml(),this.type===i.days&&this.renderDayNames(),this.render(),this._bindEvents(),this._bindDatepickerEvents()}_bindEvents(){let{range:e,dynamicRange:t}=this.opts;D(this.$el,"mouseover",this.onMouseOverCell),D(this.$el,"mouseout",this.onMouseOutCell),D(this.$el,"click",this.onClickBody),e&&t&&(D(this.$el,"mousedown",this.onMouseDown),D(this.$el,"mousemove",this.onMouseMove),D(window.document,"mouseup",this.onMouseUp))}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView)}_buildBaseHtml(){this.$el=n({className:`air-datepicker-body -${this.type}-`,innerHtml:M[this.type]}),this.$names=a(".air-datepicker-body--day-names",this.$el),this.$cells=a(".air-datepicker-body--cells",this.$el)}_getDayNamesHtml(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.dp.locale.firstDay,t="",s=this.dp.isWeekend,{onClickDayName:a}=this.opts,n=e,r=0;for(;r<7;){let e=n%7;t+=`
${this.dp.locale.daysMin[e]}
`,r++,n++}return t}renderDayNames(){this.$names.innerHTML=this._getDayNamesHtml()}_generateCell(e){let{type:t,dp:i,opts:s}=this;return new C({type:t,dp:i,opts:s,date:e,body:this})}_generateCells(){T.getDatesFunction(this.type)(this.dp,(e=>{this.cells.push(this._generateCell(e))}))}show(){this.isVisible=!0,this.$el.classList.remove("-hidden-")}hide(){this.isVisible=!1,this.$el.classList.add("-hidden-")}destroyCells(){this.cells.forEach((e=>e.destroy())),this.cells=[],this.$cells.innerHTML=""}destroy(){this.destroyCells(),this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView)}static getDaysDates(e,t){let{viewDate:i,opts:{fixedHeight:s},locale:{firstDay:a}}=e,n=o(i),{year:r,month:l}=h(i),d=new Date(r,l,1),c=new Date(r,l,n),u=d.getDay()-a,p=6-c.getDay()+a;u=u<0?u+7:u,p=p>6?p-7:p;let m=function(e,t){let{year:i,month:s,date:a}=h(e);return new Date(i,s,a-t)}(d,u),v=n+u+p,g=m.getDate(),{year:D,month:y}=h(m),f=0;s&&(v=42);const w=[];for(;f0&&void 0!==arguments[0]?arguments[0]:i.days;return{[i.days]:T.getDaysDates,[i.months]:T.getMonthsDates,[i.years]:T.getYearsDates}[e]}}function F(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class V{constructor(e){let{dp:t,opts:i}=e;F(this,"onClickNav",(e=>{let t=y(e.target,".air-datepicker-nav--action");if(!t)return;let i=t.dataset.action;this.dp[i]()})),F(this,"onChangeViewDate",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus()})),F(this,"onChangeCurrentView",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus()})),F(this,"onClickNavTitle",(()=>{this.dp.isFinalView||this.dp.up()})),F(this,"update",(()=>{let{prevHtml:e,nextHtml:t}=this.opts;this.$prev.innerHTML=e,this.$next.innerHTML=t,this._resetNavStatus(),this.render(),this.handleNavStatus()})),F(this,"renderDelay",(()=>{setTimeout(this.render)})),F(this,"render",(()=>{this.$title.innerHTML=this._getTitle(),function(e,t){for(let i in t)t[i]?e.classList.add(i):e.classList.remove(i)}(this.$title,{"-disabled-":this.dp.isFinalView})})),this.dp=t,this.opts=i,this.init()}init(){this._createElement(),this._buildBaseHtml(),this._defineDOM(),this.render(),this.handleNavStatus(),this._bindEvents(),this._bindDatepickerEvents()}_defineDOM(){this.$title=a(".air-datepicker-nav--title",this.$el),this.$prev=a('[data-action="prev"]',this.$el),this.$next=a('[data-action="next"]',this.$el)}_bindEvents(){this.$el.addEventListener("click",this.onClickNav),this.$title.addEventListener("click",this.onClickNavTitle)}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.on(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.on(i.eventChangeTime,this.render))}destroy(){this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.off(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.off(i.eventChangeTime,this.render))}_createElement(){this.$el=n({tagName:"nav",className:"air-datepicker-nav"})}_getTitle(){let{dp:e,opts:t}=this,i=t.navTitles[e.currentView];return"function"==typeof i?i(e):e.formatDate(e.viewDate,i)}handleNavStatus(){let{disableNavWhenOutOfRange:e}=this.opts,{minDate:t,maxDate:s}=this.dp;if(!t&&!s||!e)return;let{year:a,month:n}=this.dp.parsedViewDate,r=!!t&&h(t),o=!!s&&h(s);switch(this.dp.currentView){case i.days:t&&r.month>=n&&r.year>=a&&this._disableNav("prev"),s&&o.month<=n&&o.year<=a&&this._disableNav("next");break;case i.months:t&&r.year>=a&&this._disableNav("prev"),s&&o.year<=a&&this._disableNav("next");break;case i.years:{let e=c(this.dp.viewDate);t&&r.year>=e[0]&&this._disableNav("prev"),s&&o.year<=e[1]&&this._disableNav("next");break}}}_disableNav(e){a('[data-action="'+e+'"]',this.$el).classList.add("-disabled-")}_resetNavStatus(){!function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s{e.classList.remove(...i)})):e.classList.remove(...i)}(this.$el.querySelectorAll(".air-datepicker-nav--action"),"-disabled-")}_buildBaseHtml(){let{prevHtml:e,nextHtml:t}=this.opts;this.$el.innerHTML=`
${e}
${t}
`}get isNavIsFunction(){let{navTitles:e}=this.opts;return Object.keys(e).find((t=>"function"==typeof e[t]))}}var x={today:{content:e=>e.locale.today,onClick:e=>e.setViewDate(new Date)},clear:{content:e=>e.locale.clear,onClick:e=>e.clear()}};class H{constructor(e){let{dp:t,opts:i}=e;this.dp=t,this.opts=i,this.init()}init(){this.createElement(),this.render()}createElement(){this.$el=n({className:"air-datepicker-buttons"})}destroy(){this.$el.parentNode.removeChild(this.$el)}clearHtml(){return this.$el.innerHTML="",this}generateButtons(){let{buttons:e}=this.opts;Array.isArray(e)||(e=[e]),e.forEach((e=>{let t=e;"string"==typeof e&&x[e]&&(t=x[e]);let i=this.createButton(t);t.onClick&&this.attachEventToButton(i,t.onClick),this.$el.appendChild(i)}))}attachEventToButton(e,t){e.addEventListener("click",(()=>{t(this.dp)}))}createButton(e){let{content:t,className:i,tagName:s="button",attrs:a={}}=e;return n({tagName:s,innerHtml:`${"function"==typeof t?t(this.dp):t}`,className:u("air-datepicker-button",i),attrs:a})}render(){this.generateButtons()}}function E(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class L{constructor(){let{opts:e,dp:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};E(this,"toggleTimepickerIsActive",(e=>{this.dp.timepickerIsActive=e})),E(this,"onChangeSelectedDate",(e=>{let{date:t,updateTime:i=!1}=e;t&&(this.setMinMaxTime(t),this.setCurrentTime(!!i&&t),this.addTimeToDate(t))})),E(this,"onChangeLastSelectedDate",(e=>{e&&(this.setTime(e),this.render())})),E(this,"onChangeInputRange",(e=>{let t=e.target;this[t.getAttribute("name")]=t.value,this.updateText(),this.dp.trigger(i.eventChangeTime,{hours:this.hours,minutes:this.minutes})})),E(this,"onMouseEnterLeave",(e=>{let t=e.target.getAttribute("name"),i=this.$minutesText;"hours"===t&&(i=this.$hoursText),i.classList.toggle("-focus-")})),E(this,"onFocus",(()=>{this.toggleTimepickerIsActive(!0)})),E(this,"onBlur",(()=>{this.toggleTimepickerIsActive(!1)})),this.opts=e,this.dp=t;let{timeFormat:s}=this.dp.locale;s&&(s.match(k("h"))||s.match(k("hh")))&&(this.ampm=!0),this.init()}init(){this.setTime(this.dp.lastSelectedDate||this.dp.viewDate),this.createElement(),this.buildHtml(),this.defineDOM(),this.render(),this.bindDatepickerEvents(),this.bindDOMEvents()}bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate)}bindDOMEvents(){let e="input";navigator.userAgent.match(/trident/gi)&&(e="change"),D(this.$ranges,e,this.onChangeInputRange),D(this.$ranges,"mouseenter",this.onMouseEnterLeave),D(this.$ranges,"mouseleave",this.onMouseEnterLeave),D(this.$ranges,"focus",this.onFocus),D(this.$ranges,"mousedown",this.onFocus),D(this.$ranges,"blur",this.onBlur)}createElement(){this.$el=n({className:u("air-datepicker-time",{"-am-pm-":this.dp.ampm})})}destroy(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate),this.$el.parentNode.removeChild(this.$el)}buildHtml(){let{ampm:e,hours:t,displayHours:i,minutes:s,minHours:a,minMinutes:n,maxHours:r,maxMinutes:o,dayPeriod:h,opts:{hoursStep:l,minutesStep:c}}=this;this.$el.innerHTML=`
${d(i)} : ${d(s)} `+(e?`${h}`:"")+'
'+`
`+`
`}defineDOM(){let e=e=>a(e,this.$el);this.$ranges=this.$el.querySelectorAll('[type="range"]'),this.$hours=e('[name="hours"]'),this.$minutes=e('[name="minutes"]'),this.$hoursText=e(".air-datepicker-time--current-hours"),this.$minutesText=e(".air-datepicker-time--current-minutes"),this.$ampm=e(".air-datepicker-time--current-ampm")}setTime(e){this.setMinMaxTime(e),this.setCurrentTime(e)}addTimeToDate(e){e&&(e.setHours(this.hours),e.setMinutes(this.minutes))}setMinMaxTime(e){if(this.setMinMaxTimeFromOptions(),e){let{minDate:t,maxDate:i}=this.dp;t&&p(e,t)&&this.setMinTimeFromMinDate(t),i&&p(e,i)&&this.setMaxTimeFromMaxDate(i)}}setCurrentTime(e){let{hours:t,minutes:i}=e?h(e):this;this.hours=f(t,this.minHours,this.maxHours),this.minutes=f(i,this.minMinutes,this.maxMinutes)}setMinMaxTimeFromOptions(){let{minHours:e,minMinutes:t,maxHours:i,maxMinutes:s}=this.opts;this.minHours=f(e,0,23),this.minMinutes=f(t,0,59),this.maxHours=f(i,0,23),this.maxMinutes=f(s,0,59)}setMinTimeFromMinDate(e){let{lastSelectedDate:t}=this.dp;this.minHours=e.getHours(),t&&t.getHours()>e.getHours()?this.minMinutes=this.opts.minMinutes:this.minMinutes=e.getMinutes()}setMaxTimeFromMaxDate(e){let{lastSelectedDate:t}=this.dp;this.maxHours=e.getHours(),t&&t.getHours()e.month++],[[["Control","ArrowLeft"],["Control","ArrowDown"]],e=>e.month--],[[["Shift","ArrowRight"],["Shift","ArrowUp"]],e=>e.year++],[[["Shift","ArrowLeft"],["Shift","ArrowDown"]],e=>e.year--],[[["Alt","ArrowRight"],["Alt","ArrowUp"]],e=>e.year+=10],[[["Alt","ArrowLeft"],["Alt","ArrowDown"]],e=>e.year-=10],[["Control","Shift","ArrowUp"],(e,t)=>t.up()]])),O(this,"handleHotKey",(e=>{let t=this.hotKeys.get(e),i=h(this.getInitialFocusDate());t(i,this.dp);let{year:s,month:a,date:n}=i,r=o(new Date(s,a));r{let e=!1,t=this.pressedKeys.size,i=e=>this.pressedKeys.has(e);for(let[s]of this.hotKeys){if(e)break;if(Array.isArray(s[0]))s.forEach((a=>{e||t!==a.length||(e=a.every(i)&&s)}));else{if(t!==s.length)continue;e=s.every(i)&&s}}return e})),O(this,"isArrow",(e=>e>=37&&e<=40)),O(this,"onKeyDown",(e=>{let{key:t,which:i}=e,{dp:s,dp:{focusDate:a},opts:n}=this;this.registerKey(t);let r=this.isHotKeyPressed();if(r)return e.preventDefault(),void this.handleHotKey(r);if(this.isArrow(i))return e.preventDefault(),void this.focusNextCell(t);if("Enter"===t){if(s.currentView!==n.minView)return void s.down();if(a){let e=s._checkIfDateIsSelected(a);return void(e?s._handleAlreadySelectedDates(e,a):s.selectDate(a))}}"Escape"===t&&this.dp.hide()})),O(this,"onKeyUp",(e=>{this.removeKey(e.key)})),this.dp=t,this.opts=i,this.init()}init(){this.bindKeyboardEvents()}bindKeyboardEvents(){let{$el:e}=this.dp;e.addEventListener("keydown",this.onKeyDown),e.addEventListener("keyup",this.onKeyUp)}destroy(){let{$el:e}=this.dp;e.removeEventListener("keydown",this.onKeyDown),e.removeEventListener("keyup",this.onKeyUp),this.hotKeys=null,this.pressedKeys=null}getInitialFocusDate(){let{focusDate:e,currentView:t,selectedDates:s,parsedViewDate:{year:a,month:n}}=this.dp,r=e||s[s.length-1];if(!r)switch(t){case i.days:r=new Date(a,n,(new Date).getDate());break;case i.months:r=new Date(a,n,1);break;case i.years:r=new Date(a,0,1)}return r}focusNextCell(e){let t=this.getInitialFocusDate(),{currentView:s}=this.dp,{days:a,months:n,years:r}=i,o=h(t),l=o.year,d=o.month,c=o.date;switch(e){case"ArrowLeft":s===a&&(c-=1),s===n&&(d-=1),s===r&&(l-=1);break;case"ArrowUp":s===a&&(c-=7),s===n&&(d-=3),s===r&&(l-=4);break;case"ArrowRight":s===a&&(c+=1),s===n&&(d+=1),s===r&&(l+=1);break;case"ArrowDown":s===a&&(c+=7),s===n&&(d+=3),s===r&&(l+=4)}let u=this.dp.getClampedDate(new Date(l,d,c));this.dp.setFocusDate(u,{viewDateTransition:!0})}registerKey(e){this.pressedKeys.add(e)}removeKey(e){this.pressedKeys.delete(e)}}let N={on(e,t){this.__events||(this.__events={}),this.__events[e]?this.__events[e].push(t):this.__events[e]=[t]},off(e,t){this.__events&&this.__events[e]&&(this.__events[e]=this.__events[e].filter((e=>e!==t)))},removeAllEvents(){this.__events={}},trigger(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s{e(...i)}))}};function I(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}let P="",j="",B=!1;class R{static buildGlobalContainer(e){B=!0,P=n({className:e,id:e}),a("body").appendChild(P)}constructor(e,t){var r=this;if(I(this,"viewIndexes",[i.days,i.months,i.years]),I(this,"next",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t+1,1));break;case i.months:this.setViewDate(new Date(e+1,t,1));break;case i.years:this.setViewDate(new Date(e+10,0,1))}})),I(this,"prev",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t-1,1));break;case i.months:this.setViewDate(new Date(e-1,t,1));break;case i.years:this.setViewDate(new Date(e-10,0,1))}})),I(this,"_finishHide",(()=>{this.hideAnimation=!1,this._destroyComponents(),this.$container.removeChild(this.$datepicker)})),I(this,"setPosition",(function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("function"==typeof(e=e||r.opts.position))return void(r.customHide=e({$datepicker:r.$datepicker,$target:r.$el,$pointer:r.$pointer,isViewChange:t,done:r._finishHide}));let i,s,{isMobile:a}=r.opts,n=r.$el.getBoundingClientRect(),o=r.$el.getBoundingClientRect(),h=r.$datepicker.offsetParent,l=r.$el.offsetParent,d=r.$datepicker.getBoundingClientRect(),c=e.split(" "),u=window.scrollY,p=window.scrollX,m=r.opts.offset,v=c[0],g=c[1];if(a)r.$datepicker.style.cssText="left: 50%; top: 50%";else{if(h===l&&h!==document.body&&(o={top:r.$el.offsetTop,left:r.$el.offsetLeft,width:n.width,height:r.$el.offsetHeight},u=0,p=0),h!==l&&h!==document.body){let e=h.getBoundingClientRect();o={top:n.top-e.top,left:n.left-e.left,width:n.width,height:n.height},u=0,p=0}switch(v){case"top":i=o.top-d.height-m;break;case"right":s=o.left+o.width+m;break;case"bottom":i=o.top+o.height+m;break;case"left":s=o.left-d.width-m}switch(g){case"top":i=o.top;break;case"right":s=o.left+o.width-d.width;break;case"bottom":i=o.top+o.height-d.height;break;case"left":s=o.left;break;case"center":/left|right/.test(v)?i=o.top+o.height/2-d.height/2:s=o.left+o.width/2-d.width/2}r.$datepicker.style.cssText=`left: ${s+p}px; top: ${i+u}px`}})),I(this,"_setInputValue",(()=>{let{opts:e,$altField:t,locale:{dateFormat:i}}=this,{altFieldDateFormat:s,altField:a}=e;a&&t&&(t.value=this._getInputValue(s)),this.$el.value=this._getInputValue(i)})),I(this,"_getInputValue",(e=>{let{selectedDates:t,opts:i}=this,{multipleDates:s,multipleDatesSeparator:a}=i;if(!t.length)return"";let n="function"==typeof e,r=n?e(s?t:t[0]):t.map((t=>this.formatDate(t,e)));return r=n?r:r.join(a),r})),I(this,"_checkIfDateIsSelected",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.days,s=!1;return r.selectedDates.some((i=>{let a=p(e,i,t);return s=a&&i,a})),s})),I(this,"_scheduleCallAfterTransition",(e=>{this._cancelScheduledCall(),e&&e(!1),this._onTransitionEnd=()=>{e&&e(!0)},this.$datepicker.addEventListener("transitionend",this._onTransitionEnd,{once:!0})})),I(this,"_cancelScheduledCall",(()=>{this.$datepicker.removeEventListener("transitionend",this._onTransitionEnd)})),I(this,"setViewDate",(e=>{if(!((e=b(e))instanceof Date))return;if(p(e,this.viewDate))return;let t=this.viewDate;this.viewDate=e;let{onChangeViewDate:s}=this.opts;if(s){let{month:e,year:t}=this.parsedViewDate;s({month:e,year:t,decade:this.curDecade})}this.trigger(i.eventChangeViewDate,e,t)})),I(this,"setFocusDate",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(!e||(e=b(e))instanceof Date)&&(r.focusDate=e,r.trigger(i.eventChangeFocusDate,e,t))})),I(this,"setCurrentView",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(r.viewIndexes.includes(e)){if(r.currentView=e,r.elIsInput&&r.visible&&r.setPosition(void 0,!0),r.trigger(i.eventChangeCurrentView,e),!r.views[e]){let t=r.views[e]=new T({dp:r,opts:r.opts,type:e});r.shouldUpdateDOM&&r.$content.appendChild(t.$el)}r.opts.onChangeView&&!t.silent&&r.opts.onChangeView(e)}})),I(this,"_updateLastSelectedDate",(e=>{this.lastSelectedDate=e,this.trigger(i.eventChangeLastSelectedDate,e)})),I(this,"destroy",(()=>{if(this.isDestroyed)return;let{showEvent:e,isMobile:t}=this.opts,i=this.$datepicker.parentNode;i&&i.removeChild(this.$datepicker),this.$el.removeEventListener(e,this._onFocus),this.$el.removeEventListener("blur",this._onBlur),window.removeEventListener("resize",this._onResize),t&&this._removeMobileAttributes(),this.keyboardNav&&this.keyboardNav.destroy(),this.views=null,this.nav=null,this.$datepicker=null,this.opts={},this.$customContainer=null,this.viewDate=null,this.focusDate=null,this.selectedDates=[],this.rangeDateFrom=null,this.rangeDateTo=null,this.isDestroyed=!0})),I(this,"update",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=w({},r.opts),{silent:a}=t;w(r.opts,e);let{timepicker:n,buttons:o,range:h,selectedDates:l,isMobile:d}=r.opts,c=r.visible||r.treatAsInline;r._createMinMaxDates(),r._limitViewDateByMaxMinDates(),r._handleLocale(),l&&(r.selectedDates=[],r.selectDate(l,{silent:a})),e.view&&r.setCurrentView(e.view,{silent:a}),r._setInputValue(),s.range&&!h?(r.rangeDateTo=!1,r.rangeDateFrom=!1):!s.range&&h&&r.selectedDates.length&&(r.rangeDateFrom=r.selectedDates[0],r.rangeDateTo=r.selectedDates[1]),s.timepicker&&!n?(c&&r.timepicker.destroy(),r.timepicker=!1,r.$timepicker.parentNode.removeChild(r.$timepicker)):!s.timepicker&&n&&r._addTimepicker(),!s.buttons&&o?r._addButtons():s.buttons&&!o?(r.buttons.destroy(),r.$buttons.parentNode.removeChild(r.$buttons)):c&&s.buttons&&o&&r.buttons.clearHtml().render(),!s.isMobile&&d?(r.treatAsInline||j||r._createMobileOverlay(),r._addMobileAttributes(),r.visible&&r._showMobileOverlay()):s.isMobile&&!d&&(r._removeMobileAttributes(),r.visible&&(j.classList.remove("-active-"),"function"!=typeof r.opts.position&&r.setPosition())),c&&(r.nav.update(),r.views[r.currentView].render(),r.currentView===i.days&&r.views[r.currentView].renderDayNames())})),I(this,"disableDate",((e,t)=>{(Array.isArray(e)?e:[e]).forEach((e=>{let i=b(e);if(!i)return;let s=t?"delete":"add";this.disabledDates[s](this.formatDate(i,"yyyy-MM-dd"));let a=this.getCell(i,this.currentViewSingular);a&&a.adpCell.render()}),[])})),I(this,"enableDate",(e=>{this.disableDate(e,!0)})),I(this,"isDateDisabled",(e=>{let t=b(e);return this.disabledDates.has(this.formatDate(t,"yyyy-MM-dd"))})),I(this,"isOtherMonth",(e=>{let{month:t}=h(e);return t!==this.parsedViewDate.month})),I(this,"isOtherYear",(e=>{let{year:t}=h(e);return t!==this.parsedViewDate.year})),I(this,"isOtherDecade",(e=>{let{year:t}=h(e),[i,s]=c(this.viewDate);return ts})),I(this,"_onChangeSelectedDate",(e=>{let{silent:t}=e;setTimeout((()=>{this._setInputValue(),this.opts.onSelect&&!t&&this._triggerOnSelect()}))})),I(this,"_onChangeFocusedDate",(function(e){let{viewDateTransition:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return;let i=!1;t&&(i=r.isOtherMonth(e)||r.isOtherYear(e)||r.isOtherDecade(e)),i&&r.setViewDate(e),r.opts.onFocus&&r.opts.onFocus({datepicker:r,date:e})})),I(this,"_onChangeTime",(e=>{let{hours:t,minutes:i}=e,s=new Date,{lastSelectedDate:a,opts:{onSelect:n}}=this,r=a;a||(r=s);let o=this.getCell(r,this.currentViewSingular),h=o&&o.adpCell;h&&h.isDisabled||(r.setHours(t),r.setMinutes(i),a?(this._setInputValue(),n&&this._triggerOnSelect()):this.selectDate(r))})),I(this,"_onFocus",(e=>{this.visible||this.show()})),I(this,"_onBlur",(e=>{this.inFocus||!this.visible||this.opts.isMobile||this.hide()})),I(this,"_onMouseDown",(e=>{this.inFocus=!0})),I(this,"_onMouseUp",(e=>{this.inFocus=!1,this.$el.focus()})),I(this,"_onResize",(()=>{this.visible&&"function"!=typeof this.opts.position&&this.setPosition()})),I(this,"_onClickOverlay",(()=>{this.visible&&this.hide()})),I(this,"getViewDates",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.days;return T.getDatesFunction(e)(r)})),I(this,"isWeekend",(e=>this.opts.weekends.includes(e))),I(this,"getClampedDate",(e=>{let{minDate:t,maxDate:i}=this,s=e;return i&&m(e,i)?s=i:t&&v(e,t)&&(s=t),s})),this.$el=a(e),!this.$el)return;this.$datepicker=n({className:"air-datepicker"}),this.opts=w({},s,t),this.$customContainer=!!this.opts.container&&a(this.opts.container),this.$altField=a(this.opts.altField||!1);let{view:o,startDate:l}=this.opts;l||(this.opts.startDate=new Date),"INPUT"===this.$el.nodeName&&(this.elIsInput=!0),this.inited=!1,this.visible=!1,this.viewDate=b(this.opts.startDate),this.focusDate=!1,this.initialReadonly=this.$el.getAttribute("readonly"),this.customHide=!1,this.currentView=o,this.selectedDates=[],this.disabledDates=new Set,this.isDestroyed=!1,this.views={},this.keys=[],this.rangeDateFrom="",this.rangeDateTo="",this.timepickerIsActive=!1,this.treatAsInline=this.opts.inline||!this.elIsInput,this.init()}init(){let{opts:e,treatAsInline:t,opts:{inline:i,isMobile:s,selectedDates:n,keyboardNav:r,onlyTimepicker:o}}=this,h=a("body");(!B||B&&P&&!h.contains(P))&&!i&&this.elIsInput&&!this.$customContainer&&R.buildGlobalContainer(R.defaultGlobalContainerId),!s||j||t||this._createMobileOverlay(),this._handleLocale(),this._bindSubEvents(),this._createMinMaxDates(),this._limitViewDateByMaxMinDates(),this.elIsInput&&(i||this._bindEvents(),r&&!o&&(this.keyboardNav=new A({dp:this,opts:e}))),n&&this.selectDate(n,{silent:!0}),this.opts.visible&&!t&&this.show(),s&&!t&&this.$el.setAttribute("readonly",!0),t&&this._createComponents()}_createMobileOverlay(){j=n({className:"air-datepicker-overlay"}),P.appendChild(j)}_createComponents(){let{opts:e,treatAsInline:t,opts:{inline:i,buttons:s,timepicker:a,position:n,classes:r,onlyTimepicker:o,isMobile:h}}=this;this._buildBaseHtml(),this.elIsInput&&(i||this._setPositionClasses(n)),!i&&this.elIsInput||this.$datepicker.classList.add("-inline-"),r&&this.$datepicker.classList.add(...r.split(" ")),o&&this.$datepicker.classList.add("-only-timepicker-"),h&&!t&&this._addMobileAttributes(),this.views[this.currentView]=new T({dp:this,type:this.currentView,opts:e}),this.nav=new V({dp:this,opts:e}),a&&this._addTimepicker(),s&&this._addButtons(),this.$content.appendChild(this.views[this.currentView].$el),this.$nav.appendChild(this.nav.$el)}_destroyComponents(){for(let e in this.views)this.views[e].destroy();this.views={},this.nav.destroy(),this.timepicker&&this.timepicker.destroy()}_addMobileAttributes(){j.addEventListener("click",this._onClickOverlay),this.$datepicker.classList.add("-is-mobile-"),this.$el.setAttribute("readonly",!0)}_removeMobileAttributes(){j.removeEventListener("click",this._onClickOverlay),this.$datepicker.classList.remove("-is-mobile-"),this.initialReadonly||""===this.initialReadonly||this.$el.removeAttribute("readonly")}_createMinMaxDates(){let{minDate:e,maxDate:t}=this.opts;this.minDate=!!e&&b(e),this.maxDate=!!t&&b(t)}_addTimepicker(){this.$timepicker=n({className:"air-datepicker--time"}),this.$datepicker.appendChild(this.$timepicker),this.timepicker=new L({dp:this,opts:this.opts}),this.$timepicker.appendChild(this.timepicker.$el)}_addButtons(){this.$buttons=n({className:"air-datepicker--buttons"}),this.$datepicker.appendChild(this.$buttons),this.buttons=new H({dp:this,opts:this.opts}),this.$buttons.appendChild(this.buttons.$el)}_bindSubEvents(){this.on(i.eventChangeSelectedDate,this._onChangeSelectedDate),this.on(i.eventChangeFocusDate,this._onChangeFocusedDate),this.on(i.eventChangeTime,this._onChangeTime)}_buildBaseHtml(){let{inline:e}=this.opts;var t,i;this.elIsInput?e?(t=this.$datepicker,(i=this.$el).parentNode.insertBefore(t,i.nextSibling)):this.$container.appendChild(this.$datepicker):this.$el.appendChild(this.$datepicker),this.$datepicker.innerHTML='
',this.$content=a(".air-datepicker--content",this.$datepicker),this.$pointer=a(".air-datepicker--pointer",this.$datepicker),this.$nav=a(".air-datepicker--navigation",this.$datepicker)}_handleLocale(){let{locale:e,dateFormat:t,firstDay:i,timepicker:s,onlyTimepicker:a,timeFormat:n,dateTimeSeparator:r}=this.opts;var o;this.locale=(o=e,JSON.parse(JSON.stringify(o))),t&&(this.locale.dateFormat=t),void 0!==n&&""!==n&&(this.locale.timeFormat=n);let{timeFormat:h}=this.locale;if(""!==i&&(this.locale.firstDay=i),s&&"function"!=typeof t){let e=h?r:"";this.locale.dateFormat=[this.locale.dateFormat,h||""].join(e)}a&&"function"!=typeof t&&(this.locale.dateFormat=this.locale.timeFormat)}_setPositionClasses(e){if("function"==typeof e)return void this.$datepicker.classList.add("-custom-position-");let t=(e=e.split(" "))[0],i=`air-datepicker -${t}-${e[1]}- -from-${t}-`;this.$datepicker.classList.add(...i.split(" "))}_bindEvents(){this.$el.addEventListener(this.opts.showEvent,this._onFocus),this.$el.addEventListener("blur",this._onBlur),this.$datepicker.addEventListener("mousedown",this._onMouseDown),this.$datepicker.addEventListener("mouseup",this._onMouseUp),window.addEventListener("resize",this._onResize)}_limitViewDateByMaxMinDates(){let{viewDate:e,minDate:t,maxDate:i}=this;i&&m(e,i)&&this.setViewDate(i),t&&v(e,t)&&this.setViewDate(t)}formatDate(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.viewDate,t=arguments.length>1?arguments[1]:void 0;if(e=b(e),!(e instanceof Date))return;let i=t,s=this.locale,a=h(e),n=a.dayPeriod,r=c(e),o=R.replacer,l={T:e.getTime(),m:a.minutes,mm:a.fullMinutes,h:a.hours12,hh:a.fullHours12,H:a.hours,HH:a.fullHours,aa:n,AA:n.toUpperCase(),E:s.daysShort[a.day],EEEE:s.days[a.day],d:a.date,dd:a.fullDate,M:a.month+1,MM:a.fullMonth,MMM:s.monthsShort[a.month],MMMM:s.months[a.month],yy:a.year.toString().slice(-2),yyyy:a.year,yyyy1:r[0],yyyy2:r[1]};for(let[e,t]of Object.entries(l))i=o(i,k(e),t);return i}down(e){this._handleUpDownActions(e,"down")}up(e){this._handleUpDownActions(e,"up")}selectDate(e){let t,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{currentView:a,parsedViewDate:n,selectedDates:r}=this,{updateTime:o}=s,{moveToOtherMonthsOnSelect:h,moveToOtherYearsOnSelect:l,multipleDates:d,range:c,autoClose:u,onBeforeSelect:p}=this.opts,v=r.length;if(Array.isArray(e))return e.forEach((e=>{this.selectDate(e,s)})),new Promise((e=>{setTimeout(e)}));if((e=b(e))instanceof Date){if(p&&!p({date:e,datepicker:this}))return Promise.resolve();if(a===i.days&&e.getMonth()!==n.month&&h&&(t=new Date(e.getFullYear(),e.getMonth(),1)),a===i.years&&e.getFullYear()!==n.year&&l&&(t=new Date(e.getFullYear(),0,1)),t&&this.setViewDate(t),d&&!c){if(v===d)return;this._checkIfDateIsSelected(e)||r.push(e)}else if(c)switch(v){case 1:r.push(e),this.rangeDateTo||(this.rangeDateTo=e),m(this.rangeDateFrom,this.rangeDateTo)&&(this.rangeDateTo=this.rangeDateFrom,this.rangeDateFrom=e),this.selectedDates=[this.rangeDateFrom,this.rangeDateTo];break;case 2:this.selectedDates=[e],this.rangeDateFrom=e,this.rangeDateTo="";break;default:this.selectedDates=[e],this.rangeDateFrom=e}else this.selectedDates=[e];return this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,silent:null==s?void 0:s.silent,date:e,updateTime:o}),this._updateLastSelectedDate(e),u&&!this.timepickerIsActive&&this.visible&&(d||c?c&&1===v&&this.hide():this.hide()),new Promise((e=>{setTimeout(e)}))}}unselectDate(e){let t=this.selectedDates,s=this;if((e=b(e))instanceof Date)return t.some(((a,n)=>{if(p(a,e))return t.splice(n,1),s.selectedDates.length?(s.rangeDateTo="",s.rangeDateFrom=t[0],s._updateLastSelectedDate(s.selectedDates[s.selectedDates.length-1])):(s.rangeDateFrom="",s.rangeDateTo="",s._updateLastSelectedDate(!1)),this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,date:e}),!0}))}replaceDate(e,t){let s=this.selectedDates.find((t=>p(t,e,this.currentView))),a=this.selectedDates.indexOf(s);a<0||p(this.selectedDates[a],t,this.currentView)||(this.selectedDates[a]=t,this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,date:t,updateTime:!0}),this._updateLastSelectedDate(t))}clear(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.selectedDates=[],this.rangeDateFrom=!1,this.rangeDateTo=!1,this.lastSelectedDate=!1,this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,silent:e.silent}),new Promise((e=>{setTimeout(e)}))}show(){let{onShow:e,isMobile:t}=this.opts;this._cancelScheduledCall(),this.visible||this.hideAnimation||this._createComponents(),this.setPosition(this.opts.position),this.$datepicker.classList.add("-active-"),this.visible=!0,e&&this._scheduleCallAfterTransition(e),t&&this._showMobileOverlay()}hide(){let{onHide:e,isMobile:t}=this.opts,i=this._hasTransition();this.visible=!1,this.hideAnimation=!0,this.$datepicker.classList.remove("-active-"),this.customHide&&this.customHide(),this.elIsInput&&this.$el.blur(),this._scheduleCallAfterTransition((t=>{!this.customHide&&(t&&i||!t&&!i)&&this._finishHide(),e&&e(t)})),t&&j.classList.remove("-active-")}_triggerOnSelect(){let e=[],t=[],{selectedDates:i,locale:s,opts:{onSelect:a,multipleDates:n,range:r}}=this,o=n||r,h="function"==typeof s.dateFormat;i.length&&(e=i.map(g),t=h?n?s.dateFormat(e):e.map((e=>s.dateFormat(e))):e.map((e=>this.formatDate(e,s.dateFormat)))),a({date:o?e:e[0],formattedDate:o?t:t[0],datepicker:this})}_handleAlreadySelectedDates(e,t){let{selectedDates:i,rangeDateFrom:s,rangeDateTo:a}=this,{range:n,toggleSelected:r}=this.opts,o=i.length,h="function"==typeof r?r({datepicker:this,date:t}):r,l=Boolean(n&&1===o&&e),d=l?g(t):t;n&&!h&&(2!==o&&this.selectDate(d),2===o&&p(s,a))||(h?this.unselectDate(d):this._updateLastSelectedDate(l?d:e))}_handleUpDownActions(e,t){if(!((e=b(e||this.focusDate||this.viewDate))instanceof Date))return;let i="up"===t?this.viewIndex+1:this.viewIndex-1;i>2&&(i=2),i<0&&(i=0),this.setViewDate(new Date(e.getFullYear(),e.getMonth(),1)),this.setCurrentView(this.viewIndexes[i])}getCell(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.day;if(!((e=b(e))instanceof Date))return;let{year:s,month:a,date:n}=h(e),r=`[data-year="${s}"]`,o=`[data-month="${a}"]`,l={[i.day]:`${r}${o}[data-date="${n}"]`,[i.month]:`${r}${o}`,[i.year]:`${r}`};return this.views[this.currentView]?this.views[this.currentView].$el.querySelector(l[t]):void 0}_showMobileOverlay(){j.classList.add("-active-")}_hasTransition(){return window.getComputedStyle(this.$datepicker).getPropertyValue("transition-duration").split(", ").reduce(((e,t)=>parseFloat(t)+e),0)>0}get shouldUpdateDOM(){return this.visible||this.treatAsInline}get parsedViewDate(){return h(this.viewDate)}get currentViewSingular(){return this.currentView.slice(0,-1)}get curDecade(){return c(this.viewDate)}get viewIndex(){return this.viewIndexes.indexOf(this.currentView)}get isFinalView(){return this.currentView===i.years}get hasSelectedDates(){return this.selectedDates.length>0}get isMinViewReached(){return this.currentView===this.opts.minView||this.currentView===i.days}get $container(){return this.$customContainer||P}static replacer(e,t,i){return e.replace(t,(function(e,t,s,a){return t+i+a}))}}var K;return I(R,"defaults",s),I(R,"version","3.5.3"),I(R,"defaultGlobalContainerId","air-datepicker-global-container"),K=R.prototype,Object.assign(K,N),t.default}()})); \ No newline at end of file +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.AirDatepicker=t():e.AirDatepicker=t()}(this,(function(){return function(){"use strict";var e={d:function(t,i){for(var s in i)e.o(i,s)&&!e.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:i[s]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return R}});var i={days:"days",months:"months",years:"years",day:"day",month:"month",year:"year",eventChangeViewDate:"changeViewDate",eventChangeCurrentView:"changeCurrentView",eventChangeFocusDate:"changeFocusDate",eventChangeSelectedDate:"changeSelectedDate",eventChangeTime:"changeTime",eventChangeLastSelectedDate:"changeLastSelectedDate",actionSelectDate:"selectDate",actionUnselectDate:"unselectDate",cssClassWeekend:"-weekend-"},s={classes:"",inline:!1,locale:{days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],daysShort:["Вос","Пон","Вто","Сре","Чет","Пят","Суб"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",clear:"Очистить",dateFormat:"dd.MM.yyyy",timeFormat:"HH:mm",firstDay:1},startDate:new Date,firstDay:"",weekends:[6,0],dateFormat:"",altField:"",altFieldDateFormat:"T",toggleSelected:!0,keyboardNav:!0,selectedDates:!1,container:"",isMobile:!1,visible:!1,position:"bottom left",offset:12,view:i.days,minView:i.days,showOtherMonths:!0,selectOtherMonths:!0,moveToOtherMonthsOnSelect:!0,showOtherYears:!0,selectOtherYears:!0,moveToOtherYearsOnSelect:!0,minDate:"",maxDate:"",disableNavWhenOutOfRange:!0,multipleDates:!1,multipleDatesSeparator:", ",range:!1,dynamicRange:!0,buttons:!1,monthsField:"monthsShort",showEvent:"focus",autoClose:!1,fixedHeight:!1,prevHtml:'',nextHtml:'',navTitles:{days:"MMMM, yyyy",months:"yyyy",years:"yyyy1 - yyyy2"},timepicker:!1,onlyTimepicker:!1,dateTimeSeparator:" ",timeFormat:"",minHours:0,maxHours:24,minMinutes:0,maxMinutes:59,hoursStep:1,minutesStep:1,onSelect:!1,onChangeViewDate:!1,onChangeView:!1,onRenderCell:!1,onShow:!1,onHide:!1,onClickDayName:!1};function a(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:document;return"string"==typeof e?t.querySelector(e):e}function n(){let{tagName:e="div",className:t="",innerHtml:i="",id:s="",attrs:a={}}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=document.createElement(e);return t&&n.classList.add(...t.split(" ")),s&&(n.id=s),i&&(n.innerHTML=i),a&&r(n,a),n}function r(e,t){for(let[i,s]of Object.entries(t))void 0!==s&&e.setAttribute(i,s);return e}function o(e){return new Date(e.getFullYear(),e.getMonth()+1,0).getDate()}function h(e){let t=e.getHours(),{hours:i,dayPeriod:s}=l(t);return{year:e.getFullYear(),month:e.getMonth(),fullMonth:e.getMonth()+1<10?"0"+(e.getMonth()+1):e.getMonth()+1,date:e.getDate(),fullDate:e.getDate()<10?"0"+e.getDate():e.getDate(),day:e.getDay(),hours:t,fullHours:d(t),hours12:i,dayPeriod:s,fullHours12:d(i),minutes:e.getMinutes(),fullMinutes:e.getMinutes()<10?"0"+e.getMinutes():e.getMinutes()}}function l(e){return{dayPeriod:e>11?"pm":"am",hours:e%12==0?12:e%12}}function d(e){return e<10?"0"+e:e}function c(e){let t=10*Math.floor(e.getFullYear()/10);return[t,t+9]}function u(){let e=[];for(var t=arguments.length,i=new Array(t),s=0;s{if("object"==typeof t)for(let i in t)t[i]&&e.push(i);else t&&e.push(t)})),e.join(" ")}function p(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:i.days;if(!e||!t)return!1;let a=h(e),n=h(t);return{[i.days]:a.date===n.date&&a.month===n.month&&a.year===n.year,[i.months]:a.month===n.month&&a.year===n.year,[i.years]:a.year===n.year}[s]}function m(e,t,i){let s=g(e,!1).getTime(),a=g(t,!1).getTime();return i?s>=a:s>a}function v(e,t){return!m(e,t,!0)}function g(e){let t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1],i=new Date(e.getTime());return"boolean"!=typeof t||t||function(e){e.setHours(0,0,0,0)}(i),i}function D(e,t,i){e.length?e.forEach((e=>{e.addEventListener(t,i)})):e.addEventListener(t,i)}function y(e,t){return!(!e||e===document||e instanceof DocumentFragment)&&(e.matches(t)?e:y(e.parentNode,t))}function f(e,t,i){return e>i?i:e1?t-1:0),s=1;se)).forEach((t=>{for(let[i,s]of Object.entries(t))if(void 0!==s&&"[object Object]"===s.toString()){let t=void 0!==e[i]?e[i].toString():void 0,a=s.toString(),n=Array.isArray(s)?[]:{};e[i]=e[i]?t!==a?n:e[i]:n,w(e[i],s)}else e[i]=s})),e}function b(e){let t=e;return e instanceof Date||("string"==typeof e&&/^\d{4}-\d{2}-\d{2}$/.test(e)&&(e+="T00:00:00"),t=new Date(e)),isNaN(t.getTime())&&(console.log(`Unable to convert value "${e}" to Date object`),t=!1),t}function k(e){let t="\\s|\\.|-|/|\\\\|,|\\$|\\!|\\?|:|;";return new RegExp("(^|>|"+t+")("+e+")($|<|"+t+")","g")}function $(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class C{constructor(){let{type:e,date:t,dp:i,opts:s,body:a}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};$(this,"focus",(()=>{this.$cell.classList.add("-focus-"),this.focused=!0})),$(this,"removeFocus",(()=>{this.$cell.classList.remove("-focus-"),this.focused=!1})),$(this,"select",(()=>{this.$cell.classList.add("-selected-"),this.selected=!0})),$(this,"removeSelect",(()=>{this.$cell.classList.remove("-selected-","-range-from-","-range-to-"),this.selected=!1})),$(this,"onChangeSelectedDate",(()=>{this.isDisabled||(this._handleSelectedStatus(),this.opts.range&&this._handleRangeStatus())})),$(this,"onChangeFocusDate",(e=>{if(!e)return void(this.focused&&this.removeFocus());let t=p(e,this.date,this.type);t?this.focus():!t&&this.focused&&this.removeFocus(),this.opts.range&&this._handleRangeStatus()})),$(this,"render",(()=>(this.$cell.innerHTML=this._getHtml(),this._handleClasses(),this.$cell))),this.type=e,this.singleType=this.type.slice(0,-1),this.date=t,this.dp=i,this.opts=s,this.body=a,this.customData=!1,this.init()}init(){var e;let{onRenderCell:t}=this.opts;t&&(this.customData=t({date:this.date,cellType:this.singleType,datepicker:this.dp})),this._createElement(),this._bindDatepickerEvents(),null!==(e=this.customData)&&void 0!==e&&e.disabled&&this.dp.disableDate(this.date)}_bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeFocusDate,this.onChangeFocusDate)}unbindDatepickerEvents(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeFocusDate,this.onChangeFocusDate)}_createElement(){var e;let{year:t,month:i,date:s}=h(this.date),a=(null===(e=this.customData)||void 0===e?void 0:e.attrs)||{};this.$cell=n({attrs:{"data-year":t,"data-month":i,"data-date":s,...a}}),this.$cell.adpCell=this}_getClassName(){var e;let t=new Date,{selectOtherMonths:s,selectOtherYears:a}=this.opts,{minDate:n,maxDate:r,isDateDisabled:o}=this.dp,{day:l}=h(this.date),d=this._isOutOfMinMaxRange(),c=o(this.date),m=u("air-datepicker-cell",`-${this.singleType}-`,{"-current-":p(t,this.date,this.type),"-min-date-":n&&p(n,this.date,this.type),"-max-date-":r&&p(r,this.date,this.type)}),v="";switch(this.type){case i.days:v=u({"-weekend-":this.dp.isWeekend(l),"-other-month-":this.isOtherMonth,"-disabled-":this.isOtherMonth&&!s||d||c});break;case i.months:v=u({"-disabled-":d});break;case i.years:v=u({"-other-decade-":this.isOtherDecade,"-disabled-":d||this.isOtherDecade&&!a})}return u(m,v,null===(e=this.customData)||void 0===e?void 0:e.classes).split(" ")}_getHtml(){var e;let{year:t,month:s,date:a}=h(this.date),{showOtherMonths:n,showOtherYears:r}=this.opts;if(null!==(e=this.customData)&&void 0!==e&&e.html)return this.customData.html;switch(this.type){case i.days:return!n&&this.isOtherMonth?"":a;case i.months:return this.dp.locale[this.opts.monthsField][s];case i.years:return!r&&this.isOtherDecade?"":t}}_isOutOfMinMaxRange(){let{minDate:e,maxDate:t}=this.dp,{type:s,date:a}=this,{month:n,year:r,date:o}=h(a),l=s===i.days,d=s===i.years,c=!!e&&new Date(r,d?e.getMonth():n,l?o:e.getDate()),u=!!t&&new Date(r,d?t.getMonth():n,l?o:t.getDate());return e&&t?v(c,e)||m(u,t):e?v(c,e):t?m(u,t):void 0}destroy(){this.unbindDatepickerEvents()}_handleRangeStatus(){const{selectedDates:e,focusDate:t,rangeDateTo:i,rangeDateFrom:s}=this.dp,a=e.length;if(!a)return;let n=s,r=i;if(1===a&&t){const i=m(t,e[0]);n=i?e[0]:t,r=i?t:e[0]}let o=u({"-in-range-":n&&r&&(h=this.date,l=n,d=r,m(h,l)&&v(h,d)),"-range-from-":n&&p(this.date,n,this.type),"-range-to-":r&&p(this.date,r,this.type)});var h,l,d;this.$cell.classList.remove("-range-from-","-range-to-","-in-range-"),o&&this.$cell.classList.add(...o.split(" "))}_handleSelectedStatus(){let e=this.dp._checkIfDateIsSelected(this.date,this.type);e?this.select():!e&&this.selected&&this.removeSelect()}_handleInitialFocusStatus(){p(this.dp.focusDate,this.date,this.type)&&this.focus()}_handleClasses(){this.$cell.setAttribute("class",""),this._handleInitialFocusStatus(),this.dp.hasSelectedDates&&(this._handleSelectedStatus(),this.dp.opts.range&&this._handleRangeStatus()),this.$cell.classList.add(...this._getClassName())}get isDisabled(){return this.$cell.matches(".-disabled-")}get isOtherMonth(){return this.dp.isOtherMonth(this.date)}get isOtherDecade(){return this.dp.isOtherDecade(this.date)}}function _(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}let M={[i.days]:`
`,[i.months]:`
`,[i.years]:`
`};const S=".air-datepicker-cell";class T{constructor(e){let{dp:t,type:s,opts:a}=e;_(this,"handleClick",(e=>{let t=e.target.closest(S).adpCell;if(t.isDisabled)return;if(!this.dp.isMinViewReached)return void this.dp.down();let i=this.dp._checkIfDateIsSelected(t.date,t.type);i?this.dp._handleAlreadySelectedDates(i,t.date):this.dp.selectDate(t.date)})),_(this,"handleDayNameClick",(e=>{let t=e.target.getAttribute("data-day-index");this.opts.onClickDayName({dayIndex:Number(t),datepicker:this.dp})})),_(this,"onChangeCurrentView",(e=>{e!==this.type?this.hide():(this.show(),this.render())})),_(this,"onMouseOverCell",(e=>{let t=y(e.target,S);this.dp.setFocusDate(!!t&&t.adpCell.date)})),_(this,"onMouseOutCell",(()=>{this.dp.setFocusDate(!1)})),_(this,"onClickBody",(e=>{let{onClickDayName:t}=this.opts,i=e.target;i.closest(S)&&this.handleClick(e),t&&i.closest(".air-datepicker-body--day-name")&&this.handleDayNameClick(e)})),_(this,"onMouseDown",(e=>{this.pressed=!0;let t=y(e.target,S),i=t&&t.adpCell;p(i.date,this.dp.rangeDateFrom)&&(this.rangeFromFocused=!0),p(i.date,this.dp.rangeDateTo)&&(this.rangeToFocused=!0)})),_(this,"onMouseMove",(e=>{if(!this.pressed||!this.dp.isMinViewReached)return;e.preventDefault();let t=y(e.target,S),i=t&&t.adpCell,{selectedDates:s,rangeDateTo:a,rangeDateFrom:n}=this.dp;if(!i||i.isDisabled)return;let{date:r}=i;if(2===s.length){if(this.rangeFromFocused&&!m(r,a)){let{hours:e,minutes:t}=h(n);r.setHours(e),r.setMinutes(t),this.dp.rangeDateFrom=r,this.dp.replaceDate(n,r)}if(this.rangeToFocused&&!v(r,n)){let{hours:e,minutes:t}=h(a);r.setHours(e),r.setMinutes(t),this.dp.rangeDateTo=r,this.dp.replaceDate(a,r)}}})),_(this,"onMouseUp",(()=>{this.pressed=!1,this.rangeFromFocused=!1,this.rangeToFocused=!1})),_(this,"onChangeViewDate",((e,t)=>{if(!this.isVisible)return;let s=c(e),a=c(t);switch(this.dp.currentView){case i.days:if(p(e,t,i.months))return;break;case i.months:if(p(e,t,i.years))return;break;case i.years:if(s[0]===a[0]&&s[1]===a[1])return}this.render()})),_(this,"render",(()=>{this.destroyCells(),this._generateCells(),this.cells.forEach((e=>{this.$cells.appendChild(e.render())}))})),this.dp=t,this.type=s,this.opts=a,this.cells=[],this.$el="",this.pressed=!1,this.isVisible=!0,this.init()}init(){this._buildBaseHtml(),this.type===i.days&&this.renderDayNames(),this.render(),this._bindEvents(),this._bindDatepickerEvents()}_bindEvents(){let{range:e,dynamicRange:t}=this.opts;D(this.$el,"mouseover",this.onMouseOverCell),D(this.$el,"mouseout",this.onMouseOutCell),D(this.$el,"click",this.onClickBody),e&&t&&(D(this.$el,"mousedown",this.onMouseDown),D(this.$el,"mousemove",this.onMouseMove),D(window.document,"mouseup",this.onMouseUp))}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView)}_buildBaseHtml(){this.$el=n({className:`air-datepicker-body -${this.type}-`,innerHtml:M[this.type]}),this.$names=a(".air-datepicker-body--day-names",this.$el),this.$cells=a(".air-datepicker-body--cells",this.$el)}_getDayNamesHtml(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.dp.locale.firstDay,t="",s=this.dp.isWeekend,{onClickDayName:a}=this.opts,n=e,r=0;for(;r<7;){let e=n%7;t+=`
${this.dp.locale.daysMin[e]}
`,r++,n++}return t}renderDayNames(){this.$names.innerHTML=this._getDayNamesHtml()}_generateCell(e){let{type:t,dp:i,opts:s}=this;return new C({type:t,dp:i,opts:s,date:e,body:this})}_generateCells(){T.getDatesFunction(this.type)(this.dp,(e=>{this.cells.push(this._generateCell(e))}))}show(){this.isVisible=!0,this.$el.classList.remove("-hidden-")}hide(){this.isVisible=!1,this.$el.classList.add("-hidden-")}destroyCells(){this.cells.forEach((e=>e.destroy())),this.cells=[],this.$cells.innerHTML=""}destroy(){this.destroyCells(),this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView)}static getDaysDates(e,t){let{viewDate:i,opts:{fixedHeight:s},locale:{firstDay:a}}=e,n=o(i),{year:r,month:l}=h(i),d=new Date(r,l,1),c=new Date(r,l,n),u=d.getDay()-a,p=6-c.getDay()+a;u=u<0?u+7:u,p=p>6?p-7:p;let m=function(e,t){let{year:i,month:s,date:a}=h(e);return new Date(i,s,a-t)}(d,u),v=n+u+p,g=m.getDate(),{year:D,month:y}=h(m),f=0;s&&(v=42);const w=[];for(;f0&&void 0!==arguments[0]?arguments[0]:i.days;return{[i.days]:T.getDaysDates,[i.months]:T.getMonthsDates,[i.years]:T.getYearsDates}[e]}}function F(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class V{constructor(e){let{dp:t,opts:i}=e;F(this,"onClickNav",(e=>{let t=y(e.target,".air-datepicker-nav--action");if(!t)return;let i=t.dataset.action;this.dp[i]()})),F(this,"onChangeViewDate",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus()})),F(this,"onChangeCurrentView",(()=>{this.render(),this._resetNavStatus(),this.handleNavStatus()})),F(this,"onClickNavTitle",(()=>{this.dp.isFinalView||this.dp.up()})),F(this,"update",(()=>{let{prevHtml:e,nextHtml:t}=this.opts;this.$prev.innerHTML=e,this.$next.innerHTML=t,this._resetNavStatus(),this.render(),this.handleNavStatus()})),F(this,"renderDelay",(()=>{setTimeout(this.render)})),F(this,"render",(()=>{this.$title.innerHTML=this._getTitle(),function(e,t){for(let i in t)t[i]?e.classList.add(i):e.classList.remove(i)}(this.$title,{"-disabled-":this.dp.isFinalView})})),this.dp=t,this.opts=i,this.init()}init(){this._createElement(),this._buildBaseHtml(),this._defineDOM(),this.render(),this.handleNavStatus(),this._bindEvents(),this._bindDatepickerEvents()}_defineDOM(){this.$title=a(".air-datepicker-nav--title",this.$el),this.$prev=a('[data-action="prev"]',this.$el),this.$next=a('[data-action="next"]',this.$el)}_bindEvents(){this.$el.addEventListener("click",this.onClickNav),this.$title.addEventListener("click",this.onClickNavTitle)}_bindDatepickerEvents(){this.dp.on(i.eventChangeViewDate,this.onChangeViewDate),this.dp.on(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.on(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.on(i.eventChangeTime,this.render))}destroy(){this.dp.off(i.eventChangeViewDate,this.onChangeViewDate),this.dp.off(i.eventChangeCurrentView,this.onChangeCurrentView),this.isNavIsFunction&&(this.dp.off(i.eventChangeSelectedDate,this.renderDelay),this.dp.opts.timepicker&&this.dp.off(i.eventChangeTime,this.render))}_createElement(){this.$el=n({tagName:"nav",className:"air-datepicker-nav"})}_getTitle(){let{dp:e,opts:t}=this,i=t.navTitles[e.currentView];return"function"==typeof i?i(e):e.formatDate(e.viewDate,i)}handleNavStatus(){let{disableNavWhenOutOfRange:e}=this.opts,{minDate:t,maxDate:s}=this.dp;if(!t&&!s||!e)return;let{year:a,month:n}=this.dp.parsedViewDate,r=!!t&&h(t),o=!!s&&h(s);switch(this.dp.currentView){case i.days:t&&r.month>=n&&r.year>=a&&this._disableNav("prev"),s&&o.month<=n&&o.year<=a&&this._disableNav("next");break;case i.months:t&&r.year>=a&&this._disableNav("prev"),s&&o.year<=a&&this._disableNav("next");break;case i.years:{let e=c(this.dp.viewDate);t&&r.year>=e[0]&&this._disableNav("prev"),s&&o.year<=e[1]&&this._disableNav("next");break}}}_disableNav(e){a('[data-action="'+e+'"]',this.$el).classList.add("-disabled-")}_resetNavStatus(){!function(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s{e.classList.remove(...i)})):e.classList.remove(...i)}(this.$el.querySelectorAll(".air-datepicker-nav--action"),"-disabled-")}_buildBaseHtml(){let{prevHtml:e,nextHtml:t}=this.opts;this.$el.innerHTML=`
${e}
${t}
`}get isNavIsFunction(){let{navTitles:e}=this.opts;return Object.keys(e).find((t=>"function"==typeof e[t]))}}var x={today:{content:e=>e.locale.today,onClick:e=>e.setViewDate(new Date)},clear:{content:e=>e.locale.clear,onClick:e=>e.clear()}};class H{constructor(e){let{dp:t,opts:i}=e;this.dp=t,this.opts=i,this.init()}init(){this.createElement(),this.render()}createElement(){this.$el=n({className:"air-datepicker-buttons"})}destroy(){this.$el.parentNode.removeChild(this.$el)}clearHtml(){return this.$el.innerHTML="",this}generateButtons(){let{buttons:e}=this.opts;Array.isArray(e)||(e=[e]),e.forEach((e=>{let t=e;"string"==typeof e&&x[e]&&(t=x[e]);let i=this.createButton(t);t.onClick&&this.attachEventToButton(i,t.onClick),this.$el.appendChild(i)}))}attachEventToButton(e,t){e.addEventListener("click",(()=>{t(this.dp)}))}createButton(e){let{content:t,className:i,tagName:s="button",attrs:a={}}=e;return n({tagName:s,innerHtml:`${"function"==typeof t?t(this.dp):t}`,className:u("air-datepicker-button",i),attrs:a})}render(){this.generateButtons()}}function E(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}class L{constructor(){let{opts:e,dp:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};E(this,"toggleTimepickerIsActive",(e=>{this.dp.timepickerIsActive=e})),E(this,"onChangeSelectedDate",(e=>{let{date:t,updateTime:i=!1}=e;t&&(this.setMinMaxTime(t),this.setCurrentTime(!!i&&t),this.addTimeToDate(t))})),E(this,"onChangeLastSelectedDate",(e=>{e&&(this.setTime(e),this.render())})),E(this,"onChangeInputRange",(e=>{let t=e.target;this[t.getAttribute("name")]=t.value,this.updateText(),this.dp.trigger(i.eventChangeTime,{hours:this.hours,minutes:this.minutes})})),E(this,"onMouseEnterLeave",(e=>{let t=e.target.getAttribute("name"),i=this.$minutesText;"hours"===t&&(i=this.$hoursText),i.classList.toggle("-focus-")})),E(this,"onFocus",(()=>{this.toggleTimepickerIsActive(!0)})),E(this,"onBlur",(()=>{this.toggleTimepickerIsActive(!1)})),this.opts=e,this.dp=t;let{timeFormat:s}=this.dp.locale;s&&(s.match(k("h"))||s.match(k("hh")))&&(this.ampm=!0),this.init()}init(){this.setTime(this.dp.lastSelectedDate||this.dp.viewDate),this.createElement(),this.buildHtml(),this.defineDOM(),this.render(),this.bindDatepickerEvents(),this.bindDOMEvents()}bindDatepickerEvents(){this.dp.on(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.on(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate)}bindDOMEvents(){let e="input";navigator.userAgent.match(/trident/gi)&&(e="change"),D(this.$ranges,e,this.onChangeInputRange),D(this.$ranges,"mouseenter",this.onMouseEnterLeave),D(this.$ranges,"mouseleave",this.onMouseEnterLeave),D(this.$ranges,"focus",this.onFocus),D(this.$ranges,"mousedown",this.onFocus),D(this.$ranges,"blur",this.onBlur)}createElement(){this.$el=n({className:u("air-datepicker-time",{"-am-pm-":this.dp.ampm})})}destroy(){this.dp.off(i.eventChangeSelectedDate,this.onChangeSelectedDate),this.dp.off(i.eventChangeLastSelectedDate,this.onChangeLastSelectedDate),this.$el.parentNode.removeChild(this.$el)}buildHtml(){let{ampm:e,hours:t,displayHours:i,minutes:s,minHours:a,minMinutes:n,maxHours:r,maxMinutes:o,dayPeriod:h,opts:{hoursStep:l,minutesStep:c}}=this;this.$el.innerHTML=`
${d(i)} : ${d(s)} `+(e?`${h}`:"")+'
'+`
`+`
`}defineDOM(){let e=e=>a(e,this.$el);this.$ranges=this.$el.querySelectorAll('[type="range"]'),this.$hours=e('[name="hours"]'),this.$minutes=e('[name="minutes"]'),this.$hoursText=e(".air-datepicker-time--current-hours"),this.$minutesText=e(".air-datepicker-time--current-minutes"),this.$ampm=e(".air-datepicker-time--current-ampm")}setTime(e){this.setMinMaxTime(e),this.setCurrentTime(e)}addTimeToDate(e){e&&(e.setHours(this.hours),e.setMinutes(this.minutes))}setMinMaxTime(e){if(this.setMinMaxTimeFromOptions(),e){let{minDate:t,maxDate:i}=this.dp;t&&p(e,t)&&this.setMinTimeFromMinDate(t),i&&p(e,i)&&this.setMaxTimeFromMaxDate(i)}}setCurrentTime(e){let{hours:t,minutes:i}=e?h(e):this;this.hours=f(t,this.minHours,this.maxHours),this.minutes=f(i,this.minMinutes,this.maxMinutes)}setMinMaxTimeFromOptions(){let{minHours:e,minMinutes:t,maxHours:i,maxMinutes:s}=this.opts;this.minHours=f(e,0,23),this.minMinutes=f(t,0,59),this.maxHours=f(i,0,23),this.maxMinutes=f(s,0,59)}setMinTimeFromMinDate(e){let{lastSelectedDate:t}=this.dp;this.minHours=e.getHours(),t&&t.getHours()>e.getHours()?this.minMinutes=this.opts.minMinutes:this.minMinutes=e.getMinutes()}setMaxTimeFromMaxDate(e){let{lastSelectedDate:t}=this.dp;this.maxHours=e.getHours(),t&&t.getHours()e.month++],[[["Control","ArrowLeft"],["Control","ArrowDown"]],e=>e.month--],[[["Shift","ArrowRight"],["Shift","ArrowUp"]],e=>e.year++],[[["Shift","ArrowLeft"],["Shift","ArrowDown"]],e=>e.year--],[[["Alt","ArrowRight"],["Alt","ArrowUp"]],e=>e.year+=10],[[["Alt","ArrowLeft"],["Alt","ArrowDown"]],e=>e.year-=10],[["Control","Shift","ArrowUp"],(e,t)=>t.up()]])),O(this,"handleHotKey",(e=>{let t=this.hotKeys.get(e),i=h(this.getInitialFocusDate());t(i,this.dp);let{year:s,month:a,date:n}=i,r=o(new Date(s,a));r{let e=!1,t=this.pressedKeys.size,i=e=>this.pressedKeys.has(e);for(let[s]of this.hotKeys){if(e)break;if(Array.isArray(s[0]))s.forEach((a=>{e||t!==a.length||(e=a.every(i)&&s)}));else{if(t!==s.length)continue;e=s.every(i)&&s}}return e})),O(this,"isArrow",(e=>e>=37&&e<=40)),O(this,"onKeyDown",(e=>{let{key:t,which:i}=e,{dp:s,dp:{focusDate:a},opts:n}=this;this.registerKey(t);let r=this.isHotKeyPressed();if(r)return e.preventDefault(),void this.handleHotKey(r);if(this.isArrow(i))return e.preventDefault(),void this.focusNextCell(t);if("Enter"===t){if(s.currentView!==n.minView)return void s.down();if(a){let e=s._checkIfDateIsSelected(a);return void(e?s._handleAlreadySelectedDates(e,a):s.selectDate(a))}}"Escape"===t&&this.dp.hide()})),O(this,"onKeyUp",(e=>{this.removeKey(e.key)})),this.dp=t,this.opts=i,this.init()}init(){this.bindKeyboardEvents()}bindKeyboardEvents(){let{$el:e}=this.dp;e.addEventListener("keydown",this.onKeyDown),e.addEventListener("keyup",this.onKeyUp)}destroy(){let{$el:e}=this.dp;e.removeEventListener("keydown",this.onKeyDown),e.removeEventListener("keyup",this.onKeyUp),this.hotKeys=null,this.pressedKeys=null}getInitialFocusDate(){let{focusDate:e,currentView:t,selectedDates:s,parsedViewDate:{year:a,month:n}}=this.dp,r=e||s[s.length-1];if(!r)switch(t){case i.days:r=new Date(a,n,(new Date).getDate());break;case i.months:r=new Date(a,n,1);break;case i.years:r=new Date(a,0,1)}return r}focusNextCell(e){let t=this.getInitialFocusDate(),{currentView:s}=this.dp,{days:a,months:n,years:r}=i,o=h(t),l=o.year,d=o.month,c=o.date;switch(e){case"ArrowLeft":s===a&&(c-=1),s===n&&(d-=1),s===r&&(l-=1);break;case"ArrowUp":s===a&&(c-=7),s===n&&(d-=3),s===r&&(l-=4);break;case"ArrowRight":s===a&&(c+=1),s===n&&(d+=1),s===r&&(l+=1);break;case"ArrowDown":s===a&&(c+=7),s===n&&(d+=3),s===r&&(l+=4)}let u=this.dp.getClampedDate(new Date(l,d,c));this.dp.setFocusDate(u,{viewDateTransition:!0})}registerKey(e){this.pressedKeys.add(e)}removeKey(e){this.pressedKeys.delete(e)}}let N={on(e,t){this.__events||(this.__events={}),this.__events[e]?this.__events[e].push(t):this.__events[e]=[t]},off(e,t){this.__events&&this.__events[e]&&(this.__events[e]=this.__events[e].filter((e=>e!==t)))},removeAllEvents(){this.__events={}},trigger(e){for(var t=arguments.length,i=new Array(t>1?t-1:0),s=1;s{e(...i)}))}};function I(e,t,i){return(t=function(e){var t=function(e,t){if("object"!=typeof e||null===e)return e;var i=e[Symbol.toPrimitive];if(void 0!==i){var s=i.call(e,"string");if("object"!=typeof s)return s;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"==typeof t?t:String(t)}(t))in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}let P="",j="",B=!1;class R{static buildGlobalContainer(e){B=!0,P=n({className:e,id:e}),a("body").appendChild(P)}constructor(e,t){var r=this;if(I(this,"viewIndexes",[i.days,i.months,i.years]),I(this,"next",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t+1,1));break;case i.months:this.setViewDate(new Date(e+1,t,1));break;case i.years:this.setViewDate(new Date(e+10,0,1))}})),I(this,"prev",(()=>{let{year:e,month:t}=this.parsedViewDate;switch(this.currentView){case i.days:this.setViewDate(new Date(e,t-1,1));break;case i.months:this.setViewDate(new Date(e-1,t,1));break;case i.years:this.setViewDate(new Date(e-10,0,1))}})),I(this,"_finishHide",(()=>{this.hideAnimation=!1,this._destroyComponents(),this.$container.removeChild(this.$datepicker)})),I(this,"setPosition",(function(e){let t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if("function"==typeof(e=e||r.opts.position))return void(r.customHide=e({$datepicker:r.$datepicker,$target:r.$el,$pointer:r.$pointer,isViewChange:t,done:r._finishHide}));let i,s,{isMobile:a}=r.opts,n=r.$el.getBoundingClientRect(),o=r.$el.getBoundingClientRect(),h=r.$datepicker.offsetParent,l=r.$el.offsetParent,d=r.$datepicker.getBoundingClientRect(),c=e.split(" "),u=window.scrollY,p=window.scrollX,m=r.opts.offset,v=c[0],g=c[1];if(a)r.$datepicker.style.cssText="left: 50%; top: 50%";else{if(h===l&&h!==document.body&&(o={top:r.$el.offsetTop,left:r.$el.offsetLeft,width:n.width,height:r.$el.offsetHeight},u=0,p=0),h!==l&&h!==document.body){let e=h.getBoundingClientRect();o={top:n.top-e.top,left:n.left-e.left,width:n.width,height:n.height},u=0,p=0}switch(v){case"top":i=o.top-d.height-m;break;case"right":s=o.left+o.width+m;break;case"bottom":i=o.top+o.height+m;break;case"left":s=o.left-d.width-m}switch(g){case"top":i=o.top;break;case"right":s=o.left+o.width-d.width;break;case"bottom":i=o.top+o.height-d.height;break;case"left":s=o.left;break;case"center":/left|right/.test(v)?i=o.top+o.height/2-d.height/2:s=o.left+o.width/2-d.width/2}r.$datepicker.style.cssText=`left: ${s+p}px; top: ${i+u}px`}})),I(this,"_setInputValue",(()=>{let{opts:e,$altField:t,locale:{dateFormat:i}}=this,{altFieldDateFormat:s,altField:a}=e;a&&t&&(t.value=this._getInputValue(s)),this.$el.value=this._getInputValue(i)})),I(this,"_getInputValue",(e=>{let{selectedDates:t,opts:i}=this,{multipleDates:s,multipleDatesSeparator:a}=i;if(!t.length)return"";let n="function"==typeof e,r=n?e(s?t:t[0]):t.map((t=>this.formatDate(t,e)));return r=n?r:r.join(a),r})),I(this,"_checkIfDateIsSelected",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.days,s=!1;return r.selectedDates.some((i=>{let a=p(e,i,t);return s=a&&i,a})),s})),I(this,"_scheduleCallAfterTransition",(e=>{this._cancelScheduledCall(),e&&e(!1),this._onTransitionEnd=()=>{e&&e(!0)},this.$datepicker.addEventListener("transitionend",this._onTransitionEnd,{once:!0})})),I(this,"_cancelScheduledCall",(()=>{this.$datepicker.removeEventListener("transitionend",this._onTransitionEnd)})),I(this,"setViewDate",(e=>{if(!((e=b(e))instanceof Date))return;if(p(e,this.viewDate))return;let t=this.viewDate;this.viewDate=e;let{onChangeViewDate:s}=this.opts;if(s){let{month:e,year:t}=this.parsedViewDate;s({month:e,year:t,decade:this.curDecade})}this.trigger(i.eventChangeViewDate,e,t)})),I(this,"setFocusDate",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};(!e||(e=b(e))instanceof Date)&&(r.focusDate=e,r.trigger(i.eventChangeFocusDate,e,t))})),I(this,"setCurrentView",(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(r.viewIndexes.includes(e)){if(r.currentView=e,r.elIsInput&&r.visible&&r.setPosition(void 0,!0),r.trigger(i.eventChangeCurrentView,e),!r.views[e]){let t=r.views[e]=new T({dp:r,opts:r.opts,type:e});r.shouldUpdateDOM&&r.$content.appendChild(t.$el)}r.opts.onChangeView&&!t.silent&&r.opts.onChangeView(e)}})),I(this,"_updateLastSelectedDate",(e=>{this.lastSelectedDate=e,this.trigger(i.eventChangeLastSelectedDate,e)})),I(this,"destroy",(()=>{if(this.isDestroyed)return;let{showEvent:e,isMobile:t}=this.opts,i=this.$datepicker.parentNode;i&&i.removeChild(this.$datepicker),this.$el.removeEventListener(e,this._onFocus),this.$el.removeEventListener("blur",this._onBlur),window.removeEventListener("resize",this._onResize),t&&this._removeMobileAttributes(),this.keyboardNav&&this.keyboardNav.destroy(),this.views=null,this.nav=null,this.$datepicker=null,this.opts={},this.$customContainer=null,this.viewDate=null,this.focusDate=null,this.selectedDates=[],this.rangeDateFrom=null,this.rangeDateTo=null,this.isDestroyed=!0})),I(this,"update",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=w({},r.opts),{silent:a}=t;w(r.opts,e);let{timepicker:n,buttons:o,range:h,selectedDates:l,isMobile:d}=r.opts,c=r.visible||r.treatAsInline;r._createMinMaxDates(),r._limitViewDateByMaxMinDates(),r._handleLocale(),l&&(r.selectedDates=[],r.selectDate(l,{silent:a})),e.view&&r.setCurrentView(e.view,{silent:a}),r._setInputValue(),s.range&&!h?(r.rangeDateTo=!1,r.rangeDateFrom=!1):!s.range&&h&&r.selectedDates.length&&(r.rangeDateFrom=r.selectedDates[0],r.rangeDateTo=r.selectedDates[1]),s.timepicker&&!n?(c&&r.timepicker.destroy(),r.timepicker=!1,r.$timepicker.parentNode.removeChild(r.$timepicker)):!s.timepicker&&n&&r._addTimepicker(),!s.buttons&&o?r._addButtons():s.buttons&&!o?(r.buttons.destroy(),r.$buttons.parentNode.removeChild(r.$buttons)):c&&s.buttons&&o&&r.buttons.clearHtml().render(),!s.isMobile&&d?(r.treatAsInline||j||r._createMobileOverlay(),r._addMobileAttributes(),r.visible&&r._showMobileOverlay()):s.isMobile&&!d&&(r._removeMobileAttributes(),r.visible&&(j.classList.remove("-active-"),"function"!=typeof r.opts.position&&r.setPosition())),c&&(r.nav.update(),r.views[r.currentView].render(),r.currentView===i.days&&r.views[r.currentView].renderDayNames())})),I(this,"disableDate",((e,t)=>{(Array.isArray(e)?e:[e]).forEach((e=>{let i=b(e);if(!i)return;let s=t?"delete":"add";this.disabledDates[s](this.formatDate(i,"yyyy-MM-dd"));let a=this.getCell(i,this.currentViewSingular);a&&a.adpCell.render()}),[])})),I(this,"enableDate",(e=>{this.disableDate(e,!0)})),I(this,"isDateDisabled",(e=>{let t=b(e);return this.disabledDates.has(this.formatDate(t,"yyyy-MM-dd"))})),I(this,"isOtherMonth",(e=>{let{month:t}=h(e);return t!==this.parsedViewDate.month})),I(this,"isOtherYear",(e=>{let{year:t}=h(e);return t!==this.parsedViewDate.year})),I(this,"isOtherDecade",(e=>{let{year:t}=h(e),[i,s]=c(this.viewDate);return ts})),I(this,"_onChangeSelectedDate",(e=>{let{silent:t}=e;setTimeout((()=>{this._setInputValue(),this.opts.onSelect&&!t&&this._triggerOnSelect()}))})),I(this,"_onChangeFocusedDate",(function(e){let{viewDateTransition:t}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e)return;let i=!1;t&&(i=r.isOtherMonth(e)||r.isOtherYear(e)||r.isOtherDecade(e)),i&&r.setViewDate(e),r.opts.onFocus&&r.opts.onFocus({datepicker:r,date:e})})),I(this,"_onChangeTime",(e=>{let{hours:t,minutes:i}=e,s=new Date,{lastSelectedDate:a,opts:{onSelect:n}}=this,r=a;a||(r=s);let o=this.getCell(r,this.currentViewSingular),h=o&&o.adpCell;h&&h.isDisabled||(r.setHours(t),r.setMinutes(i),a?(this._setInputValue(),n&&this._triggerOnSelect()):this.selectDate(r))})),I(this,"_onFocus",(e=>{this.visible||this.show()})),I(this,"_onBlur",(e=>{this.inFocus||!this.visible||this.opts.isMobile||this.hide()})),I(this,"_onMouseDown",(e=>{this.inFocus=!0})),I(this,"_onMouseUp",(e=>{this.inFocus=!1,this.$el.focus()})),I(this,"_onResize",(()=>{this.visible&&"function"!=typeof this.opts.position&&this.setPosition()})),I(this,"_onClickOverlay",(()=>{this.visible&&this.hide()})),I(this,"getViewDates",(function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:i.days;return T.getDatesFunction(e)(r)})),I(this,"isWeekend",(e=>this.opts.weekends.includes(e))),I(this,"getClampedDate",(e=>{let{minDate:t,maxDate:i}=this,s=e;return i&&m(e,i)?s=i:t&&v(e,t)&&(s=t),s})),this.$el=a(e),!this.$el)return;this.$datepicker=n({className:"air-datepicker"}),this.opts=w({},s,t),this.$customContainer=!!this.opts.container&&a(this.opts.container),this.$altField=a(this.opts.altField||!1);let{view:o,startDate:l}=this.opts;l||(this.opts.startDate=new Date),"INPUT"===this.$el.nodeName&&(this.elIsInput=!0),this.inited=!1,this.visible=!1,this.viewDate=b(this.opts.startDate),this.focusDate=!1,this.initialReadonly=this.$el.getAttribute("readonly"),this.customHide=!1,this.currentView=o,this.selectedDates=[],this.disabledDates=new Set,this.isDestroyed=!1,this.views={},this.keys=[],this.rangeDateFrom="",this.rangeDateTo="",this.timepickerIsActive=!1,this.treatAsInline=this.opts.inline||!this.elIsInput,this.init()}init(){let{opts:e,treatAsInline:t,opts:{inline:i,isMobile:s,selectedDates:n,keyboardNav:r,onlyTimepicker:o}}=this,h=a("body");(!B||B&&P&&!h.contains(P))&&!i&&this.elIsInput&&!this.$customContainer&&R.buildGlobalContainer(R.defaultGlobalContainerId),!s||j||t||this._createMobileOverlay(),this._handleLocale(),this._bindSubEvents(),this._createMinMaxDates(),this._limitViewDateByMaxMinDates(),this.elIsInput&&(i||this._bindEvents(),r&&!o&&(this.keyboardNav=new A({dp:this,opts:e}))),n&&this.selectDate(n,{silent:!0}),this.opts.visible&&!t&&this.show(),s&&!t&&this.$el.setAttribute("readonly",!0),t&&this._createComponents()}_createMobileOverlay(){j=n({className:"air-datepicker-overlay"}),P.appendChild(j)}_createComponents(){let{opts:e,treatAsInline:t,opts:{inline:i,buttons:s,timepicker:a,position:n,classes:r,onlyTimepicker:o,isMobile:h}}=this;this._buildBaseHtml(),this.elIsInput&&(i||this._setPositionClasses(n)),!i&&this.elIsInput||this.$datepicker.classList.add("-inline-"),r&&this.$datepicker.classList.add(...r.split(" ")),o&&this.$datepicker.classList.add("-only-timepicker-"),h&&!t&&this._addMobileAttributes(),this.views[this.currentView]=new T({dp:this,type:this.currentView,opts:e}),this.nav=new V({dp:this,opts:e}),a&&this._addTimepicker(),s&&this._addButtons(),this.$content.appendChild(this.views[this.currentView].$el),this.$nav.appendChild(this.nav.$el)}_destroyComponents(){for(let e in this.views)this.views[e].destroy();this.views={},this.nav.destroy(),this.timepicker&&this.timepicker.destroy()}_addMobileAttributes(){j.addEventListener("click",this._onClickOverlay),this.$datepicker.classList.add("-is-mobile-"),this.$el.setAttribute("readonly",!0)}_removeMobileAttributes(){j.removeEventListener("click",this._onClickOverlay),this.$datepicker.classList.remove("-is-mobile-"),this.initialReadonly||""===this.initialReadonly||this.$el.removeAttribute("readonly")}_createMinMaxDates(){let{minDate:e,maxDate:t}=this.opts;this.minDate=!!e&&b(e),this.maxDate=!!t&&b(t)}_addTimepicker(){this.$timepicker=n({className:"air-datepicker--time"}),this.$datepicker.appendChild(this.$timepicker),this.timepicker=new L({dp:this,opts:this.opts}),this.$timepicker.appendChild(this.timepicker.$el)}_addButtons(){this.$buttons=n({className:"air-datepicker--buttons"}),this.$datepicker.appendChild(this.$buttons),this.buttons=new H({dp:this,opts:this.opts}),this.$buttons.appendChild(this.buttons.$el)}_bindSubEvents(){this.on(i.eventChangeSelectedDate,this._onChangeSelectedDate),this.on(i.eventChangeFocusDate,this._onChangeFocusedDate),this.on(i.eventChangeTime,this._onChangeTime)}_buildBaseHtml(){let{inline:e}=this.opts;var t,i;this.elIsInput?e?(t=this.$datepicker,(i=this.$el).parentNode.insertBefore(t,i.nextSibling)):this.$container.appendChild(this.$datepicker):this.$el.appendChild(this.$datepicker),this.$datepicker.innerHTML='
',this.$content=a(".air-datepicker--content",this.$datepicker),this.$pointer=a(".air-datepicker--pointer",this.$datepicker),this.$nav=a(".air-datepicker--navigation",this.$datepicker)}_handleLocale(){let{locale:e,dateFormat:t,firstDay:i,timepicker:s,onlyTimepicker:a,timeFormat:n,dateTimeSeparator:r}=this.opts;var o;this.locale=(o=e,JSON.parse(JSON.stringify(o))),t&&(this.locale.dateFormat=t),void 0!==n&&""!==n&&(this.locale.timeFormat=n);let{timeFormat:h}=this.locale;if(""!==i&&(this.locale.firstDay=i),s&&"function"!=typeof t){let e=h?r:"";this.locale.dateFormat=[this.locale.dateFormat,h||""].join(e)}a&&"function"!=typeof t&&(this.locale.dateFormat=this.locale.timeFormat)}_setPositionClasses(e){if("function"==typeof e)return void this.$datepicker.classList.add("-custom-position-");let t=(e=e.split(" "))[0],i=`air-datepicker -${t}-${e[1]}- -from-${t}-`;this.$datepicker.classList.add(...i.split(" "))}_bindEvents(){this.$el.addEventListener(this.opts.showEvent,this._onFocus),this.$el.addEventListener("blur",this._onBlur),this.$datepicker.addEventListener("mousedown",this._onMouseDown),this.$datepicker.addEventListener("mouseup",this._onMouseUp),window.addEventListener("resize",this._onResize)}_limitViewDateByMaxMinDates(){let{viewDate:e,minDate:t,maxDate:i}=this;i&&m(e,i)&&this.setViewDate(i),t&&v(e,t)&&this.setViewDate(t)}formatDate(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.viewDate,t=arguments.length>1?arguments[1]:void 0;if(e=b(e),!(e instanceof Date))return;let i=t,s=this.locale,a=h(e),n=a.dayPeriod,r=c(e),o=R.replacer,l={T:e.getTime(),m:a.minutes,mm:a.fullMinutes,h:a.hours12,hh:a.fullHours12,H:a.hours,HH:a.fullHours,aa:n,AA:n.toUpperCase(),E:s.daysShort[a.day],EEEE:s.days[a.day],d:a.date,dd:a.fullDate,M:a.month+1,MM:a.fullMonth,MMM:s.monthsShort[a.month],MMMM:s.months[a.month],yy:a.year.toString().slice(-2),yyyy:a.year,yyyy1:r[0],yyyy2:r[1]};for(let[e,t]of Object.entries(l))i=o(i,k(e),t);return i}down(e){this._handleUpDownActions(e,"down")}up(e){this._handleUpDownActions(e,"up")}selectDate(e){let t,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{currentView:a,parsedViewDate:n,selectedDates:r}=this,{updateTime:o}=s,{moveToOtherMonthsOnSelect:h,moveToOtherYearsOnSelect:l,multipleDates:d,range:c,autoClose:u,onBeforeSelect:p}=this.opts,v=r.length;if(Array.isArray(e))return e.forEach((e=>{this.selectDate(e,s)})),new Promise((e=>{setTimeout(e)}));if((e=b(e))instanceof Date){if(p&&!p({date:e,datepicker:this}))return Promise.resolve();if(a===i.days&&e.getMonth()!==n.month&&h&&(t=new Date(e.getFullYear(),e.getMonth(),1)),a===i.years&&e.getFullYear()!==n.year&&l&&(t=new Date(e.getFullYear(),0,1)),t&&this.setViewDate(t),d&&!c){if(v===d)return;this._checkIfDateIsSelected(e)||r.push(e)}else if(c)switch(v){case 1:r.push(e),this.rangeDateTo||(this.rangeDateTo=e),m(this.rangeDateFrom,this.rangeDateTo)&&(this.rangeDateTo=this.rangeDateFrom,this.rangeDateFrom=e),this.selectedDates=[this.rangeDateFrom,this.rangeDateTo];break;case 2:this.selectedDates=[e],this.rangeDateFrom=e,this.rangeDateTo="";break;default:this.selectedDates=[e],this.rangeDateFrom=e}else this.selectedDates=[e];return this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,silent:null==s?void 0:s.silent,date:e,updateTime:o}),this._updateLastSelectedDate(e),u&&!this.timepickerIsActive&&this.visible&&(d||c?c&&1===v&&this.hide():this.hide()),new Promise((e=>{setTimeout(e)}))}}unselectDate(e){let t=this.selectedDates,s=this;if((e=b(e))instanceof Date)return t.some(((a,n)=>{if(p(a,e))return t.splice(n,1),s.selectedDates.length?(s.rangeDateTo="",s.rangeDateFrom=t[0],s._updateLastSelectedDate(s.selectedDates[s.selectedDates.length-1])):(s.rangeDateFrom="",s.rangeDateTo="",s._updateLastSelectedDate(!1)),this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,date:e}),!0}))}replaceDate(e,t){let s=this.selectedDates.find((t=>p(t,e,this.currentView))),a=this.selectedDates.indexOf(s);a<0||p(this.selectedDates[a],t,this.currentView)||(this.selectedDates[a]=t,this.trigger(i.eventChangeSelectedDate,{action:i.actionSelectDate,date:t,updateTime:!0}),this._updateLastSelectedDate(t))}clear(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.selectedDates=[],this.rangeDateFrom=!1,this.rangeDateTo=!1,this.lastSelectedDate=!1,this.trigger(i.eventChangeSelectedDate,{action:i.actionUnselectDate,silent:e.silent}),new Promise((e=>{setTimeout(e)}))}show(){let{onShow:e,isMobile:t}=this.opts;this._cancelScheduledCall(),this.visible||this.hideAnimation||this._createComponents(),this.setPosition(this.opts.position),this.$datepicker.classList.add("-active-"),this.visible=!0,e&&this._scheduleCallAfterTransition(e),t&&this._showMobileOverlay()}hide(){let{onHide:e,isMobile:t}=this.opts,i=this._hasTransition();this.visible=!1,this.hideAnimation=!0,this.$datepicker.classList.remove("-active-"),this.customHide&&this.customHide(),this.elIsInput&&this.$el.blur(),this._scheduleCallAfterTransition((t=>{!this.customHide&&(t&&i||!t&&!i)&&this._finishHide(),e&&e(t)})),t&&j.classList.remove("-active-")}_triggerOnSelect(){let e=[],t=[],{selectedDates:i,locale:s,opts:{onSelect:a,multipleDates:n,range:r}}=this,o=n||r,h="function"==typeof s.dateFormat;i.length&&(e=i.map(g),t=h?n?s.dateFormat(e):e.map((e=>s.dateFormat(e))):e.map((e=>this.formatDate(e,s.dateFormat)))),a({date:o?e:e[0],formattedDate:o?t:t[0],datepicker:this})}_handleAlreadySelectedDates(e,t){let{selectedDates:i,rangeDateFrom:s,rangeDateTo:a}=this,{range:n,toggleSelected:r}=this.opts,o=i.length,h="function"==typeof r?r({datepicker:this,date:t}):r,l=Boolean(n&&1===o&&e),d=l?g(t):t;n&&!h&&(2!==o&&this.selectDate(d),2===o&&p(s,a))||(h?this.unselectDate(d):this._updateLastSelectedDate(l?d:e))}_handleUpDownActions(e,t){if(!((e=b(e||this.focusDate||this.viewDate))instanceof Date))return;let i="up"===t?this.viewIndex+1:this.viewIndex-1;i>2&&(i=2),i<0&&(i=0),this.setViewDate(new Date(e.getFullYear(),e.getMonth(),1)),this.setCurrentView(this.viewIndexes[i])}getCell(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:i.day;if(!((e=b(e))instanceof Date))return;let{year:s,month:a,date:n}=h(e),r=`[data-year="${s}"]`,o=`[data-month="${a}"]`,l={[i.day]:`${r}${o}[data-date="${n}"]`,[i.month]:`${r}${o}`,[i.year]:`${r}`};return this.views[this.currentView]?this.views[this.currentView].$el.querySelector(l[t]):void 0}_showMobileOverlay(){j.classList.add("-active-")}_hasTransition(){return window.getComputedStyle(this.$datepicker).getPropertyValue("transition-duration").split(", ").reduce(((e,t)=>parseFloat(t)+e),0)>0}get shouldUpdateDOM(){return this.visible||this.treatAsInline}get parsedViewDate(){return h(this.viewDate)}get currentViewSingular(){return this.currentView.slice(0,-1)}get curDecade(){return c(this.viewDate)}get viewIndex(){return this.viewIndexes.indexOf(this.currentView)}get isFinalView(){return this.currentView===i.years}get hasSelectedDates(){return this.selectedDates.length>0}get isMinViewReached(){return this.currentView===this.opts.minView||this.currentView===i.days}get $container(){return this.$customContainer||P}static replacer(e,t,i){return e.replace(t,(function(e,t,s,a){return t+i+a}))}}var K;return I(R,"defaults",s),I(R,"version","3.5.3"),I(R,"defaultGlobalContainerId","air-datepicker-global-container"),K=R.prototype,Object.assign(K,N),t.default}()})); diff --git a/src/agenda_culturel/static/air-datepicker/fr.js b/src/agenda_culturel/static/air-datepicker/fr.js index 11ab7fe..eae94d8 100644 --- a/src/agenda_culturel/static/air-datepicker/fr.js +++ b/src/agenda_culturel/static/air-datepicker/fr.js @@ -16,4 +16,4 @@ var _default = { timeFormat: 'HH:mm', firstDay: 1 }; -exports.default = _default; \ No newline at end of file +exports.default = _default; diff --git a/src/agenda_culturel/static/cal-heatmap/README.md b/src/agenda_culturel/static/cal-heatmap/README.md index bec4603..6188812 100644 --- a/src/agenda_culturel/static/cal-heatmap/README.md +++ b/src/agenda_culturel/static/cal-heatmap/README.md @@ -1 +1 @@ -next_month \ No newline at end of file +next_month diff --git a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.css b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.css index 9bafe15..2cb2eb9 100644 --- a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.css +++ b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.css @@ -1 +1 @@ -.ch-container{display:block}.ch-container,.ch-domain,.ch-domain-container,.ch-domain-container-animation-wrapper{overflow:visible}.ch-domain-container.in-transition .ch-domain-container-animation-wrapper{overflow:hidden}.ch-domain-bg{fill:transparent}.ch-domain-text{fill:currentColor;font-size:10px}.ch-subdomain{overflow:visible}.ch-subdomain-bg{fill:#ededed}.ch-subdomain-bg.highlight{stroke:#444;stroke-width:1px}.ch-subdomain-bg:hover{stroke:#000;stroke-width:1px}.ch-subdomain-text{font-size:8px;pointer-events:none}[data-theme=dark] .ch-subdomain-bg{fill:#2d333b}[data-theme=dark] .ch-subdomain-bg.highlight{stroke:#768390}[data-theme=dark] .ch-subdomain-bg:hover{stroke:#636e7b}#ch-plugin-legend>svg{background:transparent;color:currentColor}#ch-tooltip{background:#222;border-radius:2px;box-shadow:2px 2px 2px rgba(0,0,0,.2);box-sizing:border-box;color:#bbb;display:none;font-size:12px;line-height:1.4;padding:5px 10px;text-align:center}#ch-tooltip[data-show]{display:block}#ch-tooltip-arrow,#ch-tooltip-arrow:before{background:inherit;height:8px;position:absolute;width:8px}#ch-tooltip-arrow{visibility:hidden}#ch-tooltip-arrow:before{content:"";transform:rotate(45deg);visibility:visible}#ch-tooltip[data-popper-placement^=top]>#ch-tooltip-arrow{bottom:-4px;margin-left:-4px}#ch-tooltip[data-popper-placement^=bottom]>#ch-tooltip-arrow{margin-left:-4px;top:-4px}#ch-tooltip[data-popper-placement^=left]>#ch-tooltip-arrow{right:-4px}#ch-tooltip[data-popper-placement^=right]>#ch-tooltip-arrow{left:-4px}#ch-tooltip[data-theme=dark]{background:#636e7b;color:#cdd9e5} \ No newline at end of file +.ch-container{display:block}.ch-container,.ch-domain,.ch-domain-container,.ch-domain-container-animation-wrapper{overflow:visible}.ch-domain-container.in-transition .ch-domain-container-animation-wrapper{overflow:hidden}.ch-domain-bg{fill:transparent}.ch-domain-text{fill:currentColor;font-size:10px}.ch-subdomain{overflow:visible}.ch-subdomain-bg{fill:#ededed}.ch-subdomain-bg.highlight{stroke:#444;stroke-width:1px}.ch-subdomain-bg:hover{stroke:#000;stroke-width:1px}.ch-subdomain-text{font-size:8px;pointer-events:none}[data-theme=dark] .ch-subdomain-bg{fill:#2d333b}[data-theme=dark] .ch-subdomain-bg.highlight{stroke:#768390}[data-theme=dark] .ch-subdomain-bg:hover{stroke:#636e7b}#ch-plugin-legend>svg{background:transparent;color:currentColor}#ch-tooltip{background:#222;border-radius:2px;box-shadow:2px 2px 2px rgba(0,0,0,.2);box-sizing:border-box;color:#bbb;display:none;font-size:12px;line-height:1.4;padding:5px 10px;text-align:center}#ch-tooltip[data-show]{display:block}#ch-tooltip-arrow,#ch-tooltip-arrow:before{background:inherit;height:8px;position:absolute;width:8px}#ch-tooltip-arrow{visibility:hidden}#ch-tooltip-arrow:before{content:"";transform:rotate(45deg);visibility:visible}#ch-tooltip[data-popper-placement^=top]>#ch-tooltip-arrow{bottom:-4px;margin-left:-4px}#ch-tooltip[data-popper-placement^=bottom]>#ch-tooltip-arrow{margin-left:-4px;top:-4px}#ch-tooltip[data-popper-placement^=left]>#ch-tooltip-arrow{right:-4px}#ch-tooltip[data-popper-placement^=right]>#ch-tooltip-arrow{left:-4px}#ch-tooltip[data-theme=dark]{background:#636e7b;color:#cdd9e5} diff --git a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.esm.js b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.esm.js index 0d34885..077a651 100644 --- a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.esm.js +++ b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.esm.js @@ -3753,7 +3753,7 @@ var eventemitter3 = {exports: {}}; // { module.exports = EventEmitter; - } + } } (eventemitter3)); var eventemitter3Exports = eventemitter3.exports; @@ -12108,7 +12108,7 @@ if (DESCRIPTORS && !FUNCTION_NAME_EXISTS) { var dayjs_min = {exports: {}}; (function (module, exports) { - !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",c="month",f="quarter",h="year",d="date",l="Invalid Date",$=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return "["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},m=function(t,e,n){var r=String(t);return !r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()1)return t(u[0])}else {var a=e.name;D[a]=e,i=a;}return !r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0;}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return b},m.isValid=function(){return !(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)=e?t:""+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()1)return t(u[0])}else {var a=e.name;D[a]=e,i=a;}return !r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0;}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return b},m.isValid=function(){return !(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,"millisecond"),o=this.diff(a,e,!0);return o<0?r(this).startOf("week").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e="week",t="year";return function(i,n,r){var f=n.prototype;f.week=function(i){if(void 0===i&&(i=null),null!==i)return this.add(7*(i-this.week()),"day");var n=this.$locale().yearStart||1;if(11===this.month()&&this.date()>25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,"millisecond"),o=this.diff(a,e,!0);return o<0?r(this).startOf("week").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)};}})); } (weekOfYear$1)); var weekOfYearExports = weekOfYear$1.exports; @@ -12126,7 +12126,7 @@ var weekOfYear = /*@__PURE__*/getDefaultExportFromCjs(weekOfYearExports); var dayOfYear$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t,n){t.prototype.dayOfYear=function(e){var t=Math.round((n(this).startOf("day")-n(this).startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"day")};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t,n){t.prototype.dayOfYear=function(e){var t=Math.round((n(this).startOf("day")-n(this).startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"day")};}})); } (dayOfYear$1)); var dayOfYearExports = dayOfYear$1.exports; @@ -12135,7 +12135,7 @@ var dayOfYear = /*@__PURE__*/getDefaultExportFromCjs(dayOfYearExports); var weekday$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){t.prototype.weekday=function(e){var t=this.$locale().weekStart||0,i=this.$W,n=(i0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i4&&(o+=7),n.add(o,e));return r.diff(u,"week")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return "isoweek"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):n.bind(this)(e,t)};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e="day";return function(t,i,s){var a=function(t){return t.add(4-t.isoWeekday(),e)},d=i.prototype;d.isoWeekYear=function(){return a(this).year()},d.isoWeek=function(t){if(!this.$utils().u(t))return this.add(7*(t-this.isoWeek()),e);var i,d,n,o,r=a(this),u=(i=this.isoWeekYear(),d=this.$u,n=(d?s.utc:s)().year(i).startOf("year"),o=4-n.isoWeekday(),n.isoWeekday()>4&&(o+=7),n.add(o,e));return r.diff(u,"week")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return "isoweek"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):n.bind(this)(e,t)};}})); } (isoWeek$1)); var isoWeekExports = isoWeek$1.exports; @@ -12171,7 +12171,7 @@ var isoWeek = /*@__PURE__*/getDefaultExportFromCjs(isoWeekExports); var isLeapYear$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0};}})); } (isLeapYear$1)); var isLeapYearExports = isLeapYear$1.exports; @@ -12180,7 +12180,7 @@ var isLeapYear = /*@__PURE__*/getDefaultExportFromCjs(isLeapYearExports); var advancedFormat$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case"Q":return Math.ceil((t.$M+1)/3);case"Do":return r.ordinal(t.$D);case"gggg":return t.weekYear();case"GGGG":return t.isoWeekYear();case"wo":return r.ordinal(t.week(),"W");case"w":case"ww":return s.s(t.week(),"w"===e?1:2,"0");case"W":case"WW":return s.s(t.isoWeek(),"W"===e?1:2,"0");case"k":case"kk":return s.s(String(0===t.$H?24:t.$H),"k"===e?1:2,"0");case"X":return Math.floor(t.$d.getTime()/1e3);case"x":return t.$d.getTime();case"z":return "["+t.offsetName()+"]";case"zzz":return "["+t.offsetName("long")+"]";default:return e}}));return n.bind(this)(a)};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case"Q":return Math.ceil((t.$M+1)/3);case"Do":return r.ordinal(t.$D);case"gggg":return t.weekYear();case"GGGG":return t.isoWeekYear();case"wo":return r.ordinal(t.week(),"W");case"w":case"ww":return s.s(t.week(),"w"===e?1:2,"0");case"W":case"WW":return s.s(t.isoWeek(),"W"===e?1:2,"0");case"k":case"kk":return s.s(String(0===t.$H?24:t.$H),"k"===e?1:2,"0");case"X":return Math.floor(t.$d.getTime()/1e3);case"x":return t.$d.getTime();case"z":return "["+t.offsetName()+"]";case"zzz":return "["+t.offsetName("long")+"]";default:return e}}));return n.bind(this)(a)};}})); } (advancedFormat$1)); var advancedFormatExports = advancedFormat$1.exports; @@ -12189,7 +12189,7 @@ var advancedFormat = /*@__PURE__*/getDefaultExportFromCjs(advancedFormatExports) var utc$1 = {exports: {}}; (function (module, exports) { - !function(t,i){module.exports=i();}(commonjsGlobal,(function(){var t="minute",i=/[+-]\d\d(?::?\d\d)?/g,e=/([+-]|\d\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t);};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds();}else r.call(this);};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if("string"==typeof s&&(s=function(t){void 0===t&&(t="");var s=t.match(i);if(!s)return null;var f=(""+s[0]).match(e)||["-",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:"+"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r;}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return !!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return "s"===t&&this.$offset?n(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)};}})); + !function(t,i){module.exports=i();}(commonjsGlobal,(function(){var t="minute",i=/[+-]\d\d(?::?\d\d)?/g,e=/([+-]|\d\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t);};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds();}else r.call(this);};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if("string"==typeof s&&(s=function(t){void 0===t&&(t="");var s=t.match(i);if(!s)return null;var f=(""+s[0]).match(e)||["-",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:"+"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r;}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return !!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return "s"===t&&this.$offset?n(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)};}})); } (utc$1)); var utcExports = utc$1.exports; @@ -12198,7 +12198,7 @@ var utc = /*@__PURE__*/getDefaultExportFromCjs(utcExports); var timezone$1 = {exports: {}}; (function (module, exports) { - !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||"short",o=t+"|"+i,r=e[o];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u=0&&(r[c]=parseInt(m,10));}var d=r[3],l=24===d?0:d,h=r[0]+"-"+r[1]+"-"+r[2]+" "+l+":"+r[4]+":"+r[5]+":000",v=+e;return (o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString("en-US",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,"minute");}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return "timezonename"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if("string"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return [i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t;};}})); + !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||"short",o=t+"|"+i,r=e[o];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u=0&&(r[c]=parseInt(m,10));}var d=r[3],l=24===d?0:d,h=r[0]+"-"+r[1]+"-"+r[2]+" "+l+":"+r[4]+":"+r[5]+":000",v=+e;return (o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString("en-US",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,"minute");}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return "timezonename"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if("string"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return [i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t;};}})); } (timezone$1)); var timezoneExports = timezone$1.exports; @@ -12207,7 +12207,7 @@ var timezone = /*@__PURE__*/getDefaultExportFromCjs(timezoneExports); var localeData$1 = {exports: {}}; (function (module, exports) { - !function(n,e){module.exports=e();}(commonjsGlobal,(function(){return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return {months:function(e){return e?e.format("MMMM"):u(n,"months")},monthsShort:function(e){return e?e.format("MMM"):u(n,"monthsShort","months",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format("dddd"):u(n,"weekdays")},weekdaysMin:function(e){return e?e.format("dd"):u(n,"weekdaysMin","weekdays",2)},weekdaysShort:function(e){return e?e.format("ddd"):u(n,"weekdaysShort","weekdays",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return {firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),"months")},t.monthsShort=function(){return u(i(),"monthsShort","months",3)},t.weekdays=function(n){return u(i(),"weekdays",null,null,n)},t.weekdaysShort=function(n){return u(i(),"weekdaysShort","weekdays",3,n)},t.weekdaysMin=function(n){return u(i(),"weekdaysMin","weekdays",2,n)};}})); + !function(n,e){module.exports=e();}(commonjsGlobal,(function(){return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return {months:function(e){return e?e.format("MMMM"):u(n,"months")},monthsShort:function(e){return e?e.format("MMM"):u(n,"monthsShort","months",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format("dddd"):u(n,"weekdays")},weekdaysMin:function(e){return e?e.format("dd"):u(n,"weekdaysMin","weekdays",2)},weekdaysShort:function(e){return e?e.format("ddd"):u(n,"weekdaysShort","weekdays",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return {firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),"months")},t.monthsShort=function(){return u(i(),"monthsShort","months",3)},t.weekdays=function(n){return u(i(),"weekdays",null,null,n)},t.weekdaysShort=function(n){return u(i(),"weekdaysShort","weekdays",3,n)},t.weekdaysMin=function(n){return u(i(),"weekdaysMin","weekdays",2,n)};}})); } (localeData$1)); var localeDataExports = localeData$1.exports; @@ -12216,7 +12216,7 @@ var localeData = /*@__PURE__*/getDefaultExportFromCjs(localeDataExports); var localizedFormat$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t="YYYY-MM-DDTHH:mm:ssZ");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t="YYYY-MM-DDTHH:mm:ssZ");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)};}})); } (localizedFormat$1)); var localizedFormatExports = localizedFormat$1.exports; @@ -12225,7 +12225,7 @@ var localizedFormat = /*@__PURE__*/getDefaultExportFromCjs(localizedFormatExport var updateLocale$1 = {exports: {}}; (function (module, exports) { - !function(e,n){module.exports=n();}(commonjsGlobal,(function(){return function(e,n,t){t.updateLocale=function(e,n){var o=t.Ls[e];if(o)return (n?Object.keys(n):[]).forEach((function(e){o[e]=n[e];})),o};}})); + !function(e,n){module.exports=n();}(commonjsGlobal,(function(){return function(e,n,t){t.updateLocale=function(e,n){var o=t.Ls[e];if(o)return (n?Object.keys(n):[]).forEach((function(e){o[e]=n[e];})),o};}})); } (updateLocale$1)); var updateLocaleExports = updateLocale$1.exports; diff --git a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.js b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.js index a901a15..2d9697d 100644 --- a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.js +++ b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.js @@ -3754,7 +3754,7 @@ // { module.exports = EventEmitter; - } + } } (eventemitter3)); var eventemitter3Exports = eventemitter3.exports; @@ -12109,7 +12109,7 @@ var dayjs_min = {exports: {}}; (function (module, exports) { - !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t=1e3,e=6e4,n=36e5,r="millisecond",i="second",s="minute",u="hour",a="day",o="week",c="month",f="quarter",h="year",d="date",l="Invalid Date",$=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,y=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return "["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},m=function(t,e,n){var r=String(t);return !r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()1)return t(u[0])}else {var a=e.name;D[a]=e,i=a;}return !r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0;}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return b},m.isValid=function(){return !(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)=e?t:""+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return (e<=0?"+":"-")+m(r,2,"0")+":"+m(i,2,"0")},m:function t(e,n){if(e.date()1)return t(u[0])}else {var a=e.name;D[a]=e,i=a;}return !r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0;}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init();},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds();},m.$utils=function(){return b},m.isValid=function(){return !(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,"millisecond"),o=this.diff(a,e,!0);return o<0?r(this).startOf("week").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e="week",t="year";return function(i,n,r){var f=n.prototype;f.week=function(i){if(void 0===i&&(i=null),null!==i)return this.add(7*(i-this.week()),"day");var n=this.$locale().yearStart||1;if(11===this.month()&&this.date()>25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,"millisecond"),o=this.diff(a,e,!0);return o<0?r(this).startOf("week").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)};}})); } (weekOfYear$1)); var weekOfYearExports = weekOfYear$1.exports; @@ -12127,7 +12127,7 @@ var dayOfYear$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t,n){t.prototype.dayOfYear=function(e){var t=Math.round((n(this).startOf("day")-n(this).startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"day")};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t,n){t.prototype.dayOfYear=function(e){var t=Math.round((n(this).startOf("day")-n(this).startOf("year"))/864e5)+1;return null==e?t:this.add(e-t,"day")};}})); } (dayOfYear$1)); var dayOfYearExports = dayOfYear$1.exports; @@ -12136,7 +12136,7 @@ var weekday$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){t.prototype.weekday=function(e){var t=this.$locale().weekStart||0,i=this.$W,n=(i0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i4&&(o+=7),n.add(o,e));return r.diff(u,"week")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return "isoweek"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):n.bind(this)(e,t)};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e="day";return function(t,i,s){var a=function(t){return t.add(4-t.isoWeekday(),e)},d=i.prototype;d.isoWeekYear=function(){return a(this).year()},d.isoWeek=function(t){if(!this.$utils().u(t))return this.add(7*(t-this.isoWeek()),e);var i,d,n,o,r=a(this),u=(i=this.isoWeekYear(),d=this.$u,n=(d?s.utc:s)().year(i).startOf("year"),o=4-n.isoWeekday(),n.isoWeekday()>4&&(o+=7),n.add(o,e));return r.diff(u,"week")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return "isoweek"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf("day"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf("day"):n.bind(this)(e,t)};}})); } (isoWeek$1)); var isoWeekExports = isoWeek$1.exports; @@ -12172,7 +12172,7 @@ var isLeapYear$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0};}})); } (isLeapYear$1)); var isLeapYearExports = isLeapYear$1.exports; @@ -12181,7 +12181,7 @@ var advancedFormat$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case"Q":return Math.ceil((t.$M+1)/3);case"Do":return r.ordinal(t.$D);case"gggg":return t.weekYear();case"GGGG":return t.isoWeekYear();case"wo":return r.ordinal(t.week(),"W");case"w":case"ww":return s.s(t.week(),"w"===e?1:2,"0");case"W":case"WW":return s.s(t.isoWeek(),"W"===e?1:2,"0");case"k":case"kk":return s.s(String(0===t.$H?24:t.$H),"k"===e?1:2,"0");case"X":return Math.floor(t.$d.getTime()/1e3);case"x":return t.$d.getTime();case"z":return "["+t.offsetName()+"]";case"zzz":return "["+t.offsetName("long")+"]";default:return e}}));return n.bind(this)(a)};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case"Q":return Math.ceil((t.$M+1)/3);case"Do":return r.ordinal(t.$D);case"gggg":return t.weekYear();case"GGGG":return t.isoWeekYear();case"wo":return r.ordinal(t.week(),"W");case"w":case"ww":return s.s(t.week(),"w"===e?1:2,"0");case"W":case"WW":return s.s(t.isoWeek(),"W"===e?1:2,"0");case"k":case"kk":return s.s(String(0===t.$H?24:t.$H),"k"===e?1:2,"0");case"X":return Math.floor(t.$d.getTime()/1e3);case"x":return t.$d.getTime();case"z":return "["+t.offsetName()+"]";case"zzz":return "["+t.offsetName("long")+"]";default:return e}}));return n.bind(this)(a)};}})); } (advancedFormat$1)); var advancedFormatExports = advancedFormat$1.exports; @@ -12190,7 +12190,7 @@ var utc$1 = {exports: {}}; (function (module, exports) { - !function(t,i){module.exports=i();}(commonjsGlobal,(function(){var t="minute",i=/[+-]\d\d(?::?\d\d)?/g,e=/([+-]|\d\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t);};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds();}else r.call(this);};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if("string"==typeof s&&(s=function(t){void 0===t&&(t="");var s=t.match(i);if(!s)return null;var f=(""+s[0]).match(e)||["-",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:"+"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r;}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return !!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return "s"===t&&this.$offset?n(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)};}})); + !function(t,i){module.exports=i();}(commonjsGlobal,(function(){var t="minute",i=/[+-]\d\d(?::?\d\d)?/g,e=/([+-]|\d\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t);};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds();}else r.call(this);};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if("string"==typeof s&&(s=function(t){void 0===t&&(t="");var s=t.match(i);if(!s)return null;var f=(""+s[0]).match(e)||["-",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:"+"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r;}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return !!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return "s"===t&&this.$offset?n(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)};}})); } (utc$1)); var utcExports = utc$1.exports; @@ -12199,7 +12199,7 @@ var timezone$1 = {exports: {}}; (function (module, exports) { - !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||"short",o=t+"|"+i,r=e[o];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u=0&&(r[c]=parseInt(m,10));}var d=r[3],l=24===d?0:d,h=r[0]+"-"+r[1]+"-"+r[2]+" "+l+":"+r[4]+":"+r[5]+":000",v=+e;return (o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString("en-US",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,"minute");}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return "timezonename"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if("string"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return [i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t;};}})); + !function(t,e){module.exports=e();}(commonjsGlobal,(function(){var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||"short",o=t+"|"+i,r=e[o];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u=0&&(r[c]=parseInt(m,10));}var d=r[3],l=24===d?0:d,h=r[0]+"-"+r[1]+"-"+r[2]+" "+l+":"+r[4]+":"+r[5]+":000",v=+e;return (o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString("en-US",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set("millisecond",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,"minute");}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return "timezonename"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format("YYYY-MM-DD HH:mm:ss:SSS"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if("string"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return [i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t;};}})); } (timezone$1)); var timezoneExports = timezone$1.exports; @@ -12208,7 +12208,7 @@ var localeData$1 = {exports: {}}; (function (module, exports) { - !function(n,e){module.exports=e();}(commonjsGlobal,(function(){return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return {months:function(e){return e?e.format("MMMM"):u(n,"months")},monthsShort:function(e){return e?e.format("MMM"):u(n,"monthsShort","months",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format("dddd"):u(n,"weekdays")},weekdaysMin:function(e){return e?e.format("dd"):u(n,"weekdaysMin","weekdays",2)},weekdaysShort:function(e){return e?e.format("ddd"):u(n,"weekdaysShort","weekdays",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return {firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),"months")},t.monthsShort=function(){return u(i(),"monthsShort","months",3)},t.weekdays=function(n){return u(i(),"weekdays",null,null,n)},t.weekdaysShort=function(n){return u(i(),"weekdaysShort","weekdays",3,n)},t.weekdaysMin=function(n){return u(i(),"weekdaysMin","weekdays",2,n)};}})); + !function(n,e){module.exports=e();}(commonjsGlobal,(function(){return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return {months:function(e){return e?e.format("MMMM"):u(n,"months")},monthsShort:function(e){return e?e.format("MMM"):u(n,"monthsShort","months",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format("dddd"):u(n,"weekdays")},weekdaysMin:function(e){return e?e.format("dd"):u(n,"weekdaysMin","weekdays",2)},weekdaysShort:function(e){return e?e.format("ddd"):u(n,"weekdaysShort","weekdays",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return {firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),"months")},t.monthsShort=function(){return u(i(),"monthsShort","months",3)},t.weekdays=function(n){return u(i(),"weekdays",null,null,n)},t.weekdaysShort=function(n){return u(i(),"weekdaysShort","weekdays",3,n)},t.weekdaysMin=function(n){return u(i(),"weekdaysMin","weekdays",2,n)};}})); } (localeData$1)); var localeDataExports = localeData$1.exports; @@ -12217,7 +12217,7 @@ var localizedFormat$1 = {exports: {}}; (function (module, exports) { - !function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t="YYYY-MM-DDTHH:mm:ssZ");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)};}})); + !function(e,t){module.exports=t();}(commonjsGlobal,(function(){var e={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t="YYYY-MM-DDTHH:mm:ssZ");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)};}})); } (localizedFormat$1)); var localizedFormatExports = localizedFormat$1.exports; @@ -12226,7 +12226,7 @@ var updateLocale$1 = {exports: {}}; (function (module, exports) { - !function(e,n){module.exports=n();}(commonjsGlobal,(function(){return function(e,n,t){t.updateLocale=function(e,n){var o=t.Ls[e];if(o)return (n?Object.keys(n):[]).forEach((function(e){o[e]=n[e];})),o};}})); + !function(e,n){module.exports=n();}(commonjsGlobal,(function(){return function(e,n,t){t.updateLocale=function(e,n){var o=t.Ls[e];if(o)return (n?Object.keys(n):[]).forEach((function(e){o[e]=n[e];})),o};}})); } (updateLocale$1)); var updateLocaleExports = updateLocale$1.exports; diff --git a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.min.esm.js.map b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.min.esm.js.map index 03c62e0..4496c25 100644 --- a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.min.esm.js.map +++ b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.min.esm.js.map @@ -1 +1 @@ -{"version":3,"file":"cal-heatmap.min.esm.js","sources":["../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/define-global-property.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/function-bind-native.js","../node_modules/core-js/internals/function-uncurry-this.js","../node_modules/core-js/internals/is-null-or-undefined.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/has-own-property.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/symbol-constructor-detection.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/document-all.js","../node_modules/core-js/internals/is-callable.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/v8-prototype-define-bug.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/function-call.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/object-is-prototype-of.js","../node_modules/core-js/internals/is-symbol.js","../node_modules/core-js/internals/try-to-string.js","../node_modules/core-js/internals/a-callable.js","../node_modules/core-js/internals/get-method.js","../node_modules/core-js/internals/ordinary-to-primitive.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/to-property-key.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/function-name.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/weak-map-basic-detection.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/make-built-in.js","../node_modules/core-js/internals/define-built-in.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/object-to-string.js","../node_modules/core-js/modules/es.object.to-string.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/math-trunc.js","../node_modules/core-js/internals/to-integer-or-infinity.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/length-of-array-like.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/engine-is-node.js","../node_modules/core-js/internals/function-uncurry-this-accessor.js","../node_modules/core-js/internals/a-possible-prototype.js","../node_modules/core-js/internals/object-set-prototype-of.js","../node_modules/core-js/internals/set-to-string-tag.js","../node_modules/core-js/internals/define-built-in-accessor.js","../node_modules/core-js/internals/set-species.js","../node_modules/core-js/internals/an-instance.js","../node_modules/core-js/internals/is-constructor.js","../node_modules/core-js/internals/task.js","../node_modules/core-js/internals/a-constructor.js","../node_modules/core-js/internals/species-constructor.js","../node_modules/core-js/internals/function-apply.js","../node_modules/core-js/internals/function-uncurry-this-clause.js","../node_modules/core-js/internals/function-bind-context.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/array-slice.js","../node_modules/core-js/internals/validate-arguments-length.js","../node_modules/core-js/internals/engine-is-ios.js","../node_modules/core-js/internals/queue.js","../node_modules/core-js/internals/microtask.js","../node_modules/core-js/internals/engine-is-ios-pebble.js","../node_modules/core-js/internals/engine-is-webos-webkit.js","../node_modules/core-js/internals/perform.js","../node_modules/core-js/internals/promise-native-constructor.js","../node_modules/core-js/internals/engine-is-deno.js","../node_modules/core-js/internals/engine-is-browser.js","../node_modules/core-js/internals/promise-constructor-detection.js","../node_modules/core-js/internals/new-promise-capability.js","../node_modules/core-js/modules/es.promise.constructor.js","../node_modules/core-js/internals/host-report-errors.js","../node_modules/core-js/internals/iterators.js","../node_modules/core-js/internals/is-array-iterator-method.js","../node_modules/core-js/internals/get-iterator-method.js","../node_modules/core-js/internals/get-iterator.js","../node_modules/core-js/internals/iterator-close.js","../node_modules/core-js/internals/iterate.js","../node_modules/core-js/internals/check-correctness-of-iteration.js","../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../node_modules/core-js/modules/es.promise.all.js","../node_modules/core-js/modules/es.promise.catch.js","../node_modules/core-js/modules/es.promise.race.js","../node_modules/core-js/modules/es.promise.reject.js","../node_modules/core-js/internals/promise-resolve.js","../node_modules/core-js/modules/es.promise.resolve.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/add-to-unscopables.js","../node_modules/core-js/internals/iterators-core.js","../node_modules/core-js/internals/correct-prototype-getter.js","../node_modules/core-js/internals/object-get-prototype-of.js","../node_modules/core-js/internals/iterator-create-constructor.js","../node_modules/core-js/internals/iterator-define.js","../node_modules/core-js/internals/create-iter-result-object.js","../node_modules/core-js/modules/es.array.iterator.js","../node_modules/core-js/modules/es.promise.all-settled.js","../node_modules/core-js/internals/to-string.js","../node_modules/core-js/internals/string-multibyte.js","../node_modules/core-js/modules/es.string.iterator.js","../node_modules/core-js/internals/dom-iterables.js","../node_modules/core-js/internals/dom-token-list-prototype.js","../node_modules/core-js/modules/web.dom-collections.iterator.js","../node_modules/core-js/internals/array-fill.js","../node_modules/core-js/modules/es.array.fill.js","../node_modules/core-js/internals/is-array.js","../node_modules/core-js/internals/create-property.js","../node_modules/core-js/internals/array-method-has-species-support.js","../node_modules/core-js/modules/es.array.slice.js","../node_modules/tslib/tslib.es6.js","../node_modules/eventemitter3/index.js","../node_modules/lodash-es/isArray.js","../node_modules/lodash-es/castArray.js","../node_modules/core-js/internals/array-species-constructor.js","../node_modules/core-js/internals/array-species-create.js","../node_modules/core-js/internals/array-iteration.js","../node_modules/core-js/modules/es.array.map.js","../node_modules/core-js/internals/object-assign.js","../node_modules/core-js/modules/es.object.assign.js","../node_modules/core-js/internals/array-slice-simple.js","../node_modules/core-js/internals/object-get-own-property-names-external.js","../node_modules/core-js/internals/array-buffer-non-extensible.js","../node_modules/core-js/internals/object-is-extensible.js","../node_modules/core-js/internals/freezing.js","../node_modules/core-js/internals/internal-metadata.js","../node_modules/core-js/internals/inherit-if-required.js","../node_modules/core-js/internals/collection.js","../node_modules/core-js/internals/define-built-ins.js","../node_modules/core-js/internals/collection-weak.js","../../src/constant.ts","../node_modules/core-js/modules/es.weak-set.constructor.js","../../src/calendar/Navigator.ts","../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../node_modules/core-js/modules/es.array.concat.js","../node_modules/core-js/internals/array-method-is-strict.js","../node_modules/core-js/modules/es.array.join.js","../node_modules/core-js/internals/collection-strong.js","../node_modules/core-js/modules/es.map.constructor.js","../node_modules/core-js/internals/delete-property-or-throw.js","../node_modules/core-js/internals/array-sort.js","../node_modules/core-js/internals/engine-ff-version.js","../node_modules/core-js/internals/engine-is-ie-or-edge.js","../node_modules/core-js/internals/engine-webkit-version.js","../node_modules/core-js/modules/es.array.sort.js","../node_modules/core-js/internals/array-for-each.js","../node_modules/core-js/modules/web.dom-collections.for-each.js","../../src/helpers/PositionHelper.ts","../../src/domain/DomainCoordinates.ts","../../src/domain/DomainPainter.ts","../node_modules/core-js/modules/es.array.includes.js","../node_modules/core-js/modules/es.array.filter.js","../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../node_modules/core-js/internals/array-from.js","../node_modules/core-js/modules/es.array.from.js","../../src/calendar/DomainCollection.ts","../../src/domain/DomainLabelPainter.ts","../node_modules/core-js/internals/whitespaces.js","../node_modules/core-js/internals/string-trim.js","../node_modules/core-js/internals/string-trim-forced.js","../node_modules/core-js/modules/es.string.trim.js","../../src/subDomain/SubDomainPainter.ts","../../src/domain/DomainsContainerPainter.ts","../../src/plugins/PluginPainter.ts","../../src/calendar/CalendarPainter.ts","../node_modules/lodash-es/_freeGlobal.js","../node_modules/lodash-es/_root.js","../node_modules/lodash-es/_Symbol.js","../node_modules/lodash-es/_getRawTag.js","../node_modules/lodash-es/_objectToString.js","../node_modules/lodash-es/_baseGetTag.js","../node_modules/lodash-es/isObject.js","../node_modules/lodash-es/isFunction.js","../node_modules/core-js/modules/es.object.keys.js","../node_modules/core-js/internals/is-regexp.js","../node_modules/core-js/modules/es.string.starts-with.js","../node_modules/core-js/internals/not-a-regexp.js","../node_modules/core-js/internals/correct-is-regexp-logic.js","../node_modules/core-js/internals/object-to-array.js","../node_modules/core-js/modules/es.object.entries.js","../node_modules/@observablehq/plot/src/defined.js","../node_modules/isoformat/src/parse.js","../node_modules/@observablehq/plot/src/time.js","../node_modules/@observablehq/plot/src/options.js","../node_modules/@observablehq/plot/src/scales/index.js","../node_modules/@observablehq/plot/src/symbol.js","../node_modules/@observablehq/plot/src/warnings.js","../node_modules/@observablehq/plot/src/scales/schemes.js","../node_modules/@observablehq/plot/src/scales/quantitative.js","../node_modules/@observablehq/plot/src/scales/diverging.js","../node_modules/@observablehq/plot/src/scales/temporal.js","../node_modules/@observablehq/plot/src/scales/ordinal.js","../node_modules/@observablehq/plot/src/scales.js","../../src/scale.ts","../../src/calendar/Populator.ts","../node_modules/lodash-es/eq.js","../node_modules/lodash-es/_assocIndexOf.js","../node_modules/lodash-es/_listCacheDelete.js","../node_modules/lodash-es/_ListCache.js","../node_modules/lodash-es/_listCacheClear.js","../node_modules/lodash-es/_listCacheGet.js","../node_modules/lodash-es/_listCacheHas.js","../node_modules/lodash-es/_listCacheSet.js","../node_modules/lodash-es/_coreJsData.js","../node_modules/lodash-es/_isMasked.js","../node_modules/lodash-es/_toSource.js","../node_modules/lodash-es/_baseIsNative.js","../node_modules/lodash-es/_getNative.js","../node_modules/lodash-es/_getValue.js","../node_modules/lodash-es/_Map.js","../node_modules/lodash-es/_nativeCreate.js","../node_modules/lodash-es/_hashGet.js","../node_modules/lodash-es/_hashHas.js","../node_modules/lodash-es/_Hash.js","../node_modules/lodash-es/_getMapData.js","../node_modules/lodash-es/_isKeyable.js","../node_modules/lodash-es/_MapCache.js","../node_modules/lodash-es/_hashClear.js","../node_modules/lodash-es/_hashDelete.js","../node_modules/lodash-es/_hashSet.js","../node_modules/lodash-es/_mapCacheClear.js","../node_modules/lodash-es/_mapCacheDelete.js","../node_modules/lodash-es/_mapCacheGet.js","../node_modules/lodash-es/_mapCacheHas.js","../node_modules/lodash-es/_mapCacheSet.js","../node_modules/lodash-es/_Stack.js","../node_modules/lodash-es/_stackClear.js","../node_modules/lodash-es/_stackDelete.js","../node_modules/lodash-es/_stackGet.js","../node_modules/lodash-es/_stackHas.js","../node_modules/lodash-es/_stackSet.js","../node_modules/lodash-es/_defineProperty.js","../node_modules/lodash-es/_baseAssignValue.js","../node_modules/lodash-es/_assignMergeValue.js","../node_modules/lodash-es/_baseFor.js","../node_modules/lodash-es/_createBaseFor.js","../node_modules/lodash-es/_cloneBuffer.js","../node_modules/lodash-es/_Uint8Array.js","../node_modules/lodash-es/_cloneTypedArray.js","../node_modules/lodash-es/_cloneArrayBuffer.js","../node_modules/lodash-es/_baseCreate.js","../node_modules/lodash-es/_overArg.js","../node_modules/lodash-es/_getPrototype.js","../node_modules/lodash-es/_isPrototype.js","../node_modules/lodash-es/isObjectLike.js","../node_modules/lodash-es/_baseIsArguments.js","../node_modules/lodash-es/isArguments.js","../node_modules/lodash-es/isLength.js","../node_modules/lodash-es/isArrayLike.js","../node_modules/lodash-es/isBuffer.js","../node_modules/lodash-es/stubFalse.js","../node_modules/lodash-es/isPlainObject.js","../node_modules/lodash-es/_baseIsTypedArray.js","../node_modules/lodash-es/_nodeUtil.js","../node_modules/lodash-es/_baseUnary.js","../node_modules/lodash-es/isTypedArray.js","../node_modules/lodash-es/_safeGet.js","../node_modules/lodash-es/_assignValue.js","../node_modules/lodash-es/_isIndex.js","../node_modules/lodash-es/_arrayLikeKeys.js","../node_modules/lodash-es/_baseTimes.js","../node_modules/lodash-es/_baseKeysIn.js","../node_modules/lodash-es/_nativeKeysIn.js","../node_modules/lodash-es/keysIn.js","../node_modules/lodash-es/toPlainObject.js","../node_modules/lodash-es/_copyObject.js","../node_modules/lodash-es/_baseMergeDeep.js","../node_modules/lodash-es/isArrayLikeObject.js","../node_modules/lodash-es/_copyArray.js","../node_modules/lodash-es/_initCloneObject.js","../node_modules/lodash-es/_baseMerge.js","../node_modules/lodash-es/identity.js","../node_modules/lodash-es/_overRest.js","../node_modules/lodash-es/_baseSetToString.js","../node_modules/lodash-es/constant.js","../node_modules/lodash-es/_shortOut.js","../node_modules/lodash-es/_setToString.js","../node_modules/lodash-es/_baseRest.js","../node_modules/lodash-es/_apply.js","../node_modules/lodash-es/mergeWith.js","../node_modules/lodash-es/_createAssigner.js","../node_modules/lodash-es/_isIterateeCall.js","../node_modules/lodash-es/_SetCache.js","../node_modules/lodash-es/_arraySome.js","../node_modules/lodash-es/_setCacheAdd.js","../node_modules/lodash-es/_setCacheHas.js","../node_modules/lodash-es/_equalArrays.js","../node_modules/lodash-es/_cacheHas.js","../node_modules/lodash-es/_mapToArray.js","../node_modules/lodash-es/_setToArray.js","../node_modules/lodash-es/_equalByTag.js","../node_modules/lodash-es/_getSymbols.js","../node_modules/lodash-es/_arrayFilter.js","../node_modules/lodash-es/stubArray.js","../node_modules/lodash-es/_nativeKeys.js","../node_modules/lodash-es/_baseKeys.js","../node_modules/lodash-es/keys.js","../node_modules/lodash-es/_getAllKeys.js","../node_modules/lodash-es/_baseGetAllKeys.js","../node_modules/lodash-es/_arrayPush.js","../node_modules/lodash-es/_equalObjects.js","../node_modules/lodash-es/_DataView.js","../node_modules/lodash-es/_Promise.js","../node_modules/lodash-es/_Set.js","../node_modules/lodash-es/_WeakMap.js","../node_modules/lodash-es/_getTag.js","../node_modules/lodash-es/_baseIsEqualDeep.js","../node_modules/lodash-es/_baseIsEqual.js","../node_modules/lodash-es/isEqual.js","../node_modules/lodash-es/_baseHas.js","../node_modules/lodash-es/isSymbol.js","../node_modules/lodash-es/_isKey.js","../node_modules/lodash-es/memoize.js","../node_modules/lodash-es/_stringToPath.js","../node_modules/lodash-es/_memoizeCapped.js","../node_modules/lodash-es/_baseToString.js","../node_modules/lodash-es/_arrayMap.js","../node_modules/lodash-es/_castPath.js","../node_modules/lodash-es/toString.js","../node_modules/lodash-es/_toKey.js","../node_modules/lodash-es/has.js","../node_modules/lodash-es/_hasPath.js","../node_modules/lodash-es/get.js","../node_modules/lodash-es/_baseGet.js","../node_modules/lodash-es/set.js","../node_modules/lodash-es/_baseSet.js","../../src/options/OptionsPreProcessors.ts","../node_modules/core-js/internals/regexp-exec.js","../node_modules/lodash-es/isString.js","../../src/options/Options.ts","../node_modules/core-js/internals/regexp-flags.js","../node_modules/core-js/internals/regexp-sticky-helpers.js","../node_modules/core-js/internals/regexp-unsupported-dot-all.js","../node_modules/core-js/internals/regexp-unsupported-ncg.js","../node_modules/core-js/modules/es.regexp.exec.js","../node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","../node_modules/core-js/internals/advance-string-index.js","../node_modules/core-js/internals/get-substitution.js","../node_modules/core-js/internals/regexp-exec-abstract.js","../node_modules/core-js/modules/es.string.replace.js","../../src/DataFetcher.ts","../node_modules/core-js/modules/es.function.name.js","../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/weekOfYear.js","../node_modules/dayjs/plugin/dayOfYear.js","../node_modules/dayjs/plugin/weekday.js","../node_modules/dayjs/plugin/minMax.js","../node_modules/dayjs/plugin/isoWeeksInYear.js","../node_modules/dayjs/plugin/isoWeek.js","../node_modules/dayjs/plugin/isLeapYear.js","../node_modules/dayjs/plugin/advancedFormat.js","../node_modules/dayjs/plugin/utc.js","../node_modules/dayjs/plugin/timezone.js","../node_modules/dayjs/plugin/localeData.js","../node_modules/dayjs/plugin/localizedFormat.js","../node_modules/dayjs/plugin/updateLocale.js","../../src/helpers/DateHelper.ts","../node_modules/core-js/modules/es.string.includes.js","../../src/options/OptionsValidator.ts","../node_modules/core-js/modules/es.set.constructor.js","../../src/plugins/PluginManager.ts","../../src/templates/index.ts","../../src/templates/minute.ts","../../src/templates/hour.ts","../../src/templates/day.ts","../../src/templates/xDay.ts","../../src/templates/ghDay.ts","../../src/templates/week.ts","../../src/templates/month.ts","../../src/templates/year.ts","../../src/TemplateCollection.ts","../../src/CalHeatmap.ts","../../src/version.ts"],"sourcesContent":["'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = lengthOfArrayLike(O);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fill = require('../internals/array-fill');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.fill` method\n// https://tc39.es/ecma262/#sec-array.prototype.fill\n$({ target: 'Array', proto: true }, {\n fill: fill\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('fill');\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nexport default isArray;\n","import isArray from './isArray.js';\n\n/**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\nfunction castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n}\n\nexport default castArray;\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","import { ScrollDirection } from '../constant';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type DomainCollection from './DomainCollection';\nimport type { Timestamp } from '../index';\n\nexport default class Navigator {\n calendar: CalHeatmap;\n\n minDomainReached: boolean;\n\n maxDomainReached: boolean;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.maxDomainReached = false;\n this.minDomainReached = false;\n }\n\n loadNewDomains(\n newDomainCollection: DomainCollection,\n direction: ScrollDirection = ScrollDirection.SCROLL_NONE,\n ): ScrollDirection {\n const { options } = this.calendar.options;\n const templatesClt = this.calendar.templateCollection;\n const minDate = options.date.min ?\n templatesClt.get(options.domain.type)!.extractUnit(+options.date.min) :\n undefined;\n const maxDate = options.date.max ?\n templatesClt.get(options.domain.type)!.extractUnit(+options.date.max) :\n undefined;\n const { domainCollection } = this.calendar;\n\n if (\n this.#isDomainBoundaryReached(\n newDomainCollection,\n minDate,\n maxDate,\n direction,\n )\n ) {\n return ScrollDirection.SCROLL_NONE;\n }\n\n if (direction !== ScrollDirection.SCROLL_NONE) {\n newDomainCollection\n .clamp(minDate, maxDate)\n .slice(options.range, direction === ScrollDirection.SCROLL_FORWARD);\n }\n\n domainCollection.merge(\n newDomainCollection,\n options.range,\n (domainKey: Timestamp, index: number) => {\n let subDomainEndDate = null;\n if (newDomainCollection.at(index + 1)) {\n subDomainEndDate = newDomainCollection.at(index + 1);\n } else {\n subDomainEndDate = this.calendar.dateHelper\n .intervals(options.domain.type, domainKey, 2)\n .pop();\n }\n return templatesClt\n .get(options.subDomain.type)!\n .mapping(domainKey, subDomainEndDate!)\n .map((d) => ({ ...d, v: options.data.defaultValue }));\n },\n );\n\n this.#setDomainsBoundaryReached(\n domainCollection.min,\n domainCollection.max,\n minDate,\n maxDate,\n );\n\n if (direction === ScrollDirection.SCROLL_BACKWARD) {\n this.calendar.eventEmitter.emit('domainsLoaded', [domainCollection.min]);\n } else if (direction === ScrollDirection.SCROLL_FORWARD) {\n this.calendar.eventEmitter.emit('domainsLoaded', [domainCollection.max]);\n }\n\n return direction;\n }\n\n jumpTo(date: Date, reset: boolean): ScrollDirection {\n const { domainCollection, options } = this.calendar;\n const minDate = new Date(domainCollection.min!);\n const maxDate = new Date(domainCollection.max!);\n\n if (date < minDate) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(date, minDate, false),\n ScrollDirection.SCROLL_BACKWARD,\n );\n }\n if (reset) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(date, options.options.range),\n minDate < date ?\n ScrollDirection.SCROLL_FORWARD :\n ScrollDirection.SCROLL_BACKWARD,\n );\n }\n\n if (date > maxDate) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(maxDate, date, false),\n ScrollDirection.SCROLL_FORWARD,\n );\n }\n\n return ScrollDirection.SCROLL_NONE;\n }\n\n #isDomainBoundaryReached(\n newDomainCollection: DomainCollection,\n minDate?: Timestamp,\n maxDate?: Timestamp,\n direction?: ScrollDirection,\n ): boolean {\n if (\n maxDate &&\n newDomainCollection.max! >= maxDate &&\n this.maxDomainReached &&\n direction === ScrollDirection.SCROLL_FORWARD\n ) {\n return true;\n }\n\n if (\n minDate &&\n newDomainCollection.min! <= minDate &&\n this.minDomainReached &&\n direction === ScrollDirection.SCROLL_BACKWARD\n ) {\n return true;\n }\n\n return false;\n }\n\n #setDomainsBoundaryReached(\n lowerBound: Timestamp,\n upperBound: Timestamp,\n min?: Timestamp,\n max?: Timestamp,\n ): void {\n if (min) {\n const reached = lowerBound <= min;\n this.calendar.eventEmitter.emit(\n reached ? 'minDateReached' : 'minDateNotReached',\n );\n this.minDomainReached = reached;\n }\n if (max) {\n const reached = upperBound >= max;\n this.calendar.eventEmitter.emit(\n reached ? 'maxDateReached' : 'maxDateNotReached',\n );\n this.maxDomainReached = reached;\n }\n }\n}\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key === key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first === entry) state.first = next;\n if (state.last === entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind === 'keys') return createIterResultObject(entry.key, false);\n if (kind === 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","'use strict';\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","'use strict';\nvar UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar nativeSort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = lengthOfArrayLike(items);\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","import { Position } from '../constant';\nimport type { Padding } from '../options/Options';\n\nexport function isHorizontal(position: string): boolean {\n return position === 'left' || position === 'right';\n}\n\nexport function isVertical(position: string): boolean {\n return position === 'top' || position === 'bottom';\n}\n\nexport function horizontalPadding(padding: Padding): number {\n return padding[Position.LEFT] + padding[Position.RIGHT];\n}\n\nexport function verticalPadding(padding: Padding): number {\n return padding[Position.TOP] + padding[Position.BOTTOM];\n}\n","import { ScrollDirection } from '../constant';\nimport { horizontalPadding, verticalPadding } from '../helpers/PositionHelper';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type DomainPainter from './DomainPainter';\nimport type DomainCollection from '../calendar/DomainCollection';\nimport type { SubDomain, Dimensions, Timestamp } from '../index';\n\ntype SubDomainWithCoordinates = Required & {\n pre_x: number;\n pre_y: number;\n width: number;\n height: number;\n inner_width: number;\n inner_height: number;\n};\n\nexport default class DomainCoordinates {\n calendar: CalHeatmap;\n\n domainPainter: DomainPainter;\n\n collection: Map;\n\n scrollDirection: ScrollDirection;\n\n constructor(calendar: CalHeatmap, domainPainter: DomainPainter) {\n this.calendar = calendar;\n this.domainPainter = domainPainter;\n this.collection = new Map();\n this.scrollDirection = ScrollDirection.SCROLL_FORWARD;\n }\n\n get(domainKey: Timestamp): SubDomainWithCoordinates | undefined {\n return this.collection.get(domainKey);\n }\n\n update(collection: DomainCollection, scrollDirection: ScrollDirection) {\n const { verticalOrientation, domain } = this.calendar.options.options;\n\n this.scrollDirection = scrollDirection;\n const dimensions: Dimensions = {\n width: 0,\n height: 0,\n };\n let exitingTotal = 0;\n let scrollFactor =\n scrollDirection === ScrollDirection.SCROLL_FORWARD ? -1 : 1;\n const { keys } = collection;\n if (this.calendar.options.options.domain.sort === 'desc') {\n keys.reverse();\n scrollFactor *= -1;\n }\n\n collection.yankedDomains.forEach((domainKey: Timestamp) => {\n exitingTotal +=\n this.collection.get(domainKey)![\n verticalOrientation ? 'height' : 'width'\n ];\n });\n collection.yankedDomains.forEach((domainKey: Timestamp) => {\n const coor = this.collection.get(domainKey)!;\n this.collection.set(domainKey, {\n ...coor,\n x: verticalOrientation ? coor.x : coor.x + exitingTotal * scrollFactor,\n y: verticalOrientation ? coor.y + exitingTotal * scrollFactor : coor.y,\n });\n });\n\n keys.forEach((domainKey: Timestamp) => {\n const w = this.#getWidth(domainKey);\n const h = this.#getHeight(domainKey);\n if (verticalOrientation) {\n dimensions.height += h;\n dimensions.width = Math.max(w, dimensions.width);\n } else {\n dimensions.width += w;\n dimensions.height = Math.max(h, dimensions.height);\n }\n\n const x = dimensions.width - w;\n const y = dimensions.height - h;\n\n this.collection.set(domainKey, {\n ...this.collection.get(domainKey)!,\n x: verticalOrientation ? 0 : x,\n y: verticalOrientation ? y : 0,\n pre_x: verticalOrientation ? x : x - exitingTotal * scrollFactor,\n pre_y: verticalOrientation ? y - exitingTotal * scrollFactor : y,\n width: w,\n height: h,\n inner_width: w - (verticalOrientation ? 0 : domain.gutter),\n inner_height: h - (!verticalOrientation ? 0 : domain.gutter),\n });\n });\n\n return dimensions;\n }\n\n /**\n * Return the full width of the domain block\n * @param {number} d Domain start timestamp\n * @return {number} The full width of the domain,\n * including all padding and gutter\n * Used to compute the x position of the domains on the x axis\n */\n #getWidth(d: Timestamp): number {\n const {\n domain, subDomain, x, verticalOrientation,\n } =\n this.calendar.options.options;\n const columnsCount = this.calendar.templateCollection\n .get(subDomain.type)!\n .columnsCount(d);\n\n const subDomainWidth =\n (subDomain.width + subDomain.gutter) * columnsCount - subDomain.gutter;\n\n return (\n horizontalPadding(domain.padding) +\n x.domainHorizontalLabelWidth +\n (verticalOrientation ? 0 : domain.gutter) +\n subDomainWidth\n );\n }\n\n /**\n * Return the full height of the domain block\n * @param {number} d Domain start timestamp\n * @return {number} The full height of the domain,\n * including all paddings and gutter.\n * Used to compute the y position of the domains on the y axis\n */\n #getHeight(d: Timestamp): number {\n const {\n domain, subDomain, x, verticalOrientation,\n } =\n this.calendar.options.options;\n const rowsCount = this.calendar.templateCollection\n .get(subDomain.type)!\n .rowsCount(d);\n\n const subDomainHeight =\n (subDomain.height + subDomain.gutter) * rowsCount - subDomain.gutter;\n\n return (\n verticalPadding(domain.padding) +\n subDomainHeight +\n (verticalOrientation ? domain.gutter : 0) +\n x.domainVerticalLabelHeight\n );\n }\n}\n","import DomainCoordinates from './DomainCoordinates';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { ScrollDirection } from '../constant';\nimport type { Dimensions, Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '.ch-domain';\n\nexport default class DomainPainter {\n calendar: CalHeatmap;\n\n coordinates: DomainCoordinates;\n\n root: any;\n\n dimensions: Dimensions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.coordinates = new DomainCoordinates(calendar, this);\n this.root = null;\n\n // Dimensions of the internal area containing all the domains\n // Excluding all surrounding margins\n this.dimensions = {\n width: 0,\n height: 0,\n };\n }\n\n paint(scrollDirection: ScrollDirection, rootNode: any): Promise[] {\n const { animationDuration } = this.calendar.options.options;\n const t = rootNode.transition().duration(animationDuration);\n const coor = this.coordinates;\n\n this.dimensions = coor.update(\n this.calendar.domainCollection,\n scrollDirection,\n );\n\n const promises: Promise[] = [];\n\n this.root = rootNode\n .selectAll(DEFAULT_SELECTOR)\n .data(this.calendar.domainCollection.keys, (d: Timestamp) => d)\n .join(\n (enter: any) => enter\n .append('svg')\n .attr('x', (d: Timestamp) => coor.get(d)!.pre_x)\n .attr('y', (d: Timestamp) => coor.get(d)!.pre_y)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .attr('class', (d: Timestamp) => this.#getClassName(d))\n .call((enterSelection: any) => enterSelection\n .append('rect')\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .call((enterSelection: any) => promises.push(\n enterSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .end(),\n )),\n (update: any) => update\n .call((updateSelection: any) => promises.push(\n updateSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .end(),\n ))\n .call((updateSelection: any) => promises.push(\n updateSelection\n .selectAll(`${DEFAULT_SELECTOR}-bg`)\n .transition(t)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .end(),\n )),\n (exit: any) => exit.call((exitSelection: any) => promises.push(\n exitSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .remove()\n .end(),\n )),\n );\n\n return promises;\n }\n\n #getClassName(d: Timestamp): string {\n let classname = DEFAULT_SELECTOR.slice(1);\n const helper = this.calendar.dateHelper.date(d);\n\n switch (this.calendar.options.options.domain.type) {\n case 'hour':\n classname += ` h_${helper.hour()}`;\n break;\n case 'day':\n classname += ` d_${helper.date()} dy_${helper.format('d') + 1}`;\n break;\n case 'week':\n classname += ` w_${helper.week()}`;\n break;\n case 'month':\n classname += ` m_${helper.month() + 1}`;\n break;\n case 'year':\n classname += ` y_${helper.year()}`;\n break;\n default:\n }\n return classname;\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n // eslint-disable-next-line es/no-array-prototype-includes -- detection\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","import castArray from 'lodash-es/castArray';\n\nimport type { SubDomain } from '../index';\nimport type {\n DataOptions,\n DataGroupType,\n DataRecord,\n} from '../options/Options';\nimport { DomainType, Timestamp } from '../index';\nimport type DateHelper from '../helpers/DateHelper';\n\nexport const DOMAIN_FORMAT: Record = {\n year: 'YYYY',\n month: 'MMMM',\n week: 'wo [week] YYYY',\n xDay: 'Do MMM',\n ghDay: 'Do MMM',\n day: 'Do MMM',\n hour: 'HH:00',\n minute: 'HH:mm',\n};\n\ntype GroupedRecords = Map;\ntype ValueType = string | number | null;\n\nexport default class DomainCollection {\n collection: Map;\n\n dateHelper: DateHelper;\n\n min: Timestamp;\n\n max: Timestamp;\n\n keys: Timestamp[];\n\n yankedDomains: Timestamp[];\n\n constructor(\n dateHelper: DateHelper,\n interval?: DomainType,\n start?: Date | Timestamp,\n range?: Date | Timestamp,\n excludeEnd: boolean = false,\n ) {\n this.collection = new Map();\n this.dateHelper = dateHelper;\n\n if (interval && start && range) {\n const ts = this.dateHelper\n .intervals(interval, start, range, excludeEnd)\n .map((d: Timestamp) => castArray(d));\n\n // @ts-ignore\n this.collection = new Map(ts);\n }\n\n this.min = 0;\n this.max = 0;\n this.keys = [];\n this.yankedDomains = [];\n\n if (this.collection.size > 0) {\n this.#refreshKeys();\n }\n }\n\n has(key: Timestamp): boolean {\n return this.collection.has(key);\n }\n\n get(key: Timestamp) {\n return this.collection.get(key);\n }\n\n forEach(callback: any) {\n return this.collection.forEach(callback);\n }\n\n at(index: number): Timestamp {\n return this.keys[index];\n }\n\n clamp(minDate?: Timestamp, maxDate?: Timestamp): DomainCollection {\n if (minDate && this.min! < minDate) {\n this.keys\n .filter((key) => key < minDate)\n .forEach((d) => this.collection.delete(d));\n }\n\n if (maxDate && this.max! > maxDate) {\n this.keys\n .filter((key) => key > maxDate)\n .forEach((d) => this.collection.delete(d));\n }\n\n this.#refreshKeys();\n\n return this;\n }\n\n merge(\n newCollection: DomainCollection,\n limit: number,\n createValueCallback: Function,\n ): void {\n this.yankedDomains = [];\n\n newCollection.keys.forEach((domainKey, index) => {\n if (this.has(domainKey)) {\n return;\n }\n\n if (this.collection.size >= limit) {\n let keyToRemove = this.max;\n\n if (domainKey > this.max!) {\n keyToRemove = this.min;\n }\n\n if (keyToRemove && this.collection.delete(keyToRemove)) {\n this.yankedDomains.push(keyToRemove);\n }\n }\n this.collection.set(domainKey, createValueCallback(domainKey, index));\n this.#refreshKeys();\n });\n this.yankedDomains = this.yankedDomains.sort((a, b) => a - b);\n }\n\n slice(limit: number = 0, fromBeginning: boolean = true): DomainCollection {\n if (this.keys.length > limit) {\n const keysToDelete = fromBeginning ?\n this.keys.slice(0, -limit) :\n this.keys.slice(limit);\n\n keysToDelete.forEach((key) => {\n this.collection.delete(key);\n });\n\n this.#refreshKeys();\n }\n\n return this;\n }\n\n fill(\n data: DataRecord[],\n {\n x,\n y,\n groupY,\n defaultValue,\n }: {\n x: DataOptions['x'];\n y: DataOptions['y'];\n groupY: DataOptions['groupY'];\n defaultValue: DataOptions['defaultValue'];\n },\n subDomainKeyExtractor: Function,\n ): void {\n const groupedRecords: GroupedRecords = this.groupRecords(\n data,\n x,\n subDomainKeyExtractor,\n );\n\n this.keys.forEach((domainKey) => {\n const records = groupedRecords.get(domainKey) || {};\n this.#setSubDomainValues(domainKey, records, y, groupY, defaultValue);\n });\n }\n\n #setSubDomainValues(\n domainKey: Timestamp,\n records: { [key: string]: DataRecord[] },\n y: DataOptions['y'],\n groupY: DataOptions['groupY'],\n defaultValue: DataOptions['defaultValue'],\n ): void {\n this.get(domainKey)!.forEach((subDomain: SubDomain, index: number) => {\n let value: ValueType = defaultValue;\n if (records.hasOwnProperty(subDomain.t)) {\n value = this.groupValues(\n this.#extractValues(records[subDomain.t], y),\n groupY,\n );\n }\n\n this.get(domainKey)![index].v = value;\n });\n }\n\n groupRecords(\n data: DataRecord[],\n x: DataOptions['x'],\n subDomainKeyExtractor: Function,\n ): GroupedRecords {\n const results: GroupedRecords = new Map();\n const validSubDomainTimestamp: Map = new Map();\n this.keys.forEach((domainKey) => {\n this.get(domainKey)!.forEach((subDomain: SubDomain) => {\n validSubDomainTimestamp.set(subDomain.t, domainKey);\n });\n });\n\n data.forEach((d) => {\n const timestamp = this.extractTimestamp(d, x, subDomainKeyExtractor);\n\n if (validSubDomainTimestamp.has(timestamp)) {\n const domainKey = validSubDomainTimestamp.get(timestamp)!;\n const records = results.get(domainKey) || {};\n records[timestamp] ||= [];\n records[timestamp].push(d);\n\n results.set(domainKey, records);\n }\n });\n\n return results;\n }\n\n // eslint-disable-next-line class-methods-use-this\n #extractValues(data: DataRecord[], y: string | Function): ValueType[] {\n return data.map((d): ValueType => (typeof y === 'function' ? y(d) : d[y]));\n }\n\n // eslint-disable-next-line class-methods-use-this\n groupValues(\n values: ValueType[],\n groupFn: DataGroupType | ((values: ValueType[]) => ValueType),\n ): ValueType {\n const cleanedValues = values.filter((n) => n !== null);\n\n if (typeof groupFn === 'string') {\n if (cleanedValues.every((n) => typeof n === 'number')) {\n switch (groupFn) {\n case 'sum':\n return (cleanedValues as number[]).reduce((a, b) => a + b, 0);\n case 'count':\n return cleanedValues.length;\n case 'min':\n return Math.min(...(cleanedValues as number[])) || null;\n case 'max':\n return Math.max(...(cleanedValues as number[])) || null;\n case 'average':\n return cleanedValues.length > 0 ?\n (cleanedValues as number[]).reduce((a, b) => a + b, 0) /\n cleanedValues.length :\n null;\n default:\n return null;\n }\n }\n\n switch (groupFn) {\n case 'count':\n return cleanedValues.length;\n default:\n return null;\n }\n } else if (typeof groupFn === 'function') {\n return groupFn(cleanedValues);\n }\n\n return null;\n }\n\n // eslint-disable-next-line class-methods-use-this\n extractTimestamp(\n datum: DataRecord,\n x: string | Function,\n extractorFn: Function,\n ): Timestamp {\n let timestamp: string | Timestamp =\n typeof x === 'function' ? x(datum) : datum[x];\n\n if (typeof timestamp === 'string') {\n timestamp = +new Date(timestamp);\n }\n\n return extractorFn(timestamp);\n }\n\n #refreshKeys(): Timestamp[] {\n this.keys = Array.from(this.collection.keys())\n .map((d: any) => parseInt(d, 10))\n .sort((a, b) => a - b);\n\n const { keys } = this;\n // eslint-disable-next-line prefer-destructuring\n this.min = keys[0];\n this.max = keys[keys.length - 1];\n\n return this.keys;\n }\n}\n","import { Position } from '../constant';\nimport {\n isVertical,\n verticalPadding,\n horizontalPadding,\n} from '../helpers/PositionHelper';\nimport { DOMAIN_FORMAT } from '../calendar/DomainCollection';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '.ch-domain-text';\n\nexport default class DomainLabelPainter {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n paint(root: any): void {\n const { label, type } = this.calendar.options.options.domain;\n const { dateHelper } = this.calendar;\n let format = label.text;\n if (format === null || format === '') {\n return;\n }\n\n if (typeof format === 'undefined') {\n format = DOMAIN_FORMAT[type];\n }\n\n root\n .selectAll(DEFAULT_SELECTOR)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('text')\n .attr('class', DEFAULT_SELECTOR.slice(1))\n .attr('x', (d: Timestamp) => this.#getX(d))\n .attr('y', (d: Timestamp) => this.#getY(d))\n .attr('text-anchor', label.textAlign)\n .attr('dominant-baseline', () => this.#textVerticalAlign())\n .text((d: Timestamp, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n dateHelper.format(d, format!, nodes[i]))\n .call((selection: any) => this.#domainRotate(selection)),\n (update: any) => {\n update\n .attr('x', (d: Timestamp) => this.#getX(d))\n .attr('y', (d: Timestamp) => this.#getY(d))\n .attr('text-anchor', label.textAlign)\n .attr('dominant-baseline', () => this.#textVerticalAlign())\n .text((d: Timestamp, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n dateHelper.format(d, format!, nodes[i]))\n .call((selection: any) => this.#domainRotate(selection));\n },\n );\n }\n\n #textVerticalAlign(): string {\n const { position, rotate } = this.calendar.options.options.domain.label;\n\n if (isVertical(position)) {\n return 'middle';\n }\n\n if (\n (rotate === 'left' && position === 'left') ||\n (rotate === 'right' && position === 'right')\n ) {\n return 'bottom';\n }\n\n return 'hanging';\n }\n\n #getX(d: Timestamp): number {\n const {\n padding,\n label: { position, textAlign, offset },\n } = this.calendar.options.options.domain;\n const { domainHorizontalLabelWidth } = this.calendar.options.options.x;\n\n let x = padding[Position.LEFT];\n\n if (position === 'right') {\n x += this.#getDomainInsideWidth(d);\n }\n\n if (textAlign === 'middle') {\n if (['top', 'bottom'].includes(position)) {\n x += this.#getDomainInsideWidth(d) / 2;\n } else {\n x += domainHorizontalLabelWidth / 2;\n }\n }\n\n if (textAlign === 'end') {\n if (isVertical(position)) {\n x += this.#getDomainInsideWidth(d);\n } else {\n x += domainHorizontalLabelWidth;\n }\n }\n\n return x + offset.x;\n }\n\n #getY(d: Timestamp): number {\n const {\n domain: {\n label: { position, offset },\n padding,\n },\n x,\n } = this.calendar.options.options;\n\n let y = padding[Position.TOP] + x.domainVerticalLabelHeight / 2;\n\n if (position === 'bottom') {\n y += this.#getDomainInsideHeight(d);\n }\n\n return y + offset.y;\n }\n\n #getDomainInsideWidth(d: Timestamp): number {\n const {\n domain: { padding },\n x: { domainHorizontalLabelWidth },\n } = this.calendar.options.options;\n const { coordinates } =\n this.calendar.calendarPainter.domainsContainerPainter.domainPainter;\n\n return (\n coordinates.get(d)!.inner_width -\n domainHorizontalLabelWidth -\n horizontalPadding(padding)\n );\n }\n\n #getDomainInsideHeight(d: Timestamp): number {\n const {\n x: { domainVerticalLabelHeight },\n domain: { padding },\n } = this.calendar.options.options;\n const { coordinates } =\n this.calendar.calendarPainter.domainsContainerPainter.domainPainter;\n\n return (\n coordinates.get(d)!.inner_height -\n domainVerticalLabelHeight -\n verticalPadding(padding)\n );\n }\n\n #domainRotate(selection: any) {\n const {\n domain: {\n label: { rotate, textAlign, position },\n },\n x,\n } = this.calendar.options.options;\n const labelWidth = x.domainHorizontalLabelWidth;\n\n switch (rotate) {\n // Rotating the text clockwise\n case 'right':\n selection.attr('transform', (d: Timestamp) => {\n const domainWidth = this.#getDomainInsideWidth(d);\n const domainHeight = this.#getDomainInsideHeight(d);\n const s = [\n `rotate(90, ${position === 'right' ? domainWidth : labelWidth}, 0)`,\n ];\n\n switch (position) {\n case 'right':\n if (textAlign === 'middle') {\n s.push(`translate(${domainHeight / 2 - labelWidth / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(${domainHeight - labelWidth})`);\n }\n break;\n case 'left':\n if (textAlign === 'start') {\n s.push(`translate(${labelWidth})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(${labelWidth / 2 + domainHeight / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(${domainHeight})`);\n }\n break;\n default:\n }\n\n return s.join(',');\n });\n break;\n // Rotating the text anticlockwise\n case 'left':\n selection.attr('transform', (d: Timestamp) => {\n const domainWidth = this.#getDomainInsideWidth(d);\n const domainHeight = this.#getDomainInsideHeight(d);\n const s = [\n `rotate(270, ${\n position === 'right' ? domainWidth : labelWidth\n }, 0)`,\n ];\n\n switch (position) {\n case 'right':\n if (textAlign === 'start') {\n s.push(`translate(-${domainHeight})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(-${domainHeight / 2 + labelWidth / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(-${labelWidth})`);\n }\n break;\n case 'left':\n if (textAlign === 'start') {\n s.push(`translate(${labelWidth - domainHeight})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(${labelWidth / 2 - domainHeight / 2})`);\n }\n break;\n default:\n }\n\n return s.join(',');\n });\n break;\n default:\n }\n }\n}\n","'use strict';\n// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { Position } from '../constant';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp, SubDomain } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-subdomain';\nconst HIGHLIGHT_CLASSNAME = 'highlight';\n\nexport default class SubDomainPainter {\n calendar: CalHeatmap;\n\n root: any;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n }\n\n paint(root: any): void {\n this.root = root || this.root;\n const containerClassname = `${DEFAULT_SELECTOR}-container`;\n\n const subDomainSvgGroup = this.root\n .selectAll(containerClassname)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('svg')\n .call((selection: any) => this.#setPositions(selection))\n .attr('class', containerClassname.slice(1)),\n\n (update: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n update.call((selection: any) => this.#setPositions(selection)),\n );\n\n const {\n subDomain: {\n radius, width, height, sort,\n },\n } = this.calendar.options.options;\n const evt = this.calendar.eventEmitter;\n\n subDomainSvgGroup\n .selectAll('g')\n .data((d: Timestamp) => {\n const subDomainsCollection: SubDomain[] =\n this.calendar.domainCollection.get(d)!;\n if (sort === 'desc') {\n const max = Math.max(\n ...subDomainsCollection.map((s: SubDomain) => s.x),\n );\n subDomainsCollection.forEach((s: SubDomain, i: number) => {\n subDomainsCollection[i].x = Math.abs(s.x - max);\n });\n }\n\n return subDomainsCollection;\n })\n .join(\n (enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .insert('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .on('click', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('click', ev, d.t, d.v))\n .on('mouseover', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseover', ev, d.t, d.v))\n .on('mouseout', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseout', ev, d.t, d.v))\n .attr('rx', radius > 0 ? radius : null)\n .attr('ry', radius > 0 ? radius : null))\n .call((selection: any) => this.#appendText(selection)),\n (update: any) => update\n .selectAll('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .attr('rx', radius)\n .attr('ry', radius),\n );\n }\n\n /**\n * Set the subDomain group X and Y position\n * @param {d3-selection} selection A d3-selection object\n */\n #setPositions(selection: any): void {\n const { options } = this.calendar.options;\n const {\n padding,\n label: { position },\n } = options.domain;\n\n selection\n .attr('x', () => {\n let pos = padding[Position.LEFT];\n if (position === 'left') {\n pos += options.x.domainHorizontalLabelWidth;\n }\n return pos;\n })\n .attr('y', () => {\n let pos = padding[Position.TOP];\n if (position === 'top') {\n pos += options.x.domainVerticalLabelHeight;\n }\n return pos;\n });\n }\n\n /**\n * Return a classname if the specified date should be highlighted\n *\n * @param {number} timestamp Unix timestamp of the current subDomain\n * @return {String} the highlight class\n */\n #classname(timestamp: Timestamp, ...otherClasses: string[]): string {\n const {\n date: { highlight },\n subDomain: { type },\n } = this.calendar.options.options;\n let classname = '';\n\n if (highlight.length > 0) {\n highlight.forEach((d) => {\n const unitFn = this.calendar.templateCollection.get(type).extractUnit;\n\n if (unitFn(+d) === unitFn(timestamp)) {\n classname = HIGHLIGHT_CLASSNAME;\n }\n });\n }\n\n return [classname, ...otherClasses].join(' ').trim();\n }\n\n #appendText(elem: any) {\n const { width, height, label } = this.calendar.options.options.subDomain;\n\n if (!label) {\n return null;\n }\n\n return elem\n .append('text')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-text`))\n .attr('x', (d: SubDomain) => this.#getX(d) + width / 2)\n .attr('y', (d: SubDomain) => this.#getY(d) + height / 2)\n .attr('text-anchor', 'middle')\n .attr('dominant-baseline', 'central')\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.format(d.t, label, d.v, nodes[i]));\n }\n\n #getCoordinates(axis: 'x' | 'y', d: SubDomain): number {\n const { subDomain } = this.calendar.options.options;\n return (\n d[axis] *\n (subDomain[axis === 'x' ? 'width' : 'height'] + subDomain.gutter)\n );\n }\n\n #getX(d: SubDomain): number {\n return this.#getCoordinates('x', d);\n }\n\n #getY(d: SubDomain): number {\n return this.#getCoordinates('y', d);\n }\n}\n","import { select } from 'd3-selection';\nimport DomainPainter from './DomainPainter';\nimport DomainLabelPainter from './DomainLabelPainter';\nimport SubDomainPainter from '../subDomain/SubDomainPainter';\nimport { ScrollDirection } from '../constant';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Dimensions } from '../index';\n\nconst BASE_SELECTOR = '.ch-domain-container';\nconst TRANSITION_CLASSNAME = 'in-transition';\n\nclass DomainsContainerPainter {\n calendar: CalHeatmap;\n\n domainPainter: DomainPainter;\n\n domainLabelPainter: DomainLabelPainter;\n\n subDomainPainter: SubDomainPainter;\n\n dimensions: Dimensions;\n\n root: any;\n\n transitionsQueueCount: number;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n\n this.domainPainter = new DomainPainter(calendar);\n this.subDomainPainter = new SubDomainPainter(calendar);\n this.domainLabelPainter = new DomainLabelPainter(calendar);\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.transitionsQueueCount = 0;\n }\n\n setup() {\n this.root = this.calendar.calendarPainter.root\n .attr('x', 0)\n .attr('y', 0)\n .append('svg')\n .attr('class', BASE_SELECTOR.slice(1))\n .append('svg')\n .attr('class', `${BASE_SELECTOR.slice(1)}-animation-wrapper`);\n }\n\n paint(scrollDirection: ScrollDirection): Promise[] {\n this.#startAnimation();\n\n const result = this.domainPainter.paint(scrollDirection, this.root);\n this.subDomainPainter.paint(this.domainPainter.root);\n this.domainLabelPainter.paint(this.domainPainter.root);\n\n this.#recomputeDimensions();\n\n Promise.allSettled(result).then(() => {\n this.#endAnimation();\n });\n\n return result;\n }\n\n updatePosition() {\n if (!this.root?.node()) {\n return Promise.resolve();\n }\n\n const { animationDuration } = this.calendar.options.options;\n const topHeight = this.calendar.pluginManager.getHeightFromPosition('top');\n const leftWidth = this.calendar.pluginManager.getWidthFromPosition('left');\n\n return [\n select(this.root.node().parentNode)\n .transition()\n .duration(animationDuration)\n .call((selection: any) => {\n selection.attr('x', leftWidth).attr('y', topHeight);\n })\n .end(),\n ];\n }\n\n width(): Dimensions['width'] {\n return this.dimensions.width;\n }\n\n height(): Dimensions['height'] {\n return this.dimensions.height;\n }\n\n destroy(): Promise {\n this.#startAnimation();\n\n return Promise.resolve();\n }\n\n #startAnimation() {\n if (this.root?.node()) {\n this.transitionsQueueCount += 1;\n select(this.root.node().parentNode).classed(TRANSITION_CLASSNAME, true);\n }\n }\n\n #endAnimation() {\n if (this.root?.node()) {\n this.transitionsQueueCount -= 1;\n\n if (this.transitionsQueueCount === 0) {\n select(this.root.node().parentNode).classed(\n TRANSITION_CLASSNAME,\n false,\n );\n }\n }\n }\n\n #recomputeDimensions(): void {\n const {\n animationDuration,\n verticalOrientation,\n domain: { gutter },\n } = this.calendar.options.options;\n const { dimensions: domainsDimensions } = this.domainPainter;\n\n this.dimensions = {\n width: domainsDimensions.width - (verticalOrientation ? 0 : gutter),\n height: domainsDimensions.height - (!verticalOrientation ? 0 : gutter),\n };\n\n this.root\n .transition()\n .duration(animationDuration)\n .attr('width', this.dimensions.width)\n .attr('height', this.dimensions.height);\n }\n}\n\nexport default DomainsContainerPainter;\n","import type CalHeatmap from '../CalHeatmap';\n\nclass PluginPainter {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n paint(): Promise[] {\n let promises: Promise[] = [];\n\n promises = promises.concat(this.calendar.pluginManager.paintAll());\n promises = promises.concat(this.setPluginsPosition());\n\n return promises;\n }\n\n setPluginsPosition(): Promise[] {\n const { pluginManager } = this.calendar;\n const { animationDuration } = this.calendar.options.options;\n const { domainsContainerPainter } = this.calendar.calendarPainter;\n\n const top = pluginManager.getFromPosition('top');\n const right = pluginManager.getFromPosition('right');\n const bottom = pluginManager.getFromPosition('bottom');\n const left = pluginManager.getFromPosition('left');\n\n const topHeight = pluginManager.getHeightFromPosition('top');\n const leftWidth = pluginManager.getWidthFromPosition('left');\n\n const promises: Promise[] = [];\n\n let topOffset = 0;\n top.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('y', topOffset)\n .attr('x', leftWidth)\n .end(),\n );\n topOffset += plugin.options.dimensions!.height;\n });\n\n let leftOffset = 0;\n left.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftOffset)\n .attr('y', topHeight)\n .end(),\n );\n leftOffset += plugin.options.dimensions!.width;\n });\n\n bottom.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftWidth)\n .attr('y', topHeight + domainsContainerPainter.height())\n .end(),\n );\n });\n\n leftOffset += domainsContainerPainter.width();\n\n right.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftOffset)\n .attr('y', topHeight)\n .end(),\n );\n leftOffset += plugin.options.dimensions!.width;\n });\n\n return promises;\n }\n\n insideWidth() {\n return (\n this.calendar.pluginManager.getWidthFromPosition('left') +\n this.calendar.pluginManager.getWidthFromPosition('right')\n );\n }\n\n insideHeight() {\n return (\n this.calendar.pluginManager.getHeightFromPosition('top') +\n this.calendar.pluginManager.getHeightFromPosition('bottom')\n );\n }\n}\n\nexport default PluginPainter;\n","import { select } from 'd3-selection';\n\nimport DomainsContainerPainter from '../domain/DomainsContainerPainter';\nimport PluginPainter from '../plugins/PluginPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport { ScrollDirection } from '../constant';\nimport type { Dimensions } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-container';\n\nexport default class CalendarPainter {\n calendar: CalHeatmap;\n\n dimensions: Dimensions;\n\n root: any;\n\n domainsContainerPainter: DomainsContainerPainter;\n\n pluginPainter: PluginPainter;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.root = null;\n this.domainsContainerPainter = new DomainsContainerPainter(calendar);\n this.pluginPainter = new PluginPainter(calendar);\n }\n\n setup(): boolean {\n const { itemSelector, theme } = this.calendar.options.options;\n\n if (!this.root) {\n this.root = select(itemSelector)\n .append('svg')\n .attr('data-theme', theme)\n .attr('class', DEFAULT_SELECTOR.slice(1));\n this.domainsContainerPainter.setup();\n }\n\n this.calendar.pluginManager.setupAll();\n\n return true;\n }\n\n paint(navigationDir: ScrollDirection = ScrollDirection.SCROLL_NONE) {\n const transitions = this.domainsContainerPainter\n .paint(navigationDir)\n .concat(this.pluginPainter.paint())\n .concat(this.domainsContainerPainter.updatePosition());\n\n this.#resize();\n\n return Promise.allSettled(transitions);\n }\n\n #getHeight(): Dimensions['height'] {\n return (\n this.domainsContainerPainter.height() + this.pluginPainter.insideHeight()\n );\n }\n\n #getWidth(): Dimensions['width'] {\n return (\n this.domainsContainerPainter.width() + this.pluginPainter.insideWidth()\n );\n }\n\n #resize(): void {\n const { options } = this.calendar.options;\n\n const newWidth = this.#getWidth();\n const newHeight = this.#getHeight();\n\n this.root\n .transition()\n .duration(options.animationDuration)\n .attr('width', newWidth)\n .attr('height', newHeight);\n\n if (\n newWidth !== this.dimensions.width ||\n newHeight !== this.dimensions.height\n ) {\n this.calendar.eventEmitter.emit(\n 'resize',\n newWidth,\n newHeight,\n this.dimensions.width,\n this.dimensions.height,\n );\n }\n\n this.dimensions = {\n width: newWidth,\n height: newHeight,\n };\n }\n\n destroy(): Promise {\n const result: Promise[] = this.calendar.pluginManager\n .destroyAll()\n .concat(this.domainsContainerPainter.destroy());\n\n if (!this.root) {\n return Promise.allSettled(result);\n }\n\n result.push(\n this.root\n .transition()\n .duration(this.calendar.options.options.animationDuration)\n .attr('width', 0)\n .attr('height', 0)\n .remove()\n .end(),\n );\n\n return Promise.allSettled(result);\n }\n}\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nexport default freeGlobal;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nexport default root;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nexport default Symbol;\n","import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n","import Symbol from './_Symbol.js';\nimport getRawTag from './_getRawTag.js';\nimport objectToString from './_objectToString.js';\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nexport default baseGetTag;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isObject from './isObject.js';\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nexport default isFunction;\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-startswith -- safe\nvar nativeStartsWith = uncurryThis(''.startsWith);\nvar stringSlice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = toString(searchString);\n return nativeStartsWith\n ? nativeStartsWith(that, search, index)\n : stringSlice(that, index, index + search.length) === search;\n }\n});\n","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw new $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// in some IE versions, `propertyIsEnumerable` returns incorrect result on integer keys\n// of `null` prototype objects\nvar IE_BUG = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-create -- safe\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n});\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","// @ts-ignore\nimport { scale } from '@observablehq/plot';\nimport { OptionsType } from './options/Options';\nimport { SCALE_BASE_OPACITY_COLOR } from './constant';\n\nimport type { SubDomain } from './index';\n\ntype ValueType = string | number | undefined;\n\nexport function normalizedScale(scaleOptions: OptionsType['scale']): any {\n try {\n const scaleType = Object.keys(scaleOptions!)[0];\n\n return scale({\n [scaleType]: {\n ...scaleOptions![scaleType as 'color' | 'opacity'],\n clamp: true,\n },\n });\n } catch (error) {\n return null;\n }\n}\n\nfunction scaleStyle(_scale: any, scaleOptions: OptionsType['scale']) {\n const styles: { fill?: Function; 'fill-opacity'?: Function } = {};\n\n if (scaleOptions!.hasOwnProperty('opacity')) {\n styles.fill = () =>\n // eslint-disable-next-line implicit-arrow-linebreak\n scaleOptions!.opacity!.baseColor || SCALE_BASE_OPACITY_COLOR;\n styles['fill-opacity'] = (d: ValueType) => _scale?.apply(d);\n } else {\n styles.fill = (d: ValueType) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n (typeof d === 'string' && d?.startsWith('#') ? d : _scale?.apply(d));\n }\n\n return styles;\n}\n\nexport function applyScaleStyle(\n elem: any,\n _scale: any,\n scaleOptions: OptionsType['scale'],\n keyname?: string,\n) {\n Object.entries(scaleStyle(_scale, scaleOptions)).forEach(([prop, val]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n elem.style(prop, (d: SubDomain | string) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n val(keyname ? (d as SubDomain)[keyname as keyof SubDomain] : d)));\n}\n","import isFunction from 'lodash-es/isFunction';\nimport { hcl } from 'd3-color';\nimport { normalizedScale, applyScaleStyle } from '../scale';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { SubDomain, Timestamp } from '../index';\n\nexport default class Populator {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n populate(): void {\n const { calendar } = this;\n const { scale, subDomain } = calendar.options.options;\n const colorScale = normalizedScale(scale);\n\n calendar.calendarPainter\n .root!.selectAll('.ch-domain')\n .selectAll('svg')\n .selectAll('g')\n .data((d: Timestamp) => calendar.domainCollection.get(d) || [])\n .call((element: any) => {\n applyScaleStyle(element.select('rect'), colorScale, scale!, 'v');\n })\n .call((element: any) => {\n element\n .select('text')\n .attr('style', (d: SubDomain) => {\n const defaultColor =\n hcl(colorScale?.apply(d.v)).l > 60 ? '#000' : '#fff';\n let color = subDomain.color || (d.v ? defaultColor : null);\n\n if (isFunction(color)) {\n color = color(d.t, d.v, colorScale?.apply(d.v));\n }\n\n if (!color) {\n return null;\n }\n\n return `fill: ${color};`;\n })\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n calendar.dateHelper.format(d.t, subDomain.label, d.v, nodes[i]));\n })\n .call(() => {\n calendar.eventEmitter.emit('fill');\n });\n }\n}\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nexport default eq;\n","import eq from './eq.js';\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nexport default assocIndexOf;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nexport default listCacheDelete;\n","import listCacheClear from './_listCacheClear.js';\nimport listCacheDelete from './_listCacheDelete.js';\nimport listCacheGet from './_listCacheGet.js';\nimport listCacheHas from './_listCacheHas.js';\nimport listCacheSet from './_listCacheSet.js';\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nexport default ListCache;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nexport default listCacheClear;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nexport default listCacheGet;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nexport default listCacheHas;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nexport default listCacheSet;\n","import root from './_root.js';\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nexport default coreJsData;\n","import coreJsData from './_coreJsData.js';\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nexport default isMasked;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nexport default toSource;\n","import isFunction from './isFunction.js';\nimport isMasked from './_isMasked.js';\nimport isObject from './isObject.js';\nimport toSource from './_toSource.js';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nexport default baseIsNative;\n","import baseIsNative from './_baseIsNative.js';\nimport getValue from './_getValue.js';\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nexport default getNative;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nexport default getValue;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nexport default Map;\n","import getNative from './_getNative.js';\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nexport default nativeCreate;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nexport default hashGet;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nexport default hashHas;\n","import hashClear from './_hashClear.js';\nimport hashDelete from './_hashDelete.js';\nimport hashGet from './_hashGet.js';\nimport hashHas from './_hashHas.js';\nimport hashSet from './_hashSet.js';\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nexport default Hash;\n","import isKeyable from './_isKeyable.js';\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nexport default getMapData;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nexport default isKeyable;\n","import mapCacheClear from './_mapCacheClear.js';\nimport mapCacheDelete from './_mapCacheDelete.js';\nimport mapCacheGet from './_mapCacheGet.js';\nimport mapCacheHas from './_mapCacheHas.js';\nimport mapCacheSet from './_mapCacheSet.js';\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nexport default MapCache;\n","import nativeCreate from './_nativeCreate.js';\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nexport default hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default hashDelete;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nexport default hashSet;\n","import Hash from './_Hash.js';\nimport ListCache from './_ListCache.js';\nimport Map from './_Map.js';\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nexport default mapCacheClear;\n","import getMapData from './_getMapData.js';\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default mapCacheDelete;\n","import getMapData from './_getMapData.js';\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nexport default mapCacheGet;\n","import getMapData from './_getMapData.js';\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nexport default mapCacheHas;\n","import getMapData from './_getMapData.js';\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nexport default mapCacheSet;\n","import ListCache from './_ListCache.js';\nimport stackClear from './_stackClear.js';\nimport stackDelete from './_stackDelete.js';\nimport stackGet from './_stackGet.js';\nimport stackHas from './_stackHas.js';\nimport stackSet from './_stackSet.js';\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nexport default Stack;\n","import ListCache from './_ListCache.js';\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nexport default stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nexport default stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nexport default stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nexport default stackHas;\n","import ListCache from './_ListCache.js';\nimport Map from './_Map.js';\nimport MapCache from './_MapCache.js';\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nexport default stackSet;\n","import getNative from './_getNative.js';\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nexport default defineProperty;\n","import defineProperty from './_defineProperty.js';\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nexport default baseAssignValue;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignMergeValue;\n","import createBaseFor from './_createBaseFor.js';\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nexport default baseFor;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nexport default createBaseFor;\n","import root from './_root.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nexport default cloneBuffer;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nexport default Uint8Array;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nexport default cloneTypedArray;\n","import Uint8Array from './_Uint8Array.js';\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nexport default cloneArrayBuffer;\n","import isObject from './isObject.js';\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nexport default baseCreate;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nexport default overArg;\n","import overArg from './_overArg.js';\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nexport default getPrototype;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nexport default isPrototype;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nexport default isObjectLike;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nexport default baseIsArguments;\n","import baseIsArguments from './_baseIsArguments.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nexport default isArguments;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nexport default isLength;\n","import isFunction from './isFunction.js';\nimport isLength from './isLength.js';\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nexport default isArrayLike;\n","import root from './_root.js';\nimport stubFalse from './stubFalse.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nexport default isBuffer;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nexport default stubFalse;\n","import baseGetTag from './_baseGetTag.js';\nimport getPrototype from './_getPrototype.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nexport default isPlainObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isLength from './isLength.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nexport default baseIsTypedArray;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nexport default nodeUtil;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nexport default baseUnary;\n","import baseIsTypedArray from './_baseIsTypedArray.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nexport default isTypedArray;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nexport default safeGet;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignValue;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nexport default isIndex;\n","import baseTimes from './_baseTimes.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isIndex from './_isIndex.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default arrayLikeKeys;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nexport default baseTimes;\n","import isObject from './isObject.js';\nimport isPrototype from './_isPrototype.js';\nimport nativeKeysIn from './_nativeKeysIn.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeysIn;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default nativeKeysIn;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeysIn from './_baseKeysIn.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nexport default keysIn;\n","import copyObject from './_copyObject.js';\nimport keysIn from './keysIn.js';\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nexport default toPlainObject;\n","import assignValue from './_assignValue.js';\nimport baseAssignValue from './_baseAssignValue.js';\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nexport default copyObject;\n","import assignMergeValue from './_assignMergeValue.js';\nimport cloneBuffer from './_cloneBuffer.js';\nimport cloneTypedArray from './_cloneTypedArray.js';\nimport copyArray from './_copyArray.js';\nimport initCloneObject from './_initCloneObject.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isArrayLikeObject from './isArrayLikeObject.js';\nimport isBuffer from './isBuffer.js';\nimport isFunction from './isFunction.js';\nimport isObject from './isObject.js';\nimport isPlainObject from './isPlainObject.js';\nimport isTypedArray from './isTypedArray.js';\nimport safeGet from './_safeGet.js';\nimport toPlainObject from './toPlainObject.js';\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\nexport default baseMergeDeep;\n","import isArrayLike from './isArrayLike.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nexport default isArrayLikeObject;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nexport default copyArray;\n","import baseCreate from './_baseCreate.js';\nimport getPrototype from './_getPrototype.js';\nimport isPrototype from './_isPrototype.js';\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nexport default initCloneObject;\n","import Stack from './_Stack.js';\nimport assignMergeValue from './_assignMergeValue.js';\nimport baseFor from './_baseFor.js';\nimport baseMergeDeep from './_baseMergeDeep.js';\nimport isObject from './isObject.js';\nimport keysIn from './keysIn.js';\nimport safeGet from './_safeGet.js';\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\nexport default baseMerge;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nexport default identity;\n","import apply from './_apply.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nexport default overRest;\n","import constant from './constant.js';\nimport defineProperty from './_defineProperty.js';\nimport identity from './identity.js';\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nexport default baseSetToString;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nexport default constant;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nexport default shortOut;\n","import baseSetToString from './_baseSetToString.js';\nimport shortOut from './_shortOut.js';\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nexport default setToString;\n","import identity from './identity.js';\nimport overRest from './_overRest.js';\nimport setToString from './_setToString.js';\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\nexport default baseRest;\n","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nexport default apply;\n","import baseMerge from './_baseMerge.js';\nimport createAssigner from './_createAssigner.js';\n\n/**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\nvar mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n});\n\nexport default mergeWith;\n","import baseRest from './_baseRest.js';\nimport isIterateeCall from './_isIterateeCall.js';\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nexport default createAssigner;\n","import eq from './eq.js';\nimport isArrayLike from './isArrayLike.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nexport default isIterateeCall;\n","import MapCache from './_MapCache.js';\nimport setCacheAdd from './_setCacheAdd.js';\nimport setCacheHas from './_setCacheHas.js';\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nexport default SetCache;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nexport default arraySome;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nexport default setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nexport default setCacheHas;\n","import SetCache from './_SetCache.js';\nimport arraySome from './_arraySome.js';\nimport cacheHas from './_cacheHas.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nexport default equalArrays;\n","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nexport default cacheHas;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nexport default mapToArray;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nexport default setToArray;\n","import Symbol from './_Symbol.js';\nimport Uint8Array from './_Uint8Array.js';\nimport eq from './eq.js';\nimport equalArrays from './_equalArrays.js';\nimport mapToArray from './_mapToArray.js';\nimport setToArray from './_setToArray.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nexport default equalByTag;\n","import arrayFilter from './_arrayFilter.js';\nimport stubArray from './stubArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nexport default getSymbols;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nexport default arrayFilter;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nexport default stubArray;\n","import overArg from './_overArg.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nexport default nativeKeys;\n","import isPrototype from './_isPrototype.js';\nimport nativeKeys from './_nativeKeys.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeys;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeys from './_baseKeys.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nexport default keys;\n","import baseGetAllKeys from './_baseGetAllKeys.js';\nimport getSymbols from './_getSymbols.js';\nimport keys from './keys.js';\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nexport default getAllKeys;\n","import arrayPush from './_arrayPush.js';\nimport isArray from './isArray.js';\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nexport default baseGetAllKeys;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nexport default arrayPush;\n","import getAllKeys from './_getAllKeys.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nexport default equalObjects;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nexport default DataView;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nexport default Promise;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nexport default Set;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nexport default WeakMap;\n","import DataView from './_DataView.js';\nimport Map from './_Map.js';\nimport Promise from './_Promise.js';\nimport Set from './_Set.js';\nimport WeakMap from './_WeakMap.js';\nimport baseGetTag from './_baseGetTag.js';\nimport toSource from './_toSource.js';\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nexport default getTag;\n","import Stack from './_Stack.js';\nimport equalArrays from './_equalArrays.js';\nimport equalByTag from './_equalByTag.js';\nimport equalObjects from './_equalObjects.js';\nimport getTag from './_getTag.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nexport default baseIsEqualDeep;\n","import baseIsEqualDeep from './_baseIsEqualDeep.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nexport default baseIsEqual;\n","import baseIsEqual from './_baseIsEqual.js';\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nexport default isEqual;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n}\n\nexport default baseHas;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","import isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nexport default isKey;\n","import MapCache from './_MapCache.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nexport default memoize;\n","import memoizeCapped from './_memoizeCapped.js';\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nexport default stringToPath;\n","import memoize from './memoize.js';\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nexport default memoizeCapped;\n","import Symbol from './_Symbol.js';\nimport arrayMap from './_arrayMap.js';\nimport isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default baseToString;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nexport default arrayMap;\n","import isArray from './isArray.js';\nimport isKey from './_isKey.js';\nimport stringToPath from './_stringToPath.js';\nimport toString from './toString.js';\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nexport default castPath;\n","import baseToString from './_baseToString.js';\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nexport default toString;\n","import isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default toKey;\n","import baseHas from './_baseHas.js';\nimport hasPath from './_hasPath.js';\n\n/**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\nfunction has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n}\n\nexport default has;\n","import castPath from './_castPath.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isIndex from './_isIndex.js';\nimport isLength from './isLength.js';\nimport toKey from './_toKey.js';\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n}\n\nexport default hasPath;\n","import baseGet from './_baseGet.js';\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nexport default get;\n","import castPath from './_castPath.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\nexport default baseGet;\n","import baseSet from './_baseSet.js';\n\n/**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\nfunction set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n}\n\nexport default set;\n","import assignValue from './_assignValue.js';\nimport castPath from './_castPath.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\nfunction baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n}\n\nexport default baseSet;\n","import castArray from 'lodash-es/castArray';\nimport isFunction from 'lodash-es/isFunction';\nimport isString from 'lodash-es/isString';\nimport type { SubDomainOptions } from './Options';\n\nexport default {\n range: (value: number): number => Math.max(+value, 1),\n 'date.highlight': (args: Date[] | Date): Date[] => castArray(args),\n 'subDomain.label': (\n value: SubDomainOptions['label'],\n ): string | Function | null =>\n // eslint-disable-next-line\n ((isString(value) && value !== '') || isFunction(value) ? value : null),\n};\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","import baseGetTag from './_baseGetTag.js';\nimport isArray from './isArray.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar stringTag = '[object String]';\n\n/**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\nfunction isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n}\n\nexport default isString;\n","import mergeWith from 'lodash-es/mergeWith';\nimport isEqual from 'lodash-es/isEqual';\nimport has from 'lodash-es/has';\nimport get from 'lodash-es/get';\nimport set from 'lodash-es/set';\nimport type { Ls } from 'dayjs';\nimport type { DomainType, Timestamp } from '../index';\nimport {\n OPTIONS_DEFAULT_DOMAIN_TYPE,\n OPTIONS_DEFAULT_SUBDOMAIN_TYPE,\n OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n OPTIONS_DEFAULT_THEME,\n OPTIONS_DEFAULT_ANIMATION_DURATION,\n OPTIONS_DEFAULT_ITEM_SELECTOR,\n OPTIONS_DEFAULT_RANGE,\n SCALE_BASE_COLOR_SCHEME,\n SCALE_BASE_COLOR_TYPE,\n SCALE_BASE_COLOR_DOMAIN,\n OPTIONS_DEFAULT_LOCALE,\n} from '../constant';\n\nimport OptionsPreProcessors from './OptionsPreProcessors';\n\ntype SortOrder = 'asc' | 'desc';\nexport type TextAlign = 'start' | 'middle' | 'end';\nexport type Padding = [number, number, number, number];\n\nexport type DomainOptions = {\n type: DomainType;\n gutter: number;\n padding: Padding;\n dynamicDimension: boolean;\n label: LabelOptions;\n sort: SortOrder;\n};\n\ntype LabelOptions = {\n text?:\n | string\n | null\n | ((timestamp: Timestamp, element: SVGElement) => string);\n position: 'top' | 'right' | 'bottom' | 'left';\n textAlign: TextAlign;\n offset: {\n x: number;\n y: number;\n };\n rotate: null | 'left' | 'right';\n width: number;\n height: number;\n};\n\nexport type SubDomainOptions = {\n type: string;\n width: number;\n height: number;\n gutter: number;\n radius: number;\n label:\n | string\n | null\n | ((timestamp: Timestamp, value: number, element: SVGElement) => string);\n color?:\n | string\n | ((\n timestamp: Timestamp,\n value: number | string | null | undefined,\n backgroundColor: string,\n ) => string);\n sort: SortOrder;\n};\n\nexport type DataGroupType = 'sum' | 'count' | 'min' | 'max' | 'average';\n\ntype DateOptions = {\n start: Date;\n min?: Date;\n max?: Date;\n highlight: Date[];\n locale: string | Partial<(typeof Ls)[0]>;\n timezone?: string;\n};\n\nexport type DataRecord = Record;\nexport type DataOptions = {\n source: string | DataRecord[];\n type: 'json' | 'csv' | 'tsv' | 'txt';\n requestInit: object;\n x: string | ((datum: DataRecord) => number);\n y: string | ((datum: DataRecord) => number);\n groupY:\n | DataGroupType\n | ((values: (string | number | null)[]) => string | number | null);\n defaultValue: null | number | string;\n};\n\ntype ScaleOptions = {\n opacity?: {\n domain: number[];\n type?: string;\n baseColor: string;\n };\n color?: {\n domain: number[];\n scheme?: string;\n range?: string[];\n interpolate?: any;\n type?: string;\n };\n};\n\nexport type OptionsType = {\n itemSelector: string;\n range: number;\n domain: DomainOptions;\n subDomain: SubDomainOptions;\n date: DateOptions;\n data: DataOptions;\n scale?: ScaleOptions;\n animationDuration: number;\n verticalOrientation: boolean;\n theme: 'light' | 'dark';\n};\n\ntype InternalOptionsType = {\n x: {\n domainHorizontalLabelWidth: number;\n domainVerticalLabelHeight: number;\n };\n};\n\nexport default class Options {\n options: OptionsType & InternalOptionsType;\n\n preProcessors: {\n [key: string]: (value: any) => any;\n };\n\n constructor(processors = OptionsPreProcessors) {\n this.preProcessors = processors;\n\n this.options = {\n // selector string of the container to append the graph to\n // Accept any string value accepted by document.querySelector or CSS3\n // or an Element object\n itemSelector: OPTIONS_DEFAULT_ITEM_SELECTOR,\n\n // Number of domain to display on the graph\n range: OPTIONS_DEFAULT_RANGE,\n\n domain: {\n type: OPTIONS_DEFAULT_DOMAIN_TYPE,\n\n // Space between each domain, in pixel\n gutter: 4,\n\n padding: [0, 0, 0, 0],\n\n // Whether to enable dynamic domain size\n // The width/height on a domain depends on the number of\n // subDomains items count\n dynamicDimension: true,\n\n // Whether to show most recent date first\n sort: 'asc',\n\n label: {\n // Formatting of the domain label\n // @default: undefined, will use the formatting\n // according to domain type\n // Accept any string accepted by dayjs.format()\n // or a function\n //\n // Refer to https://day.js.org/docs/en/display/format\n // for list of accepted string tokens used by dayjs.format()\n text: undefined,\n\n // valid: top, right, bottom, left\n position: 'bottom',\n\n // Valid are the direct svg values: start, middle, end\n textAlign: 'middle',\n\n // By default, there is no margin/padding around the label\n offset: {\n x: 0,\n y: 0,\n },\n\n rotate: null,\n\n // Used only on vertical orientation\n width: 100,\n\n // Used only on horizontal orientation\n height: 25,\n },\n },\n\n subDomain: {\n type: OPTIONS_DEFAULT_SUBDOMAIN_TYPE,\n\n // Width of each subDomain cell, in pixel\n width: OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n\n // Height of each subDomain cell, in pixel\n height: OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n\n // Space between each subDomain cell, in pixel\n gutter: OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n\n // Radius of each subDomain cell, in pixel\n radius: OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n\n // Formatting of the text inside each subDomain cell\n // @default: null, no text\n // Accept any string accepted by dayjs.format()\n // or a function\n //\n // Refer to https://day.js.org/docs/en/display/format\n // for list of accepted string tokens used by dayjs.format()\n label: null,\n\n color: undefined,\n\n sort: 'asc',\n },\n\n date: {\n // Start date of the graph\n // @default now\n start: new Date(),\n\n min: undefined,\n\n max: undefined,\n\n // List of dates to highlight\n // Valid values:\n // - []: don't highlight anything\n // - an array of Date objects: highlight the specified dates\n highlight: [],\n\n locale: OPTIONS_DEFAULT_LOCALE,\n\n timezone: undefined,\n },\n\n // Calendar orientation\n // false: display domains side by side\n // true : display domains one under the other\n verticalOrientation: false,\n\n data: {\n // Data source\n // URL, where to fetch the original datas\n source: '',\n\n // Data type\n // Default: json\n type: 'json',\n\n requestInit: {},\n\n // keyname of the time property\n x: '',\n\n // keyname of the value property\n y: '',\n\n // Grouping function of the values\n groupY: 'sum',\n\n defaultValue: null,\n },\n\n scale: undefined,\n\n // Animation duration, in ms\n animationDuration: OPTIONS_DEFAULT_ANIMATION_DURATION,\n\n // Theme mode: dark/light\n theme: OPTIONS_DEFAULT_THEME,\n\n // Internally used options, do not edit not set\n x: {\n domainHorizontalLabelWidth: 0,\n domainVerticalLabelHeight: 0,\n },\n };\n }\n\n /**\n * Set a new value for an option, only if unchanged\n * @param {string} key Name of the option\n * @param {any} value Value of the option\n * @return {boolean} Whether the option have been changed\n */\n set(key: string, value: any): boolean {\n if (!has(this.options, key) || isEqual(get(this.options, key), value)) {\n return false;\n }\n\n set(\n this.options,\n key,\n has(this.preProcessors, key) ?\n get(this.preProcessors, key)(value) :\n value,\n );\n\n return true;\n }\n\n init(opts?: CalHeatmap.DeepPartial): void {\n this.options = {\n // eslint-disable-next-line arrow-body-style\n ...mergeWith(this.options, opts, (_, srcValue) => {\n return Array.isArray(srcValue) ? srcValue : undefined;\n }),\n };\n\n const { options } = this;\n\n Object.keys(this.preProcessors).forEach((key) => {\n set(options, key, get(this.preProcessors, key)(get(options, key)));\n });\n\n if (typeof options.scale === 'undefined') {\n this.initScale();\n }\n\n options.x.domainVerticalLabelHeight = options.domain.label.height;\n\n // When the label is affecting the height\n if (\n options.domain.label.position === 'top' ||\n options.domain.label.position === 'bottom'\n ) {\n options.x.domainHorizontalLabelWidth = 0;\n } else {\n options.x.domainVerticalLabelHeight = 0;\n options.x.domainHorizontalLabelWidth = options.domain.label.width;\n }\n\n if (\n options.domain.label.text === null ||\n options.domain.label.text === ''\n ) {\n options.x.domainVerticalLabelHeight = 0;\n options.x.domainHorizontalLabelWidth = 0;\n }\n }\n\n initScale() {\n this.options.scale = {\n color: {\n scheme: SCALE_BASE_COLOR_SCHEME,\n type: SCALE_BASE_COLOR_TYPE,\n domain: SCALE_BASE_COLOR_DOMAIN,\n },\n };\n }\n}\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') !== null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') !== null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.test('\\n') && re.flags === 's');\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) !== 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () {\n execCalled = true;\n return null;\n };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n// eslint-disable-next-line redos/no-vulnerable -- safe\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw new $TypeError('RegExp#exec called on incompatible receiver');\n};\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n var fullUnicode;\n if (global) {\n fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n\n var results = [];\n var result;\n while (true) {\n result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n var replacement;\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","import {\n json, csv, dsv, text,\n} from 'd3-fetch';\n\nimport type { DataOptions, DataRecord } from './options/Options';\nimport type { Timestamp } from './index';\nimport type CalHeatmap from './CalHeatmap';\n\nexport default class DataFetcher {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n /**\n * Fetch and interpret data from the datasource\n *\n * @param {string|object} source\n * @param {number} startTimestamp\n * @param {number} endTimestamp\n *\n * @return {Promize} A promise, that will return the final data when resolved\n */\n async getDatas(\n source: DataOptions['source'],\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): Promise {\n if (typeof source === 'string' && source.length > 0) {\n return this.#fetch(source, startTimestamp, endTimestamp);\n }\n\n let d: DataRecord[] = [];\n if (Array.isArray(source)) {\n d = source;\n }\n\n return new Promise((resolve) => {\n resolve(d);\n });\n }\n\n parseURI(\n str: string,\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): string {\n let newUri = str.replace(/\\{\\{start=(.*?)\\}\\}/g, (_, format) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.date(startTimestamp).format(format));\n newUri = newUri.replace(/\\{\\{end=(.*?)\\}\\}/g, (_, format) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.date(endTimestamp).format(format));\n\n return newUri;\n }\n\n #fetch(\n source: DataOptions['source'],\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): Promise {\n const { type, requestInit } = this.calendar.options.options.data;\n\n const url = this.parseURI(source as string, startTimestamp, endTimestamp);\n\n switch (type) {\n case 'json':\n return json(url, requestInit);\n case 'csv':\n return csv(url, requestInit);\n case 'tsv':\n return dsv('\\t', url, requestInit);\n case 'txt':\n return text(url, requestInit);\n default:\n return new Promise((resolve) => {\n resolve([]);\n });\n }\n }\n}\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,\"millisecond\"),o=this.diff(a,e,!0);return o<0?r(this).startOf(\"week\").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_dayOfYear=t()}(this,(function(){\"use strict\";return function(e,t,n){t.prototype.dayOfYear=function(e){var t=Math.round((n(this).startOf(\"day\")-n(this).startOf(\"year\"))/864e5)+1;return null==e?t:this.add(e-t,\"day\")}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_weekday=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.weekday=function(e){var t=this.$locale().weekStart||0,i=this.$W,n=(i0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i4&&(o+=7),n.add(o,e));return r.diff(u,\"week\")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return\"isoweek\"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf(\"day\"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf(\"day\"):n.bind(this)(e,t)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isLeapYear=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_advancedFormat=t()}(this,(function(){\"use strict\";return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||\"YYYY-MM-DDTHH:mm:ssZ\").replace(/\\[([^\\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case\"Q\":return Math.ceil((t.$M+1)/3);case\"Do\":return r.ordinal(t.$D);case\"gggg\":return t.weekYear();case\"GGGG\":return t.isoWeekYear();case\"wo\":return r.ordinal(t.week(),\"W\");case\"w\":case\"ww\":return s.s(t.week(),\"w\"===e?1:2,\"0\");case\"W\":case\"WW\":return s.s(t.isoWeek(),\"W\"===e?1:2,\"0\");case\"k\":case\"kk\":return s.s(String(0===t.$H?24:t.$H),\"k\"===e?1:2,\"0\");case\"X\":return Math.floor(t.$d.getTime()/1e3);case\"x\":return t.$d.getTime();case\"z\":return\"[\"+t.offsetName()+\"]\";case\"zzz\":return\"[\"+t.offsetName(\"long\")+\"]\";default:return e}}));return n.bind(this)(a)}}}));","!function(t,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_utc=i()}(this,(function(){\"use strict\";var t=\"minute\",i=/[+-]\\d\\d(?::?\\d\\d)?/g,e=/([+-]|\\d\\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t)};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else r.call(this)};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if(\"string\"==typeof s&&(s=function(t){void 0===t&&(t=\"\");var s=t.match(i);if(!s)return null;var f=(\"\"+s[0]).match(e)||[\"-\",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:\"+\"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?\"YYYY-MM-DDTHH:mm:ss[Z]\":\"\");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return\"s\"===t&&this.$offset?n(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)}}}));","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_timezone=e()}(this,(function(){\"use strict\";var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||\"short\",o=t+\"|\"+i,r=e[o];return r||(r=new Intl.DateTimeFormat(\"en-US\",{hour12:!1,timeZone:t,year:\"numeric\",month:\"2-digit\",day:\"2-digit\",hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u=0&&(r[c]=parseInt(m,10))}var d=r[3],l=24===d?0:d,h=r[0]+\"-\"+r[1]+\"-\"+r[2]+\" \"+l+\":\"+r[4]+\":\"+r[5]+\":000\",v=+e;return(o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString(\"en-US\",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set(\"millisecond\",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,\"minute\")}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return\"timezonename\"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if(\"string\"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return[i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t}}}));","!function(n,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(n=\"undefined\"!=typeof globalThis?globalThis:n||self).dayjs_plugin_localeData=e()}(this,(function(){\"use strict\";return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return{months:function(e){return e?e.format(\"MMMM\"):u(n,\"months\")},monthsShort:function(e){return e?e.format(\"MMM\"):u(n,\"monthsShort\",\"months\",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format(\"dddd\"):u(n,\"weekdays\")},weekdaysMin:function(e){return e?e.format(\"dd\"):u(n,\"weekdaysMin\",\"weekdays\",2)},weekdaysShort:function(e){return e?e.format(\"ddd\"):u(n,\"weekdaysShort\",\"weekdays\",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return{firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),\"months\")},t.monthsShort=function(){return u(i(),\"monthsShort\",\"months\",3)},t.weekdays=function(n){return u(i(),\"weekdays\",null,null,n)},t.weekdaysShort=function(n){return u(i(),\"weekdaysShort\",\"weekdays\",3,n)},t.weekdaysMin=function(n){return u(i(),\"weekdaysMin\",\"weekdays\",2,n)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_localizedFormat=t()}(this,(function(){\"use strict\";var e={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t=\"YYYY-MM-DDTHH:mm:ssZ\");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)}}}));","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_updateLocale=n()}(this,(function(){\"use strict\";return function(e,n,t){t.updateLocale=function(e,n){var o=t.Ls[e];if(o)return(n?Object.keys(n):[]).forEach((function(e){o[e]=n[e]})),o}}}));","import dayjs from 'dayjs';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport dayOfYear from 'dayjs/plugin/dayOfYear';\nimport weekday from 'dayjs/plugin/weekday';\nimport minMax from 'dayjs/plugin/minMax';\nimport isoWeeksInYear from 'dayjs/plugin/isoWeeksInYear';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport isLeapYear from 'dayjs/plugin/isLeapYear';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\nimport localeData from 'dayjs/plugin/localeData';\nimport localizedFormat from 'dayjs/plugin/localizedFormat';\nimport updateLocale from 'dayjs/plugin/updateLocale';\n\nimport type { ManipulateType, PluginFunc, Ls } from 'dayjs';\nimport type { OptionsType } from '../options/Options';\nimport type { Timestamp, DomainType } from '../index';\n\ndayjs.extend(weekOfYear);\ndayjs.extend(isoWeeksInYear);\ndayjs.extend(isoWeek);\ndayjs.extend(isLeapYear);\ndayjs.extend(dayOfYear);\ndayjs.extend(weekday);\ndayjs.extend(minMax);\ndayjs.extend(advancedFormat);\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(localeData);\ndayjs.extend(localizedFormat);\ndayjs.extend(updateLocale);\n\nconst DEFAULT_LOCALE = 'en';\n\nexport default class DateHelper {\n locale: OptionsType['date']['locale'];\n\n timezone: string;\n\n constructor() {\n this.locale = DEFAULT_LOCALE;\n this.timezone = dayjs.tz.guess();\n if (typeof window === 'object') {\n (window as any).dayjs ||= dayjs;\n }\n }\n\n async setup({ options }: { options: OptionsType }) {\n this.timezone = options.date.timezone || dayjs.tz.guess();\n const userLocale = options.date.locale;\n\n if (typeof userLocale === 'string' && userLocale !== DEFAULT_LOCALE) {\n let locale;\n if (typeof window === 'object') {\n locale =\n (window as any)[`dayjs_locale_${userLocale}`] ||\n (await this.loadBrowserLocale(userLocale));\n } else {\n locale = await this.loadNodeLocale(userLocale);\n }\n dayjs.locale(userLocale);\n this.locale = locale;\n }\n\n if (typeof userLocale === 'object') {\n if (userLocale.hasOwnProperty('name')) {\n dayjs.locale(userLocale.name, userLocale);\n this.locale = userLocale;\n } else {\n this.locale = dayjs.updateLocale(DEFAULT_LOCALE, userLocale);\n }\n }\n }\n\n // eslint-disable-next-line class-methods-use-this\n extend(dayjsPlugin: PluginFunc): dayjs.Dayjs {\n return dayjs.extend(dayjsPlugin);\n }\n\n /**\n * Return the week number, relative to its month\n *\n * @param {number|Date} d Date or timestamp in milliseconds\n * @returns {number} The week number, relative to the month [0-5]\n */\n getMonthWeekNumber(d: Timestamp | dayjs.Dayjs): number {\n const dayjsDate = this.date(d);\n const date = dayjsDate.startOf('day');\n const endOfWeek = dayjsDate.startOf('month').endOf('week');\n\n if (date <= endOfWeek) {\n return 1;\n }\n return Math.ceil(date.diff(endOfWeek, 'weeks', true)) + 1;\n }\n\n /**\n * Return the number of weeks in the given month\n *\n * As there is no fixed standard to specify which month a partial week should\n * belongs to, the ISO week date standard is used, where:\n * - the first week of the month should have at least 4 days\n *\n * @see https://en.wikipedia.org/wiki/ISO_week_date\n *\n * @param {Timestamp | dayjs.Dayjs} d Datejs object or timestamp\n * @return {number} The number of weeks\n */\n getWeeksCountInMonth(d: Timestamp | dayjs.Dayjs): number {\n const pivotDate = this.date(d);\n\n return (\n this.getLastWeekOfMonth(pivotDate).diff(\n this.getFirstWeekOfMonth(pivotDate),\n 'week',\n ) + 1\n );\n }\n\n /**\n * Return the start of the first week of the month\n *\n * @see getWeeksCountInMonth() about standard warning\n * @return {dayjs.Dayjs} A dayjs object representing the start of the\n * first week\n */\n getFirstWeekOfMonth(d: Timestamp | dayjs.Dayjs): dayjs.Dayjs {\n const startOfMonth = this.date(d).startOf('month');\n let startOfFirstWeek = startOfMonth.startOf('week');\n if (startOfMonth.weekday() > 4) {\n startOfFirstWeek = startOfFirstWeek.add(1, 'week');\n }\n\n return startOfFirstWeek;\n }\n\n /**\n * Return the end of the last week of the month\n *\n * @see getWeeksCountInMonth() about standard warning\n * @return {dayjs.Dayjs} A dayjs object representing the end of the last week\n */\n getLastWeekOfMonth(d: Timestamp | dayjs.Dayjs): dayjs.Dayjs {\n const endOfMonth = this.date(d).endOf('month');\n let endOfLastWeek = endOfMonth.endOf('week');\n if (endOfMonth.weekday() < 4) {\n endOfLastWeek = endOfLastWeek.subtract(1, 'week');\n }\n\n return endOfLastWeek;\n }\n\n date(d: Timestamp | Date | dayjs.Dayjs | string = new Date()): dayjs.Dayjs {\n if (dayjs.isDayjs(d)) {\n return d;\n }\n\n return dayjs(d)\n .tz(this.timezone)\n .utcOffset(0)\n .locale(this.locale as (typeof Ls)[0] | string);\n }\n\n format(\n timestamp: Timestamp,\n formatter: null | string | Function,\n ...args: any\n ): string | null {\n if (typeof formatter === 'function') {\n return formatter(timestamp, ...args);\n }\n\n if (typeof formatter === 'string') {\n return this.date(timestamp).format(formatter);\n }\n\n return null;\n }\n\n /**\n * Return an array of time interval\n *\n * @param {number|Date} date A random date included in the wanted interval\n * @param {number|Date} range Length of the wanted interval, or a stop date.\n * @param {boolean} range Whether the end date should be excluded\n * from the result\n * @returns {Array} Array of unix timestamp, in milliseconds\n */\n intervals(\n interval: DomainType,\n date: Timestamp | Date | dayjs.Dayjs,\n range: number | Date | dayjs.Dayjs,\n excludeEnd: boolean = true,\n ): Timestamp[] {\n let start = this.date(date);\n let end: dayjs.Dayjs;\n if (typeof range === 'number') {\n end = start.add(range, interval as ManipulateType);\n } else if (dayjs.isDayjs(range)) {\n end = range;\n } else {\n end = this.date(range);\n }\n\n start = start.startOf(interval as ManipulateType);\n\n end = end.startOf(interval as ManipulateType);\n let pivot = dayjs.min(start, end)!;\n end = dayjs.max(start, end)!;\n const result: Timestamp[] = [];\n\n if (!excludeEnd) {\n end = end.add(1, 'second');\n }\n\n do {\n result.push(+pivot);\n pivot = pivot.add(1, interval as ManipulateType);\n } while (pivot < end);\n\n return result;\n }\n\n // this function will work cross-browser for loading scripts asynchronously\n // eslint-disable-next-line class-methods-use-this\n loadBrowserLocale(userLocale: string): Promise {\n return new Promise((resolve, reject) => {\n const s = document.createElement('script');\n s.type = 'text/javascript';\n s.async = true;\n s.src = `https://cdn.jsdelivr.net/npm/dayjs@1/locale/${userLocale}.js`;\n s.onerror = (err) => {\n reject(err);\n };\n s.onload = () => {\n resolve((window as any)[`dayjs_locale_${userLocale}`]);\n };\n document.head.appendChild(s);\n });\n }\n\n // eslint-disable-next-line class-methods-use-this\n loadNodeLocale(userLocale: string): Promise {\n return import(`dayjs/locale/${userLocale}.js`);\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\nvar stringIndexOf = uncurryThis(''.indexOf);\n\n// `String.prototype.includes` method\n// https://tc39.es/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~stringIndexOf(\n toString(requireObjectCoercible(this)),\n toString(notARegExp(searchString)),\n arguments.length > 1 ? arguments[1] : undefined\n );\n }\n});\n","import type TemplateCollection from '../TemplateCollection';\nimport type { DomainOptions, SubDomainOptions, DataOptions } from './Options';\nimport type { DomainType } from '../index';\n\nconst ALLOWED_DATA_TYPES = ['json', 'csv', 'tsv', 'txt'];\n\n/**\n * Ensure that critical options are valid\n *\n * @throw {Error} on critical invalid options\n * @return {boolean} Returns true when there is not critical errors\n */\nexport default function validate(\n templateCollection: TemplateCollection,\n {\n domain,\n subDomain,\n data,\n }: {\n domain: Partial;\n subDomain: Partial;\n data: Partial;\n },\n): boolean {\n const domainType = domain.type as DomainType;\n const subDomainType = subDomain.type as string;\n\n if (!templateCollection.has(domainType)) {\n throw new Error(`'${domainType}' is not a valid domain type'`);\n }\n\n if (!templateCollection.has(subDomainType)) {\n throw new Error(`'${subDomainType}' is not a valid subDomain type'`);\n }\n\n if (data.type && !ALLOWED_DATA_TYPES.includes(data.type)) {\n throw new Error(`The data type '${data.type}' is not valid data type`);\n }\n\n if (\n !(templateCollection.get(subDomainType).allowedDomainType || []).includes(\n domainType,\n )\n ) {\n throw new Error(\n `The subDomain.type '${subDomainType}' can not be used together ` +\n `with the domain type ${domainType}`,\n );\n }\n\n return true;\n}\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Set` constructor\n// https://tc39.es/ecma262/#sec-set-objects\ncollection('Set', function (init) {\n return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","import isEqual from 'lodash-es/isEqual';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport {\n PluginDefinition,\n PluginOptions,\n IPluginContructor,\n IPlugin,\n} from '../index';\n\ntype PluginSetting = {\n options?: PluginOptions;\n dirty: boolean;\n};\n\nfunction createPlugin(\n Creator: IPluginContructor,\n calendar: CalHeatmap,\n): IPlugin {\n return new Creator(calendar);\n}\n\nfunction extractPluginName(\n PluginClass: IPluginContructor,\n options?: PluginOptions,\n): string {\n return `${new PluginClass().name}${options?.key || ''}`;\n}\n\nexport default class PluginManager {\n calendar: CalHeatmap;\n\n settings: Map;\n\n plugins: Map;\n\n pendingPaint: Set;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.settings = new Map();\n this.plugins = new Map();\n this.pendingPaint = new Set();\n }\n\n add(plugins: PluginDefinition[]): void {\n plugins.forEach(([PluginClass, pluginOptions]) => {\n const name = extractPluginName(PluginClass, pluginOptions);\n\n const existingPlugin = this.plugins.get(name);\n\n if (\n existingPlugin &&\n this.settings.get(name) &&\n isEqual(this.settings.get(name)!.options, pluginOptions)\n ) {\n return;\n }\n\n this.settings.set(name, {\n options: pluginOptions,\n dirty: true,\n });\n\n if (!this.plugins.has(name)) {\n this.plugins.set(name, createPlugin(PluginClass, this.calendar));\n }\n\n this.pendingPaint.add(this.plugins.get(name)!);\n });\n }\n\n setupAll(): void {\n this.plugins.forEach((pluginInstance, name) => {\n const settings = this.settings.get(name);\n\n if (typeof settings !== 'undefined') {\n if (settings.dirty) {\n pluginInstance.setup(settings.options);\n settings.dirty = false;\n\n this.settings.set(name, settings);\n }\n }\n });\n }\n\n paintAll(): Promise[] {\n return Array.from(this.pendingPaint.values()).map((p) => p.paint());\n }\n\n destroyAll(): Promise[] {\n return this.allPlugins().map((p) => p.destroy());\n }\n\n getFromPosition(position: PluginOptions['position']): IPlugin[] {\n return this.allPlugins().filter(\n (plugin) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n plugin.options?.position === position,\n );\n }\n\n getHeightFromPosition(position: PluginOptions['position']): number {\n return this.getFromPosition(position)\n .map((d) => d.options.dimensions!.height)\n .reduce((a, b) => a + b, 0);\n }\n\n getWidthFromPosition(position: PluginOptions['position']): number {\n return this.getFromPosition(position)\n .map((d) => d.options.dimensions!.width)\n .reduce((a, b) => a + b, 0);\n }\n\n allPlugins(): IPlugin[] {\n return Array.from(this.plugins.values());\n }\n}\n","import minuteTemplate from './minute';\nimport hourTemplate from './hour';\nimport dayTemplate from './day';\nimport xDayTemplate from './xDay';\nimport ghDayTemplate from './ghDay';\nimport weekTemplate from './week';\nimport monthTemplate from './month';\nimport yearTemplate from './year';\n\nexport default [\n minuteTemplate,\n hourTemplate,\n dayTemplate,\n xDayTemplate,\n ghDayTemplate,\n weekTemplate,\n monthTemplate,\n yearTemplate,\n];\n","import type { Template, DomainType } from '../index';\n\nconst minuteTemplate: Template = (DateHelper) => {\n const COLUMNS_COUNT = 10;\n const ROWS_COUNT = 6;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['day', 'hour'];\n\n return {\n name: 'minute',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => COLUMNS_COUNT,\n columnsCount: () => ROWS_COUNT,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'minute',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts, index: number) => ({\n t: ts,\n x: Math.floor(index / COLUMNS_COUNT),\n y: index % COLUMNS_COUNT,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('minute').valueOf(),\n };\n};\n\nexport default minuteTemplate;\n","import type { DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst hourTemplate: Template = (\n DateHelper,\n { domain }: { domain: DomainOptions },\n) => {\n const TOTAL_ITEMS = 24;\n const ROWS_COUNT = 6;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['month', 'week', 'day'];\n\n return {\n name: 'hour',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => ROWS_COUNT,\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'week':\n return (TOTAL_ITEMS / ROWS_COUNT) * 7;\n case 'month':\n return (\n (TOTAL_ITEMS / ROWS_COUNT) *\n (domain.dynamicDimension ? DateHelper.date(ts).daysInMonth() : 31)\n );\n case 'day':\n default:\n return TOTAL_ITEMS / ROWS_COUNT;\n }\n },\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'hour',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n const hour = date.hour();\n const monthDate = date.date();\n let baseX = Math.floor(hour / ROWS_COUNT);\n const columnOffset = TOTAL_ITEMS / ROWS_COUNT;\n\n if (domain.type === 'month') {\n baseX += (monthDate - 1) * columnOffset;\n }\n if (domain.type === 'week') {\n baseX += +date.format('d') * columnOffset;\n }\n\n return {\n t: ts,\n x: baseX,\n y: Math.floor(hour % ROWS_COUNT),\n };\n }),\n extractUnit: (ts) => DateHelper.date(ts).startOf('hour').valueOf(),\n };\n};\n\nexport default hourTemplate;\n","import type { OptionsType, DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (\n DateHelper,\n {\n domain,\n verticalOrientation,\n }: {\n domain: DomainOptions;\n verticalOrientation: OptionsType['verticalOrientation'];\n },\n) => {\n const ROWS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month', 'week'];\n\n return {\n name: 'day',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => (domain.type === 'week' ? 1 : ROWS_COUNT),\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'month':\n return Math.ceil(\n domain.dynamicDimension && !verticalOrientation ?\n DateHelper.getMonthWeekNumber(\n DateHelper.date(ts).endOf('month'),\n ) :\n 6, // In rare case, when the first week contains less than 3 days\n );\n case 'year':\n return Math.ceil(\n domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').dayOfYear() / ROWS_COUNT :\n 54,\n );\n case 'week':\n default:\n return ROWS_COUNT;\n }\n },\n mapping: (startTimestamp, endTimestamp) => {\n let weekNumber = 0;\n let x = -1;\n\n return DateHelper.intervals(\n 'day',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n\n switch (domain.type) {\n case 'month':\n x = DateHelper.getMonthWeekNumber(ts) - 1;\n break;\n case 'year':\n if (weekNumber !== date.week()) {\n weekNumber = date.week();\n x += 1;\n }\n break;\n case 'week':\n x = date.weekday();\n break;\n default:\n }\n\n return {\n t: ts,\n x,\n y: domain.type === 'week' ? 0 : date.weekday(),\n };\n });\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { OptionsType, DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (\n DateHelper,\n {\n domain,\n verticalOrientation,\n }: {\n domain: DomainOptions;\n verticalOrientation: OptionsType['verticalOrientation'];\n },\n) => {\n const COLUMNS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month', 'week'];\n\n return {\n name: 'xDay',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: (ts) => {\n switch (domain.type) {\n case 'month':\n return Math.ceil(\n domain.dynamicDimension && !verticalOrientation ?\n DateHelper.getMonthWeekNumber(\n DateHelper.date(ts).endOf('month'),\n ) :\n 6, // In rare case, when the first week contains less than 3 days\n );\n case 'year':\n return Math.ceil(\n domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').dayOfYear() / COLUMNS_COUNT :\n 54,\n );\n case 'week':\n default:\n return COLUMNS_COUNT;\n }\n },\n columnsCount: () => {\n if (domain.type === 'week') {\n return 1;\n }\n return COLUMNS_COUNT;\n },\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'day',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n const endWeekNumber = date.endOf('year').week();\n let x = 0;\n\n switch (domain.type) {\n case 'month':\n x = DateHelper.getMonthWeekNumber(ts) - 1;\n break;\n case 'year':\n if (endWeekNumber === 1 && date.week() === endWeekNumber) {\n x = date.subtract(1, 'week').week() + 1;\n }\n\n x = date.week() - 1;\n break;\n case 'week':\n x = date.weekday();\n break;\n default:\n }\n\n return {\n t: ts,\n y: x,\n x: domain.type === 'week' ? 0 : date.weekday(),\n };\n }),\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (DateHelper) => {\n const ROWS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['month'];\n\n return {\n name: 'ghDay',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => ROWS_COUNT,\n columnsCount: (ts) => DateHelper.getWeeksCountInMonth(ts),\n mapping: (startTimestamp, endTimestamp) => {\n const clampStart = DateHelper.getFirstWeekOfMonth(startTimestamp);\n const clampEnd = DateHelper.getFirstWeekOfMonth(endTimestamp);\n\n let x = -1;\n const pivotDay = clampStart.weekday();\n\n return DateHelper.intervals('day', clampStart, clampEnd).map((ts) => {\n const weekday = DateHelper.date(ts).weekday();\n if (weekday === pivotDay) {\n x += 1;\n }\n\n return {\n t: ts,\n x,\n y: weekday,\n };\n });\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst weekTemplate: Template = (\n DateHelper,\n { domain }: { domain: DomainOptions },\n) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month'];\n\n return {\n name: 'week',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'year':\n return domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').isoWeeksInYear() :\n 53;\n case 'month':\n return domain.dynamicDimension ?\n DateHelper.getWeeksCountInMonth(ts) :\n 5;\n default:\n return 1;\n }\n },\n mapping: (startTimestamp, endTimestamp) => {\n const clampStart = DateHelper.getFirstWeekOfMonth(startTimestamp);\n const clampEnd = DateHelper.getFirstWeekOfMonth(endTimestamp);\n\n return DateHelper.intervals('week', clampStart, clampEnd).map(\n (ts, i) => ({\n t: ts,\n x: i,\n y: 0,\n }),\n );\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('week').valueOf(),\n };\n};\n\nexport default weekTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst monthTemplate: Template = (DateHelper) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year'];\n\n return {\n name: 'month',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: () => 12,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'month',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => ({\n t: ts,\n x: DateHelper.date(ts).month(),\n y: 0,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('month').valueOf(),\n };\n};\n\nexport default monthTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst yearTemplate: Template = (DateHelper) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = [];\n\n return {\n name: 'year',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: () => 1,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'year',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts, index) => ({\n t: ts,\n x: index,\n y: 0,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('year').valueOf(),\n };\n};\n\nexport default yearTemplate;\n","import castArray from 'lodash-es/castArray';\n\nimport DefaultTemplates from './templates/index';\nimport type Options from './options/Options';\nimport type { Template, TemplateResult } from './index';\nimport type DateHelper from './helpers/DateHelper';\n\nexport default class TemplateCollection {\n dateHelper: DateHelper;\n\n options: Options;\n\n settings: Map;\n\n // Whether the default templates has been initiated\n initiated: boolean;\n\n constructor(dateHelper: DateHelper, options: Options) {\n this.settings = new Map();\n this.dateHelper = dateHelper;\n this.options = options;\n this.initiated = false;\n }\n\n get(subDomainType: string): TemplateResult {\n return this.settings.get(subDomainType)!;\n }\n\n has(subDomainType: string): boolean {\n return this.settings.has(subDomainType);\n }\n\n init() {\n if (!this.initiated) {\n this.initiated = true;\n this.add(DefaultTemplates);\n }\n }\n\n add(templates: Template | Template[]) {\n this.init();\n\n const tplWithParent: string[] = [];\n castArray(templates).forEach((f) => {\n const template = f(this.dateHelper, this.options.options);\n this.settings.set(template.name, template);\n\n if (template.hasOwnProperty('parent')) {\n tplWithParent.push(template.name);\n }\n });\n\n tplWithParent.forEach((name) => {\n const parentTemplate = this.settings.get(\n this.settings.get(name)!.parent!,\n );\n\n if (!parentTemplate) {\n return;\n }\n\n this.settings.set(name, {\n ...parentTemplate,\n ...this.settings.get(name),\n });\n });\n }\n}\n","import EventEmmiter from 'eventemitter3';\nimport castArray from 'lodash-es/castArray';\nimport type { PluginFunc } from 'dayjs';\nimport type dayjs from 'dayjs';\n\nimport Navigator from './calendar/Navigator';\nimport CalendarPainter from './calendar/CalendarPainter';\nimport Populator from './calendar/Populator';\nimport Options from './options/Options';\nimport DataFetcher from './DataFetcher';\nimport DomainCollection from './calendar/DomainCollection';\nimport DateHelper from './helpers/DateHelper';\nimport validate from './options/OptionsValidator';\nimport PluginManager from './plugins/PluginManager';\nimport VERSION from './version';\n\nimport './cal-heatmap.scss';\n\nimport TemplateCollection from './TemplateCollection';\n\nimport type { OptionsType } from './options/Options';\nimport type {\n Template,\n Dimensions,\n PluginDefinition,\n Timestamp,\n} from './index';\n\nimport { ScrollDirection } from './constant';\n\nexport default class CalHeatmap {\n static VERSION = VERSION;\n\n options: Options;\n\n calendarPainter: CalendarPainter;\n\n populator: Populator;\n\n navigator: Navigator;\n\n eventEmitter: EventEmmiter;\n\n dataFetcher: DataFetcher;\n\n domainCollection!: DomainCollection;\n\n templateCollection: TemplateCollection;\n\n dateHelper: DateHelper;\n\n pluginManager: PluginManager;\n\n constructor() {\n // Default options\n this.options = new Options();\n\n // Init the helpers with the default options\n this.dateHelper = new DateHelper();\n this.templateCollection = new TemplateCollection(\n this.dateHelper,\n this.options,\n );\n this.dataFetcher = new DataFetcher(this);\n this.navigator = new Navigator(this);\n this.populator = new Populator(this);\n\n this.calendarPainter = new CalendarPainter(this);\n this.eventEmitter = new EventEmmiter();\n this.pluginManager = new PluginManager(this);\n }\n\n createDomainCollection(\n startDate: Timestamp | Date,\n range: number | Date,\n excludeEnd: boolean = true,\n ): DomainCollection {\n return new DomainCollection(\n this.dateHelper,\n this.options.options.domain.type,\n startDate,\n range,\n excludeEnd,\n );\n }\n\n // =========================================================================\n // PUBLIC API\n // =========================================================================\n\n /**\n * Setup and paint the calendar with the given options\n *\n * @param {Object} options The Options object\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n async paint(\n options?: CalHeatmap.DeepPartial,\n plugins?: PluginDefinition[] | PluginDefinition,\n ): Promise {\n this.options.init(options);\n await this.dateHelper.setup(this.options);\n\n this.templateCollection.init();\n\n try {\n validate(this.templateCollection, this.options.options);\n } catch (error) {\n return Promise.reject(error);\n }\n\n if (plugins) {\n this.pluginManager.add(castArray(plugins as any) as PluginDefinition[]);\n }\n\n this.calendarPainter.setup();\n\n // Record all the valid domains\n // Each domain value is a timestamp in milliseconds\n this.domainCollection = new DomainCollection(this.dateHelper);\n this.navigator.loadNewDomains(\n this.createDomainCollection(\n this.options.options.date.start,\n this.options.options.range,\n ),\n );\n\n return Promise.allSettled([this.calendarPainter.paint(), this.fill()]);\n }\n\n /**\n * Add a new subDomainTemplate\n *\n * @since 4.0.0\n * @param {SubDomainTemplate[] | SubDomainTemplate} templates\n * A single, or an array of SubDomainTemplate object\n * @return void\n */\n addTemplates(templates: Template | Template[]): void {\n this.templateCollection.add(templates);\n }\n\n /**\n * Shift the calendar by n domains forward\n *\n * @param {number} n Number of domain intervals to shift forward\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n next(n: number = 1): Promise {\n const loadDirection = this.navigator.loadNewDomains(\n this.createDomainCollection(this.domainCollection.max, n + 1).slice(n),\n ScrollDirection.SCROLL_FORWARD,\n );\n\n return Promise.allSettled([\n this.calendarPainter.paint(loadDirection),\n this.fill(),\n ]);\n }\n\n /**\n * Shift the calendar by n domains backward\n *\n * @param {number} n Number of domain intervals to shift backward\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n previous(n: number = 1): Promise {\n const loadDirection = this.navigator.loadNewDomains(\n this.createDomainCollection(this.domainCollection.min, -n),\n ScrollDirection.SCROLL_BACKWARD,\n );\n\n return Promise.allSettled([\n this.calendarPainter.paint(loadDirection),\n this.fill(),\n ]);\n }\n\n /**\n * Jump directly to a specific date\n *\n * JumpTo will scroll the calendar until the wanted domain with the specified\n * date is visible. Unless you set reset to true, the wanted domain\n * will not necessarily be the first domain of the calendar.\n *\n * @param {Date} date Jump to the domain containing that date\n * @param {boolean} reset Whether the wanted domain\n * should be the first domain of the calendar\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n jumpTo(date: Date, reset: boolean = false): Promise {\n return Promise.allSettled([\n this.calendarPainter.paint(this.navigator.jumpTo(date, reset)),\n this.fill(),\n ]);\n }\n\n /**\n * Fill the calendar with the given data\n *\n * @param {Object|string} dataSource The calendar's datasource,\n * same type as `options.data.source`\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n fill(dataSource = this.options.options.data.source): Promise {\n const { options } = this.options;\n const template = this.templateCollection;\n const endDate = this.dateHelper.intervals(\n options.domain.type,\n this.domainCollection.max,\n 2,\n )[1];\n\n const dataPromise = this.dataFetcher.getDatas(\n dataSource,\n this.domainCollection.min,\n endDate,\n );\n\n return new Promise((resolve, reject) => {\n dataPromise.then(\n (data: any) => {\n this.domainCollection.fill(\n data,\n options.data,\n template.get(options.subDomain.type)!.extractUnit,\n );\n this.populator.populate();\n resolve(null);\n },\n (error) => {\n reject(error);\n },\n );\n });\n }\n\n /**\n * Listener for all events\n *\n * @since 4.0.0\n * @param {string} eventName Name of the event to listen to\n * @param {function} Callback function to execute on event trigger\n * @return void\n */\n on(name: string, fn: (...args: any[]) => any): void {\n this.eventEmitter.on(name, fn);\n }\n\n dimensions(): Dimensions {\n return this.calendarPainter.dimensions;\n }\n\n /**\n * Destroy the calendar\n *\n * @since 3.3.6\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n destroy(): Promise {\n return this.calendarPainter.destroy();\n }\n\n extendDayjs(plugin: PluginFunc): dayjs.Dayjs {\n return this.dateHelper.extend(plugin);\n }\n}\n","const VERSION = '4.2.4';\nexport default VERSION;\n"],"names":["check","it","Math","global","globalThis","window","self","this","Function","shared$4","exports","require$$0","defineProperty","Object","defineGlobalProperty","key","value","configurable","writable","error","require$$1","SHARED","sharedStore","store","sharedModule","undefined","push","version","mode","copyright","license","source","match","fails","exec","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","hasOwnProperty_1","hasOwn","uncurryThis","id","postfix","random","toString","uid","engineUserAgent","navigator","String","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","$String","require$$2","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","shared","require$$3","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","toStringTagSupport","documentAll","document","all","documentAll_1","IS_HTMLDDA","isCallable","objectDefineProperty","descriptors","get","isObject","EXISTS","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","isSymbol","$Symbol","tryToString","aCallable","getMethod","V","P","func","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","DESCRIPTORS","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","getOwnPropertyDescriptor","ENUMERABLE","CONFIGURABLE","WRITABLE","f","O","Attributes","current","enumerable","makeBuiltIn$3","getDescriptor","functionName","PROPER","functionToString","inspectSource","set","has","WeakMap","weakMapBasicDetection","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","classofRaw","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","classof","tag","tryGet","callee","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","descriptor","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","objectGetOwnPropertyNames","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","target","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","defineBuiltInAccessor","SPECIES","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionUncurryThisClause","functionBindContext","that","html","arraySlice","engineIsIos","require$$8","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","require$$12","speciesConstructor","defaultConstructor","S","require$$14","require$$15","hostReportErrors","b","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","objectKeys","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","addToUnscopables","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","allSettled","status","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","stringMultibyte","codeAt","STRING_ITERATOR","point","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","fill","argumentsLength","end","endPos","isArray","createProperty","propertyKey","arrayMethodHasSpeciesSupport","array","foo","Boolean","nativeSlice","HAS_SPECIES_SUPPORT","$Array","__awaiter","thisArg","_arguments","generator","fulfilled","e","rejected","__classPrivateFieldGet","receiver","start","k","fin","prefix","Events","EE","context","once","addListener","emitter","listener","evt","_events","_eventsCount","clearEvent","EventEmitter","eventNames","events","listeners","handlers","l","ee","listenerCount","a1","a2","a3","a4","a5","len","removeListener","j","on","removeAllListeners","off","prefixed","module","isArray$3","castArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","forEach","map","filter","some","every","find","findIndex","filterReject","$map","$assign","assign","objectAssign","A","B","alphabet","chr","T","internalMetadata","objectGetOwnPropertyNamesExternal","arraySliceSimple","$getOwnPropertyNames","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","collection","common","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","getConstructor","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","ScrollDirection","Position","collectionWeak","define","init","SCALE_BASE_OPACITY_COLOR","SCALE_BASE_COLOR_DOMAIN","Navigator","calendar","_classCallCheck","maxDomainReached","minDomainReached","_createClass","newDomainCollection","_this","direction","SCROLL_NONE","templatesClt","templateCollection","minDate","date","extractUnit","maxDate","domainCollection","_Navigator_instances","_Navigator_isDomainBoundaryReached","clamp","range","SCROLL_FORWARD","merge","domainKey","subDomainEndDate","at","dateHelper","intervals","pop","subDomain","mapping","d","v","defaultValue","_Navigator_setDomainsBoundaryReached","SCROLL_BACKWARD","eventEmitter","reset","_this$calendar","Date","loadNewDomains","createDomainCollection","WeakSet","lowerBound","upperBound","reached","doesNotExceedSafeInteger","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","arg","E","arrayMethodIsStrict","nativeJoin","separator","collectionStrong","last","previous","getEntry","removed","prev","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","mergeSort","comparefn","middle","insertionSort","element","left","right","llength","rlength","lindex","rindex","arraySort","firefox","engineFfVersion","engineIsIeOrEdge","webkit","engineWebkitVersion","deletePropertyOrThrow","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","sort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STRICT_METHOD","STABLE_SORT","code","fromCharCode","itemsLength","items","arrayLength","y","getSortCompare","$forEach","isVertical","horizontalPadding","padding","LEFT","RIGHT","verticalPadding","TOP","BOTTOM","DomainCoordinates","domainPainter","Map","scrollDirection","_this$calendar$option","verticalOrientation","dimensions","width","height","exitingTotal","scrollFactor","reverse","yankedDomains","coor","w","_DomainCoordinates_instances","_DomainCoordinates_getWidth","h","_DomainCoordinates_getHeight","pre_x","pre_y","inner_width","gutter","inner_height","_this$calendar$option2","columnsCount","subDomainWidth","domainHorizontalLabelWidth","_this$calendar$option3","rowsCount","subDomainHeight","domainVerticalLabelHeight","DEFAULT_SELECTOR","DomainPainter","coordinates","root","rootNode","animationDuration","t","transition","duration","update","promises","selectAll","append","attr","enterSelection","updateSelection","exitSelection","remove","classname","helper","hour","format","week","month","year","$includes","$filter","callWithSafeIterationClosing","arrayLike","IS_CONSTRUCTOR","mapfn","DOMAIN_FORMAT","xDay","ghDay","day","minute","DomainCollection","interval","excludeEnd","ts","_DomainCollection_instances","_DomainCollection_refreshKeys","callback","newCollection","limit","createValueCallback","_this2","keyToRemove","_this3","fromBeginning","_ref","subDomainKeyExtractor","_this4","groupY","groupedRecords","groupRecords","records","_DomainCollection_setSubDomainValues","_this5","results","validSubDomainTimestamp","timestamp","extractTimestamp","groupFn","cleanedValues","reduce","_toConsumableArray","datum","extractorFn","_this6","groupValues","_DomainCollection_extractValues","parseInt","DomainLabelPainter","label","text","textAlign","_DomainLabelPainter_instances","_DomainLabelPainter_textVerticalAlign","nodes","selection","_DomainLabelPainter_domainRotate","rotate","_this$calendar$option4","offset","_DomainLabelPainter_getDomainInsideWidth","_this$calendar$option5","_this$calendar$option6","_this$calendar$option7","_DomainLabelPainter_getDomainInsideHeight","_this$calendar$option8","calendarPainter","domainsContainerPainter","_this$calendar$option9","_this$calendar$option10","_this$calendar$option11","labelWidth","domainWidth","domainHeight","s","whitespaces","ltrim","RegExp","rtrim","stringTrim","trim","$trim","forcedStringTrimMethod","SubDomainPainter","containerClassname","subDomainSvgGroup","_SubDomainPainter_instances","_SubDomainPainter_setPositions","radius","subDomainsCollection","abs","insert","_SubDomainPainter_classname","ev","_SubDomainPainter_appendText","_options$domain","highlight","unitFn","_len","otherClasses","_key","elem","_SubDomainPainter_getCoordinates","axis","BASE_SELECTOR","TRANSITION_CLASSNAME","DomainsContainerPainter","subDomainPainter","domainLabelPainter","transitionsQueueCount","_DomainsContainerPainter_instances","_DomainsContainerPainter_startAnimation","paint","_DomainsContainerPainter_recomputeDimensions","_DomainsContainerPainter_endAnimation","_a","topHeight","pluginManager","getHeightFromPosition","leftWidth","getWidthFromPosition","select","parentNode","classed","domainsDimensions","PluginPainter","paintAll","setPluginsPosition","top","getFromPosition","bottom","topOffset","plugin","leftOffset","CalendarPainter","pluginPainter","itemSelector","theme","setup","setupAll","navigationDir","transitions","updatePosition","_CalendarPainter_instances","_CalendarPainter_resize","destroyAll","destroy","insideHeight","_CalendarPainter_getWidth","insideWidth","newWidth","newHeight","freeGlobal$1","freeSelf","root$1","freeGlobal","Symbol$2","objectProto","nativeObjectToString","symToStringTag","toStringTag","nullTag","undefinedTag","baseGetTag","isOwn","unmasked","getRawTag","objectToString","asyncTag","funcTag","genTag","proxyTag","isFunction","nativeKeys","MATCH","isRegExp","notARegexp","correctIsRegexpLogic","regexp","error1","error2","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","search","IE_BUG","TO_ENTRIES","IE_WORKAROUND","$entries","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","re","parse","fallback","timeIntervals","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","Error","maybeUtcInterval","TypedArray","Uint8Array","constant","coerceNumbers","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","arrayify","isScaleOptions","option","maybeInterval","isInteger","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","orderof","descending","color","opacity","registry","sqrt4_3","sqrt","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","draw","rx","PI","ry","hy","moveTo","lineTo","closePath","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","ordinalScheme","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","scale","channels","nice","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","h25","quantile","h50","median","inferLogDomain","inferQuantileDomain","createScaleD","transform","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","inferHint","stroke","inferSymbolHint","isNone","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","candidate","normalizeScale","projection","typeProjection","asOrdinalType","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","exposeScale","percent","bandwidth","normalizedScale","scaleOptions","scaleType","applyScaleStyle","_scale","keyname","styles","baseColor","scaleStyle","_ref2","_slicedToArray","prop","Populator","_calendar$options$opt","colorScale","defaultColor","hcl","eq","other","assocIndexOf","ListCache","__data__","coreJsData$1","maskSrcKey","coreJsData","funcToString","toSource","reIsHostCtor","funcProto","reIsNative","baseIsNative","getNative","getValue","Map$2","nativeCreate$1","Hash","getMapData","MapCache","nativeCreate","hash","Stack","pairs","LARGE_ARRAY_SIZE","defineProperty$1","baseAssignValue","assignMergeValue","fromRight","baseFor","iteratee","keysFunc","baseFor$1","freeExports","nodeType","freeModule","Buffer","allocUnsafe","Uint8Array$2","cloneTypedArray","typedArray","isDeep","arrayBuffer","byteLength","byteOffset","baseCreate$1","overArg","getPrototype$1","isPrototype","Ctor","isObjectLike","baseIsArguments","isArguments$1","MAX_SAFE_INTEGER","isLength","isArrayLike","isBuffer$1","isBuffer","objectTag","objectCtorString","typedArrayTags","freeProcess","nodeUtil","types","require","binding","nodeIsTypedArray","isTypedArray","isTypedArray$1","safeGet","assignValue","objValue","reIsUint","isIndex","arrayLikeKeys","inherited","isArr","isArg","isArguments","isBuff","isType","skipIndexes","baseTimes","baseKeysIn","nativeKeysIn","isProto","keysIn","toPlainObject","customizer","isNew","newValue","copyObject","baseMergeDeep","srcIndex","mergeFunc","stack","srcValue","stacked","isCommon","isTyped","copyArray","copy","cloneBuffer","getPrototype","isPlainObject","baseCreate","initCloneObject","baseMerge","identity","nativeMax","baseSetToString","baseSetToString$1","nativeNow","setToString","count","lastCalled","stamp","shortOut","setToString$1","baseRest","otherArgs","overRest","assigner","mergeWith","sources","guard","isIterateeCall","mergeWith$1","SetCache","arraySome","predicate","COMPARE_PARTIAL_FLAG","COMPARE_UNORDERED_FLAG","equalArrays","bitmask","equalFunc","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","boolTag","dateTag","errorTag","mapTag","numberTag","regexpTag","setTag","stringTag","symbolTag","arrayBufferTag","dataViewTag","symbolProto","symbolValueOf","nativeGetSymbols","getSymbols","resIndex","arrayFilter","getSymbols$1","nativeKeys$1","baseKeys","getAllKeys","symbolsFunc","arrayPush","baseGetAllKeys","DataView$1","Promise$2","Set$2","WeakMap$1","promiseTag","weakMapTag","dataViewCtorString","DataView","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ctorString","getTag$1","argsTag","arrayTag","baseIsEqualDeep","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","convert","equalByTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","equalObjects","baseIsEqual","isEqual","baseHas","reIsDeepProp","reIsPlainProp","FUNC_ERROR_TEXT","memoize","resolver","memoized","cache","Cache","rePropName","reEscapeChar","stringToPath","memoizeCapped","quote","subString","stringToPath$1","INFINITY","symbolToString","baseToString","arrayMap","castPath","isKey","toKey","path","hasFunc","hasPath","baseGet","lastIndex","nested","baseSet","re1","re2","OptionsPreProcessors","isString","Options","processors","preProcessors","dynamicDimension","locale","timezone","requestInit","opts","initScale","$RegExp","UNSUPPORTED_Y","MISSED_STICKY","sticky","BROKEN_CARET","regexpStickyHelpers","regexpUnsupportedDotAll","dotAll","flags","regexpUnsupportedNcg","groups","regexpFlags","hasIndices","ignoreCase","multiline","unicode","unicodeSets","stickyHelpers","UNSUPPORTED_DOT_ALL","UNSUPPORTED_NCG","nativeReplace","nativeExec","patchedExec","UPDATES_LAST_INDEX_WRONG","NPCG_INCLUDED","reCopy","group","str","raw","charsAdded","strCopy","regexpExec","RegExpPrototype","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","fixRegExpWellKnownSymbolLogic","SHAM","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","uncurriedNativeRegExpMethod","nativeMethod","arg2","forceStringMethod","$exec","advanceStringIndex","getSubstitution","matched","captures","namedCaptures","tailPos","m","ch","capture","regExpExec","R","REPLACE","require$$16","stringIndexOf","REPLACE_KEEPS_$0","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_SUPPORTS_NAMED_GROUPS","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","res","functionalReplace","fullUnicode","accumulatedResult","nextSourcePosition","replacerArgs","DataFetcher","startTimestamp","endTimestamp","_context","abrupt","_DataFetcher_instances","_DataFetcher_fetch","_callee","newUri","url","parseURI","json","csv","dsv","FUNCTION_NAME_EXISTS","nameRE","dayjs_min","u","o","M","weekdays","months","ordinal","z","utcOffset","clone","p","D","ms","Q","g","$L","utc","$u","$x","$offset","$d","substring","UTC","$y","getFullYear","$M","getMonth","$D","getDate","$W","getDay","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","isSame","startOf","endOf","isAfter","isBefore","$g","unix","getTime","toDate","$locale","weekStart","$set","daysInMonth","subtract","invalidDate","meridiem","monthsShort","weekdaysMin","weekdaysShort","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","extend","$i","isDayjs","en","Ls","yearStart","weeks","dayOfYear","weekday","isoWeeksInYear","isLeapYear","isoWeekday","isoWeekYear","isoWeek","weekYear","offsetName","local","getUTCFullYear","getUTCMonth","getUTCDate","getUTCDay","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","$localOffset","isUTC","timeZoneName","Intl","DateTimeFormat","hour12","timeZone","formatToParts","tz","toLocaleString","$timezone","guess","resolvedOptions","setDefault","formats","toUpperCase","firstDayOfWeek","longDateFormat","localeData","LTS","L","LL","LLL","LLLL","updateLocale","dayjs","weekOfYear","minMax","advancedFormat","localizedFormat","DEFAULT_LOCALE","DateHelper","_typeof","userLocale","loadBrowserLocale","sent","loadNodeLocale","dayjsPlugin","dayjsDate","endOfWeek","pivotDate","getLastWeekOfMonth","getFirstWeekOfMonth","startOfMonth","startOfFirstWeek","endOfMonth","endOfLastWeek","formatter","async","onerror","err","onload","import","ALLOWED_DATA_TYPES","validate","domainType","subDomainType","allowedDomainType","PluginManager","settings","plugins","pendingPaint","Creator","PluginClass","pluginOptions","extractPluginName","dirty","pluginInstance","allPlugins","TOTAL_ITEMS","monthDate","baseX","getMonthWeekNumber","weekNumber","endWeekNumber","getWeeksCountInMonth","clampStart","clampEnd","pivotDay","TemplateCollection","initiated","DefaultTemplates","templates","tplWithParent","template","parentTemplate","CalHeatmap","dataFetcher","populator","EventEmmiter","startDate","loadDirection","jumpTo","dataSource","endDate","dataPromise","getDatas","populate","VERSION"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,159,161,162,163,164,165,166,167,168,169,170,171,172,173,174,178,179,180,181,182,185,186,187,188,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,355,356,358,359,360,361,362,363,364,365,366,367,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,385,387]} \ No newline at end of file +{"version":3,"file":"cal-heatmap.min.esm.js","sources":["../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/define-global-property.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/function-bind-native.js","../node_modules/core-js/internals/function-uncurry-this.js","../node_modules/core-js/internals/is-null-or-undefined.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/has-own-property.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/symbol-constructor-detection.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/document-all.js","../node_modules/core-js/internals/is-callable.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/v8-prototype-define-bug.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/function-call.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/object-is-prototype-of.js","../node_modules/core-js/internals/is-symbol.js","../node_modules/core-js/internals/try-to-string.js","../node_modules/core-js/internals/a-callable.js","../node_modules/core-js/internals/get-method.js","../node_modules/core-js/internals/ordinary-to-primitive.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/to-property-key.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/function-name.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/weak-map-basic-detection.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/make-built-in.js","../node_modules/core-js/internals/define-built-in.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/object-to-string.js","../node_modules/core-js/modules/es.object.to-string.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/math-trunc.js","../node_modules/core-js/internals/to-integer-or-infinity.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/length-of-array-like.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/engine-is-node.js","../node_modules/core-js/internals/function-uncurry-this-accessor.js","../node_modules/core-js/internals/a-possible-prototype.js","../node_modules/core-js/internals/object-set-prototype-of.js","../node_modules/core-js/internals/set-to-string-tag.js","../node_modules/core-js/internals/define-built-in-accessor.js","../node_modules/core-js/internals/set-species.js","../node_modules/core-js/internals/an-instance.js","../node_modules/core-js/internals/is-constructor.js","../node_modules/core-js/internals/task.js","../node_modules/core-js/internals/a-constructor.js","../node_modules/core-js/internals/species-constructor.js","../node_modules/core-js/internals/function-apply.js","../node_modules/core-js/internals/function-uncurry-this-clause.js","../node_modules/core-js/internals/function-bind-context.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/array-slice.js","../node_modules/core-js/internals/validate-arguments-length.js","../node_modules/core-js/internals/engine-is-ios.js","../node_modules/core-js/internals/queue.js","../node_modules/core-js/internals/microtask.js","../node_modules/core-js/internals/engine-is-ios-pebble.js","../node_modules/core-js/internals/engine-is-webos-webkit.js","../node_modules/core-js/internals/perform.js","../node_modules/core-js/internals/promise-native-constructor.js","../node_modules/core-js/internals/engine-is-deno.js","../node_modules/core-js/internals/engine-is-browser.js","../node_modules/core-js/internals/promise-constructor-detection.js","../node_modules/core-js/internals/new-promise-capability.js","../node_modules/core-js/modules/es.promise.constructor.js","../node_modules/core-js/internals/host-report-errors.js","../node_modules/core-js/internals/iterators.js","../node_modules/core-js/internals/is-array-iterator-method.js","../node_modules/core-js/internals/get-iterator-method.js","../node_modules/core-js/internals/get-iterator.js","../node_modules/core-js/internals/iterator-close.js","../node_modules/core-js/internals/iterate.js","../node_modules/core-js/internals/check-correctness-of-iteration.js","../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../node_modules/core-js/modules/es.promise.all.js","../node_modules/core-js/modules/es.promise.catch.js","../node_modules/core-js/modules/es.promise.race.js","../node_modules/core-js/modules/es.promise.reject.js","../node_modules/core-js/internals/promise-resolve.js","../node_modules/core-js/modules/es.promise.resolve.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/add-to-unscopables.js","../node_modules/core-js/internals/iterators-core.js","../node_modules/core-js/internals/correct-prototype-getter.js","../node_modules/core-js/internals/object-get-prototype-of.js","../node_modules/core-js/internals/iterator-create-constructor.js","../node_modules/core-js/internals/iterator-define.js","../node_modules/core-js/internals/create-iter-result-object.js","../node_modules/core-js/modules/es.array.iterator.js","../node_modules/core-js/modules/es.promise.all-settled.js","../node_modules/core-js/internals/to-string.js","../node_modules/core-js/internals/string-multibyte.js","../node_modules/core-js/modules/es.string.iterator.js","../node_modules/core-js/internals/dom-iterables.js","../node_modules/core-js/internals/dom-token-list-prototype.js","../node_modules/core-js/modules/web.dom-collections.iterator.js","../node_modules/core-js/internals/array-fill.js","../node_modules/core-js/modules/es.array.fill.js","../node_modules/core-js/internals/is-array.js","../node_modules/core-js/internals/create-property.js","../node_modules/core-js/internals/array-method-has-species-support.js","../node_modules/core-js/modules/es.array.slice.js","../node_modules/tslib/tslib.es6.js","../node_modules/eventemitter3/index.js","../node_modules/lodash-es/isArray.js","../node_modules/lodash-es/castArray.js","../node_modules/core-js/internals/array-species-constructor.js","../node_modules/core-js/internals/array-species-create.js","../node_modules/core-js/internals/array-iteration.js","../node_modules/core-js/modules/es.array.map.js","../node_modules/core-js/internals/object-assign.js","../node_modules/core-js/modules/es.object.assign.js","../node_modules/core-js/internals/array-slice-simple.js","../node_modules/core-js/internals/object-get-own-property-names-external.js","../node_modules/core-js/internals/array-buffer-non-extensible.js","../node_modules/core-js/internals/object-is-extensible.js","../node_modules/core-js/internals/freezing.js","../node_modules/core-js/internals/internal-metadata.js","../node_modules/core-js/internals/inherit-if-required.js","../node_modules/core-js/internals/collection.js","../node_modules/core-js/internals/define-built-ins.js","../node_modules/core-js/internals/collection-weak.js","../../src/constant.ts","../node_modules/core-js/modules/es.weak-set.constructor.js","../../src/calendar/Navigator.ts","../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../node_modules/core-js/modules/es.array.concat.js","../node_modules/core-js/internals/array-method-is-strict.js","../node_modules/core-js/modules/es.array.join.js","../node_modules/core-js/internals/collection-strong.js","../node_modules/core-js/modules/es.map.constructor.js","../node_modules/core-js/internals/delete-property-or-throw.js","../node_modules/core-js/internals/array-sort.js","../node_modules/core-js/internals/engine-ff-version.js","../node_modules/core-js/internals/engine-is-ie-or-edge.js","../node_modules/core-js/internals/engine-webkit-version.js","../node_modules/core-js/modules/es.array.sort.js","../node_modules/core-js/internals/array-for-each.js","../node_modules/core-js/modules/web.dom-collections.for-each.js","../../src/helpers/PositionHelper.ts","../../src/domain/DomainCoordinates.ts","../../src/domain/DomainPainter.ts","../node_modules/core-js/modules/es.array.includes.js","../node_modules/core-js/modules/es.array.filter.js","../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../node_modules/core-js/internals/array-from.js","../node_modules/core-js/modules/es.array.from.js","../../src/calendar/DomainCollection.ts","../../src/domain/DomainLabelPainter.ts","../node_modules/core-js/internals/whitespaces.js","../node_modules/core-js/internals/string-trim.js","../node_modules/core-js/internals/string-trim-forced.js","../node_modules/core-js/modules/es.string.trim.js","../../src/subDomain/SubDomainPainter.ts","../../src/domain/DomainsContainerPainter.ts","../../src/plugins/PluginPainter.ts","../../src/calendar/CalendarPainter.ts","../node_modules/lodash-es/_freeGlobal.js","../node_modules/lodash-es/_root.js","../node_modules/lodash-es/_Symbol.js","../node_modules/lodash-es/_getRawTag.js","../node_modules/lodash-es/_objectToString.js","../node_modules/lodash-es/_baseGetTag.js","../node_modules/lodash-es/isObject.js","../node_modules/lodash-es/isFunction.js","../node_modules/core-js/modules/es.object.keys.js","../node_modules/core-js/internals/is-regexp.js","../node_modules/core-js/modules/es.string.starts-with.js","../node_modules/core-js/internals/not-a-regexp.js","../node_modules/core-js/internals/correct-is-regexp-logic.js","../node_modules/core-js/internals/object-to-array.js","../node_modules/core-js/modules/es.object.entries.js","../node_modules/@observablehq/plot/src/defined.js","../node_modules/isoformat/src/parse.js","../node_modules/@observablehq/plot/src/time.js","../node_modules/@observablehq/plot/src/options.js","../node_modules/@observablehq/plot/src/scales/index.js","../node_modules/@observablehq/plot/src/symbol.js","../node_modules/@observablehq/plot/src/warnings.js","../node_modules/@observablehq/plot/src/scales/schemes.js","../node_modules/@observablehq/plot/src/scales/quantitative.js","../node_modules/@observablehq/plot/src/scales/diverging.js","../node_modules/@observablehq/plot/src/scales/temporal.js","../node_modules/@observablehq/plot/src/scales/ordinal.js","../node_modules/@observablehq/plot/src/scales.js","../../src/scale.ts","../../src/calendar/Populator.ts","../node_modules/lodash-es/eq.js","../node_modules/lodash-es/_assocIndexOf.js","../node_modules/lodash-es/_listCacheDelete.js","../node_modules/lodash-es/_ListCache.js","../node_modules/lodash-es/_listCacheClear.js","../node_modules/lodash-es/_listCacheGet.js","../node_modules/lodash-es/_listCacheHas.js","../node_modules/lodash-es/_listCacheSet.js","../node_modules/lodash-es/_coreJsData.js","../node_modules/lodash-es/_isMasked.js","../node_modules/lodash-es/_toSource.js","../node_modules/lodash-es/_baseIsNative.js","../node_modules/lodash-es/_getNative.js","../node_modules/lodash-es/_getValue.js","../node_modules/lodash-es/_Map.js","../node_modules/lodash-es/_nativeCreate.js","../node_modules/lodash-es/_hashGet.js","../node_modules/lodash-es/_hashHas.js","../node_modules/lodash-es/_Hash.js","../node_modules/lodash-es/_getMapData.js","../node_modules/lodash-es/_isKeyable.js","../node_modules/lodash-es/_MapCache.js","../node_modules/lodash-es/_hashClear.js","../node_modules/lodash-es/_hashDelete.js","../node_modules/lodash-es/_hashSet.js","../node_modules/lodash-es/_mapCacheClear.js","../node_modules/lodash-es/_mapCacheDelete.js","../node_modules/lodash-es/_mapCacheGet.js","../node_modules/lodash-es/_mapCacheHas.js","../node_modules/lodash-es/_mapCacheSet.js","../node_modules/lodash-es/_Stack.js","../node_modules/lodash-es/_stackClear.js","../node_modules/lodash-es/_stackDelete.js","../node_modules/lodash-es/_stackGet.js","../node_modules/lodash-es/_stackHas.js","../node_modules/lodash-es/_stackSet.js","../node_modules/lodash-es/_defineProperty.js","../node_modules/lodash-es/_baseAssignValue.js","../node_modules/lodash-es/_assignMergeValue.js","../node_modules/lodash-es/_baseFor.js","../node_modules/lodash-es/_createBaseFor.js","../node_modules/lodash-es/_cloneBuffer.js","../node_modules/lodash-es/_Uint8Array.js","../node_modules/lodash-es/_cloneTypedArray.js","../node_modules/lodash-es/_cloneArrayBuffer.js","../node_modules/lodash-es/_baseCreate.js","../node_modules/lodash-es/_overArg.js","../node_modules/lodash-es/_getPrototype.js","../node_modules/lodash-es/_isPrototype.js","../node_modules/lodash-es/isObjectLike.js","../node_modules/lodash-es/_baseIsArguments.js","../node_modules/lodash-es/isArguments.js","../node_modules/lodash-es/isLength.js","../node_modules/lodash-es/isArrayLike.js","../node_modules/lodash-es/isBuffer.js","../node_modules/lodash-es/stubFalse.js","../node_modules/lodash-es/isPlainObject.js","../node_modules/lodash-es/_baseIsTypedArray.js","../node_modules/lodash-es/_nodeUtil.js","../node_modules/lodash-es/_baseUnary.js","../node_modules/lodash-es/isTypedArray.js","../node_modules/lodash-es/_safeGet.js","../node_modules/lodash-es/_assignValue.js","../node_modules/lodash-es/_isIndex.js","../node_modules/lodash-es/_arrayLikeKeys.js","../node_modules/lodash-es/_baseTimes.js","../node_modules/lodash-es/_baseKeysIn.js","../node_modules/lodash-es/_nativeKeysIn.js","../node_modules/lodash-es/keysIn.js","../node_modules/lodash-es/toPlainObject.js","../node_modules/lodash-es/_copyObject.js","../node_modules/lodash-es/_baseMergeDeep.js","../node_modules/lodash-es/isArrayLikeObject.js","../node_modules/lodash-es/_copyArray.js","../node_modules/lodash-es/_initCloneObject.js","../node_modules/lodash-es/_baseMerge.js","../node_modules/lodash-es/identity.js","../node_modules/lodash-es/_overRest.js","../node_modules/lodash-es/_baseSetToString.js","../node_modules/lodash-es/constant.js","../node_modules/lodash-es/_shortOut.js","../node_modules/lodash-es/_setToString.js","../node_modules/lodash-es/_baseRest.js","../node_modules/lodash-es/_apply.js","../node_modules/lodash-es/mergeWith.js","../node_modules/lodash-es/_createAssigner.js","../node_modules/lodash-es/_isIterateeCall.js","../node_modules/lodash-es/_SetCache.js","../node_modules/lodash-es/_arraySome.js","../node_modules/lodash-es/_setCacheAdd.js","../node_modules/lodash-es/_setCacheHas.js","../node_modules/lodash-es/_equalArrays.js","../node_modules/lodash-es/_cacheHas.js","../node_modules/lodash-es/_mapToArray.js","../node_modules/lodash-es/_setToArray.js","../node_modules/lodash-es/_equalByTag.js","../node_modules/lodash-es/_getSymbols.js","../node_modules/lodash-es/_arrayFilter.js","../node_modules/lodash-es/stubArray.js","../node_modules/lodash-es/_nativeKeys.js","../node_modules/lodash-es/_baseKeys.js","../node_modules/lodash-es/keys.js","../node_modules/lodash-es/_getAllKeys.js","../node_modules/lodash-es/_baseGetAllKeys.js","../node_modules/lodash-es/_arrayPush.js","../node_modules/lodash-es/_equalObjects.js","../node_modules/lodash-es/_DataView.js","../node_modules/lodash-es/_Promise.js","../node_modules/lodash-es/_Set.js","../node_modules/lodash-es/_WeakMap.js","../node_modules/lodash-es/_getTag.js","../node_modules/lodash-es/_baseIsEqualDeep.js","../node_modules/lodash-es/_baseIsEqual.js","../node_modules/lodash-es/isEqual.js","../node_modules/lodash-es/_baseHas.js","../node_modules/lodash-es/isSymbol.js","../node_modules/lodash-es/_isKey.js","../node_modules/lodash-es/memoize.js","../node_modules/lodash-es/_stringToPath.js","../node_modules/lodash-es/_memoizeCapped.js","../node_modules/lodash-es/_baseToString.js","../node_modules/lodash-es/_arrayMap.js","../node_modules/lodash-es/_castPath.js","../node_modules/lodash-es/toString.js","../node_modules/lodash-es/_toKey.js","../node_modules/lodash-es/has.js","../node_modules/lodash-es/_hasPath.js","../node_modules/lodash-es/get.js","../node_modules/lodash-es/_baseGet.js","../node_modules/lodash-es/set.js","../node_modules/lodash-es/_baseSet.js","../../src/options/OptionsPreProcessors.ts","../node_modules/core-js/internals/regexp-exec.js","../node_modules/lodash-es/isString.js","../../src/options/Options.ts","../node_modules/core-js/internals/regexp-flags.js","../node_modules/core-js/internals/regexp-sticky-helpers.js","../node_modules/core-js/internals/regexp-unsupported-dot-all.js","../node_modules/core-js/internals/regexp-unsupported-ncg.js","../node_modules/core-js/modules/es.regexp.exec.js","../node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","../node_modules/core-js/internals/advance-string-index.js","../node_modules/core-js/internals/get-substitution.js","../node_modules/core-js/internals/regexp-exec-abstract.js","../node_modules/core-js/modules/es.string.replace.js","../../src/DataFetcher.ts","../node_modules/core-js/modules/es.function.name.js","../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/weekOfYear.js","../node_modules/dayjs/plugin/dayOfYear.js","../node_modules/dayjs/plugin/weekday.js","../node_modules/dayjs/plugin/minMax.js","../node_modules/dayjs/plugin/isoWeeksInYear.js","../node_modules/dayjs/plugin/isoWeek.js","../node_modules/dayjs/plugin/isLeapYear.js","../node_modules/dayjs/plugin/advancedFormat.js","../node_modules/dayjs/plugin/utc.js","../node_modules/dayjs/plugin/timezone.js","../node_modules/dayjs/plugin/localeData.js","../node_modules/dayjs/plugin/localizedFormat.js","../node_modules/dayjs/plugin/updateLocale.js","../../src/helpers/DateHelper.ts","../node_modules/core-js/modules/es.string.includes.js","../../src/options/OptionsValidator.ts","../node_modules/core-js/modules/es.set.constructor.js","../../src/plugins/PluginManager.ts","../../src/templates/index.ts","../../src/templates/minute.ts","../../src/templates/hour.ts","../../src/templates/day.ts","../../src/templates/xDay.ts","../../src/templates/ghDay.ts","../../src/templates/week.ts","../../src/templates/month.ts","../../src/templates/year.ts","../../src/TemplateCollection.ts","../../src/CalHeatmap.ts","../../src/version.ts"],"sourcesContent":["'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = lengthOfArrayLike(O);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fill = require('../internals/array-fill');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.fill` method\n// https://tc39.es/ecma262/#sec-array.prototype.fill\n$({ target: 'Array', proto: true }, {\n fill: fill\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('fill');\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nexport default isArray;\n","import isArray from './isArray.js';\n\n/**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\nfunction castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n}\n\nexport default castArray;\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","import { ScrollDirection } from '../constant';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type DomainCollection from './DomainCollection';\nimport type { Timestamp } from '../index';\n\nexport default class Navigator {\n calendar: CalHeatmap;\n\n minDomainReached: boolean;\n\n maxDomainReached: boolean;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.maxDomainReached = false;\n this.minDomainReached = false;\n }\n\n loadNewDomains(\n newDomainCollection: DomainCollection,\n direction: ScrollDirection = ScrollDirection.SCROLL_NONE,\n ): ScrollDirection {\n const { options } = this.calendar.options;\n const templatesClt = this.calendar.templateCollection;\n const minDate = options.date.min ?\n templatesClt.get(options.domain.type)!.extractUnit(+options.date.min) :\n undefined;\n const maxDate = options.date.max ?\n templatesClt.get(options.domain.type)!.extractUnit(+options.date.max) :\n undefined;\n const { domainCollection } = this.calendar;\n\n if (\n this.#isDomainBoundaryReached(\n newDomainCollection,\n minDate,\n maxDate,\n direction,\n )\n ) {\n return ScrollDirection.SCROLL_NONE;\n }\n\n if (direction !== ScrollDirection.SCROLL_NONE) {\n newDomainCollection\n .clamp(minDate, maxDate)\n .slice(options.range, direction === ScrollDirection.SCROLL_FORWARD);\n }\n\n domainCollection.merge(\n newDomainCollection,\n options.range,\n (domainKey: Timestamp, index: number) => {\n let subDomainEndDate = null;\n if (newDomainCollection.at(index + 1)) {\n subDomainEndDate = newDomainCollection.at(index + 1);\n } else {\n subDomainEndDate = this.calendar.dateHelper\n .intervals(options.domain.type, domainKey, 2)\n .pop();\n }\n return templatesClt\n .get(options.subDomain.type)!\n .mapping(domainKey, subDomainEndDate!)\n .map((d) => ({ ...d, v: options.data.defaultValue }));\n },\n );\n\n this.#setDomainsBoundaryReached(\n domainCollection.min,\n domainCollection.max,\n minDate,\n maxDate,\n );\n\n if (direction === ScrollDirection.SCROLL_BACKWARD) {\n this.calendar.eventEmitter.emit('domainsLoaded', [domainCollection.min]);\n } else if (direction === ScrollDirection.SCROLL_FORWARD) {\n this.calendar.eventEmitter.emit('domainsLoaded', [domainCollection.max]);\n }\n\n return direction;\n }\n\n jumpTo(date: Date, reset: boolean): ScrollDirection {\n const { domainCollection, options } = this.calendar;\n const minDate = new Date(domainCollection.min!);\n const maxDate = new Date(domainCollection.max!);\n\n if (date < minDate) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(date, minDate, false),\n ScrollDirection.SCROLL_BACKWARD,\n );\n }\n if (reset) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(date, options.options.range),\n minDate < date ?\n ScrollDirection.SCROLL_FORWARD :\n ScrollDirection.SCROLL_BACKWARD,\n );\n }\n\n if (date > maxDate) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(maxDate, date, false),\n ScrollDirection.SCROLL_FORWARD,\n );\n }\n\n return ScrollDirection.SCROLL_NONE;\n }\n\n #isDomainBoundaryReached(\n newDomainCollection: DomainCollection,\n minDate?: Timestamp,\n maxDate?: Timestamp,\n direction?: ScrollDirection,\n ): boolean {\n if (\n maxDate &&\n newDomainCollection.max! >= maxDate &&\n this.maxDomainReached &&\n direction === ScrollDirection.SCROLL_FORWARD\n ) {\n return true;\n }\n\n if (\n minDate &&\n newDomainCollection.min! <= minDate &&\n this.minDomainReached &&\n direction === ScrollDirection.SCROLL_BACKWARD\n ) {\n return true;\n }\n\n return false;\n }\n\n #setDomainsBoundaryReached(\n lowerBound: Timestamp,\n upperBound: Timestamp,\n min?: Timestamp,\n max?: Timestamp,\n ): void {\n if (min) {\n const reached = lowerBound <= min;\n this.calendar.eventEmitter.emit(\n reached ? 'minDateReached' : 'minDateNotReached',\n );\n this.minDomainReached = reached;\n }\n if (max) {\n const reached = upperBound >= max;\n this.calendar.eventEmitter.emit(\n reached ? 'maxDateReached' : 'maxDateNotReached',\n );\n this.maxDomainReached = reached;\n }\n }\n}\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key === key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first === entry) state.first = next;\n if (state.last === entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind === 'keys') return createIterResultObject(entry.key, false);\n if (kind === 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","'use strict';\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","'use strict';\nvar UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar nativeSort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = lengthOfArrayLike(items);\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","import { Position } from '../constant';\nimport type { Padding } from '../options/Options';\n\nexport function isHorizontal(position: string): boolean {\n return position === 'left' || position === 'right';\n}\n\nexport function isVertical(position: string): boolean {\n return position === 'top' || position === 'bottom';\n}\n\nexport function horizontalPadding(padding: Padding): number {\n return padding[Position.LEFT] + padding[Position.RIGHT];\n}\n\nexport function verticalPadding(padding: Padding): number {\n return padding[Position.TOP] + padding[Position.BOTTOM];\n}\n","import { ScrollDirection } from '../constant';\nimport { horizontalPadding, verticalPadding } from '../helpers/PositionHelper';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type DomainPainter from './DomainPainter';\nimport type DomainCollection from '../calendar/DomainCollection';\nimport type { SubDomain, Dimensions, Timestamp } from '../index';\n\ntype SubDomainWithCoordinates = Required & {\n pre_x: number;\n pre_y: number;\n width: number;\n height: number;\n inner_width: number;\n inner_height: number;\n};\n\nexport default class DomainCoordinates {\n calendar: CalHeatmap;\n\n domainPainter: DomainPainter;\n\n collection: Map;\n\n scrollDirection: ScrollDirection;\n\n constructor(calendar: CalHeatmap, domainPainter: DomainPainter) {\n this.calendar = calendar;\n this.domainPainter = domainPainter;\n this.collection = new Map();\n this.scrollDirection = ScrollDirection.SCROLL_FORWARD;\n }\n\n get(domainKey: Timestamp): SubDomainWithCoordinates | undefined {\n return this.collection.get(domainKey);\n }\n\n update(collection: DomainCollection, scrollDirection: ScrollDirection) {\n const { verticalOrientation, domain } = this.calendar.options.options;\n\n this.scrollDirection = scrollDirection;\n const dimensions: Dimensions = {\n width: 0,\n height: 0,\n };\n let exitingTotal = 0;\n let scrollFactor =\n scrollDirection === ScrollDirection.SCROLL_FORWARD ? -1 : 1;\n const { keys } = collection;\n if (this.calendar.options.options.domain.sort === 'desc') {\n keys.reverse();\n scrollFactor *= -1;\n }\n\n collection.yankedDomains.forEach((domainKey: Timestamp) => {\n exitingTotal +=\n this.collection.get(domainKey)![\n verticalOrientation ? 'height' : 'width'\n ];\n });\n collection.yankedDomains.forEach((domainKey: Timestamp) => {\n const coor = this.collection.get(domainKey)!;\n this.collection.set(domainKey, {\n ...coor,\n x: verticalOrientation ? coor.x : coor.x + exitingTotal * scrollFactor,\n y: verticalOrientation ? coor.y + exitingTotal * scrollFactor : coor.y,\n });\n });\n\n keys.forEach((domainKey: Timestamp) => {\n const w = this.#getWidth(domainKey);\n const h = this.#getHeight(domainKey);\n if (verticalOrientation) {\n dimensions.height += h;\n dimensions.width = Math.max(w, dimensions.width);\n } else {\n dimensions.width += w;\n dimensions.height = Math.max(h, dimensions.height);\n }\n\n const x = dimensions.width - w;\n const y = dimensions.height - h;\n\n this.collection.set(domainKey, {\n ...this.collection.get(domainKey)!,\n x: verticalOrientation ? 0 : x,\n y: verticalOrientation ? y : 0,\n pre_x: verticalOrientation ? x : x - exitingTotal * scrollFactor,\n pre_y: verticalOrientation ? y - exitingTotal * scrollFactor : y,\n width: w,\n height: h,\n inner_width: w - (verticalOrientation ? 0 : domain.gutter),\n inner_height: h - (!verticalOrientation ? 0 : domain.gutter),\n });\n });\n\n return dimensions;\n }\n\n /**\n * Return the full width of the domain block\n * @param {number} d Domain start timestamp\n * @return {number} The full width of the domain,\n * including all padding and gutter\n * Used to compute the x position of the domains on the x axis\n */\n #getWidth(d: Timestamp): number {\n const {\n domain, subDomain, x, verticalOrientation,\n } =\n this.calendar.options.options;\n const columnsCount = this.calendar.templateCollection\n .get(subDomain.type)!\n .columnsCount(d);\n\n const subDomainWidth =\n (subDomain.width + subDomain.gutter) * columnsCount - subDomain.gutter;\n\n return (\n horizontalPadding(domain.padding) +\n x.domainHorizontalLabelWidth +\n (verticalOrientation ? 0 : domain.gutter) +\n subDomainWidth\n );\n }\n\n /**\n * Return the full height of the domain block\n * @param {number} d Domain start timestamp\n * @return {number} The full height of the domain,\n * including all paddings and gutter.\n * Used to compute the y position of the domains on the y axis\n */\n #getHeight(d: Timestamp): number {\n const {\n domain, subDomain, x, verticalOrientation,\n } =\n this.calendar.options.options;\n const rowsCount = this.calendar.templateCollection\n .get(subDomain.type)!\n .rowsCount(d);\n\n const subDomainHeight =\n (subDomain.height + subDomain.gutter) * rowsCount - subDomain.gutter;\n\n return (\n verticalPadding(domain.padding) +\n subDomainHeight +\n (verticalOrientation ? domain.gutter : 0) +\n x.domainVerticalLabelHeight\n );\n }\n}\n","import DomainCoordinates from './DomainCoordinates';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { ScrollDirection } from '../constant';\nimport type { Dimensions, Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '.ch-domain';\n\nexport default class DomainPainter {\n calendar: CalHeatmap;\n\n coordinates: DomainCoordinates;\n\n root: any;\n\n dimensions: Dimensions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.coordinates = new DomainCoordinates(calendar, this);\n this.root = null;\n\n // Dimensions of the internal area containing all the domains\n // Excluding all surrounding margins\n this.dimensions = {\n width: 0,\n height: 0,\n };\n }\n\n paint(scrollDirection: ScrollDirection, rootNode: any): Promise[] {\n const { animationDuration } = this.calendar.options.options;\n const t = rootNode.transition().duration(animationDuration);\n const coor = this.coordinates;\n\n this.dimensions = coor.update(\n this.calendar.domainCollection,\n scrollDirection,\n );\n\n const promises: Promise[] = [];\n\n this.root = rootNode\n .selectAll(DEFAULT_SELECTOR)\n .data(this.calendar.domainCollection.keys, (d: Timestamp) => d)\n .join(\n (enter: any) => enter\n .append('svg')\n .attr('x', (d: Timestamp) => coor.get(d)!.pre_x)\n .attr('y', (d: Timestamp) => coor.get(d)!.pre_y)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .attr('class', (d: Timestamp) => this.#getClassName(d))\n .call((enterSelection: any) => enterSelection\n .append('rect')\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .call((enterSelection: any) => promises.push(\n enterSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .end(),\n )),\n (update: any) => update\n .call((updateSelection: any) => promises.push(\n updateSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .end(),\n ))\n .call((updateSelection: any) => promises.push(\n updateSelection\n .selectAll(`${DEFAULT_SELECTOR}-bg`)\n .transition(t)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .end(),\n )),\n (exit: any) => exit.call((exitSelection: any) => promises.push(\n exitSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .remove()\n .end(),\n )),\n );\n\n return promises;\n }\n\n #getClassName(d: Timestamp): string {\n let classname = DEFAULT_SELECTOR.slice(1);\n const helper = this.calendar.dateHelper.date(d);\n\n switch (this.calendar.options.options.domain.type) {\n case 'hour':\n classname += ` h_${helper.hour()}`;\n break;\n case 'day':\n classname += ` d_${helper.date()} dy_${helper.format('d') + 1}`;\n break;\n case 'week':\n classname += ` w_${helper.week()}`;\n break;\n case 'month':\n classname += ` m_${helper.month() + 1}`;\n break;\n case 'year':\n classname += ` y_${helper.year()}`;\n break;\n default:\n }\n return classname;\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n // eslint-disable-next-line es/no-array-prototype-includes -- detection\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","import castArray from 'lodash-es/castArray';\n\nimport type { SubDomain } from '../index';\nimport type {\n DataOptions,\n DataGroupType,\n DataRecord,\n} from '../options/Options';\nimport { DomainType, Timestamp } from '../index';\nimport type DateHelper from '../helpers/DateHelper';\n\nexport const DOMAIN_FORMAT: Record = {\n year: 'YYYY',\n month: 'MMMM',\n week: 'wo [week] YYYY',\n xDay: 'Do MMM',\n ghDay: 'Do MMM',\n day: 'Do MMM',\n hour: 'HH:00',\n minute: 'HH:mm',\n};\n\ntype GroupedRecords = Map;\ntype ValueType = string | number | null;\n\nexport default class DomainCollection {\n collection: Map;\n\n dateHelper: DateHelper;\n\n min: Timestamp;\n\n max: Timestamp;\n\n keys: Timestamp[];\n\n yankedDomains: Timestamp[];\n\n constructor(\n dateHelper: DateHelper,\n interval?: DomainType,\n start?: Date | Timestamp,\n range?: Date | Timestamp,\n excludeEnd: boolean = false,\n ) {\n this.collection = new Map();\n this.dateHelper = dateHelper;\n\n if (interval && start && range) {\n const ts = this.dateHelper\n .intervals(interval, start, range, excludeEnd)\n .map((d: Timestamp) => castArray(d));\n\n // @ts-ignore\n this.collection = new Map(ts);\n }\n\n this.min = 0;\n this.max = 0;\n this.keys = [];\n this.yankedDomains = [];\n\n if (this.collection.size > 0) {\n this.#refreshKeys();\n }\n }\n\n has(key: Timestamp): boolean {\n return this.collection.has(key);\n }\n\n get(key: Timestamp) {\n return this.collection.get(key);\n }\n\n forEach(callback: any) {\n return this.collection.forEach(callback);\n }\n\n at(index: number): Timestamp {\n return this.keys[index];\n }\n\n clamp(minDate?: Timestamp, maxDate?: Timestamp): DomainCollection {\n if (minDate && this.min! < minDate) {\n this.keys\n .filter((key) => key < minDate)\n .forEach((d) => this.collection.delete(d));\n }\n\n if (maxDate && this.max! > maxDate) {\n this.keys\n .filter((key) => key > maxDate)\n .forEach((d) => this.collection.delete(d));\n }\n\n this.#refreshKeys();\n\n return this;\n }\n\n merge(\n newCollection: DomainCollection,\n limit: number,\n createValueCallback: Function,\n ): void {\n this.yankedDomains = [];\n\n newCollection.keys.forEach((domainKey, index) => {\n if (this.has(domainKey)) {\n return;\n }\n\n if (this.collection.size >= limit) {\n let keyToRemove = this.max;\n\n if (domainKey > this.max!) {\n keyToRemove = this.min;\n }\n\n if (keyToRemove && this.collection.delete(keyToRemove)) {\n this.yankedDomains.push(keyToRemove);\n }\n }\n this.collection.set(domainKey, createValueCallback(domainKey, index));\n this.#refreshKeys();\n });\n this.yankedDomains = this.yankedDomains.sort((a, b) => a - b);\n }\n\n slice(limit: number = 0, fromBeginning: boolean = true): DomainCollection {\n if (this.keys.length > limit) {\n const keysToDelete = fromBeginning ?\n this.keys.slice(0, -limit) :\n this.keys.slice(limit);\n\n keysToDelete.forEach((key) => {\n this.collection.delete(key);\n });\n\n this.#refreshKeys();\n }\n\n return this;\n }\n\n fill(\n data: DataRecord[],\n {\n x,\n y,\n groupY,\n defaultValue,\n }: {\n x: DataOptions['x'];\n y: DataOptions['y'];\n groupY: DataOptions['groupY'];\n defaultValue: DataOptions['defaultValue'];\n },\n subDomainKeyExtractor: Function,\n ): void {\n const groupedRecords: GroupedRecords = this.groupRecords(\n data,\n x,\n subDomainKeyExtractor,\n );\n\n this.keys.forEach((domainKey) => {\n const records = groupedRecords.get(domainKey) || {};\n this.#setSubDomainValues(domainKey, records, y, groupY, defaultValue);\n });\n }\n\n #setSubDomainValues(\n domainKey: Timestamp,\n records: { [key: string]: DataRecord[] },\n y: DataOptions['y'],\n groupY: DataOptions['groupY'],\n defaultValue: DataOptions['defaultValue'],\n ): void {\n this.get(domainKey)!.forEach((subDomain: SubDomain, index: number) => {\n let value: ValueType = defaultValue;\n if (records.hasOwnProperty(subDomain.t)) {\n value = this.groupValues(\n this.#extractValues(records[subDomain.t], y),\n groupY,\n );\n }\n\n this.get(domainKey)![index].v = value;\n });\n }\n\n groupRecords(\n data: DataRecord[],\n x: DataOptions['x'],\n subDomainKeyExtractor: Function,\n ): GroupedRecords {\n const results: GroupedRecords = new Map();\n const validSubDomainTimestamp: Map = new Map();\n this.keys.forEach((domainKey) => {\n this.get(domainKey)!.forEach((subDomain: SubDomain) => {\n validSubDomainTimestamp.set(subDomain.t, domainKey);\n });\n });\n\n data.forEach((d) => {\n const timestamp = this.extractTimestamp(d, x, subDomainKeyExtractor);\n\n if (validSubDomainTimestamp.has(timestamp)) {\n const domainKey = validSubDomainTimestamp.get(timestamp)!;\n const records = results.get(domainKey) || {};\n records[timestamp] ||= [];\n records[timestamp].push(d);\n\n results.set(domainKey, records);\n }\n });\n\n return results;\n }\n\n // eslint-disable-next-line class-methods-use-this\n #extractValues(data: DataRecord[], y: string | Function): ValueType[] {\n return data.map((d): ValueType => (typeof y === 'function' ? y(d) : d[y]));\n }\n\n // eslint-disable-next-line class-methods-use-this\n groupValues(\n values: ValueType[],\n groupFn: DataGroupType | ((values: ValueType[]) => ValueType),\n ): ValueType {\n const cleanedValues = values.filter((n) => n !== null);\n\n if (typeof groupFn === 'string') {\n if (cleanedValues.every((n) => typeof n === 'number')) {\n switch (groupFn) {\n case 'sum':\n return (cleanedValues as number[]).reduce((a, b) => a + b, 0);\n case 'count':\n return cleanedValues.length;\n case 'min':\n return Math.min(...(cleanedValues as number[])) || null;\n case 'max':\n return Math.max(...(cleanedValues as number[])) || null;\n case 'average':\n return cleanedValues.length > 0 ?\n (cleanedValues as number[]).reduce((a, b) => a + b, 0) /\n cleanedValues.length :\n null;\n default:\n return null;\n }\n }\n\n switch (groupFn) {\n case 'count':\n return cleanedValues.length;\n default:\n return null;\n }\n } else if (typeof groupFn === 'function') {\n return groupFn(cleanedValues);\n }\n\n return null;\n }\n\n // eslint-disable-next-line class-methods-use-this\n extractTimestamp(\n datum: DataRecord,\n x: string | Function,\n extractorFn: Function,\n ): Timestamp {\n let timestamp: string | Timestamp =\n typeof x === 'function' ? x(datum) : datum[x];\n\n if (typeof timestamp === 'string') {\n timestamp = +new Date(timestamp);\n }\n\n return extractorFn(timestamp);\n }\n\n #refreshKeys(): Timestamp[] {\n this.keys = Array.from(this.collection.keys())\n .map((d: any) => parseInt(d, 10))\n .sort((a, b) => a - b);\n\n const { keys } = this;\n // eslint-disable-next-line prefer-destructuring\n this.min = keys[0];\n this.max = keys[keys.length - 1];\n\n return this.keys;\n }\n}\n","import { Position } from '../constant';\nimport {\n isVertical,\n verticalPadding,\n horizontalPadding,\n} from '../helpers/PositionHelper';\nimport { DOMAIN_FORMAT } from '../calendar/DomainCollection';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '.ch-domain-text';\n\nexport default class DomainLabelPainter {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n paint(root: any): void {\n const { label, type } = this.calendar.options.options.domain;\n const { dateHelper } = this.calendar;\n let format = label.text;\n if (format === null || format === '') {\n return;\n }\n\n if (typeof format === 'undefined') {\n format = DOMAIN_FORMAT[type];\n }\n\n root\n .selectAll(DEFAULT_SELECTOR)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('text')\n .attr('class', DEFAULT_SELECTOR.slice(1))\n .attr('x', (d: Timestamp) => this.#getX(d))\n .attr('y', (d: Timestamp) => this.#getY(d))\n .attr('text-anchor', label.textAlign)\n .attr('dominant-baseline', () => this.#textVerticalAlign())\n .text((d: Timestamp, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n dateHelper.format(d, format!, nodes[i]))\n .call((selection: any) => this.#domainRotate(selection)),\n (update: any) => {\n update\n .attr('x', (d: Timestamp) => this.#getX(d))\n .attr('y', (d: Timestamp) => this.#getY(d))\n .attr('text-anchor', label.textAlign)\n .attr('dominant-baseline', () => this.#textVerticalAlign())\n .text((d: Timestamp, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n dateHelper.format(d, format!, nodes[i]))\n .call((selection: any) => this.#domainRotate(selection));\n },\n );\n }\n\n #textVerticalAlign(): string {\n const { position, rotate } = this.calendar.options.options.domain.label;\n\n if (isVertical(position)) {\n return 'middle';\n }\n\n if (\n (rotate === 'left' && position === 'left') ||\n (rotate === 'right' && position === 'right')\n ) {\n return 'bottom';\n }\n\n return 'hanging';\n }\n\n #getX(d: Timestamp): number {\n const {\n padding,\n label: { position, textAlign, offset },\n } = this.calendar.options.options.domain;\n const { domainHorizontalLabelWidth } = this.calendar.options.options.x;\n\n let x = padding[Position.LEFT];\n\n if (position === 'right') {\n x += this.#getDomainInsideWidth(d);\n }\n\n if (textAlign === 'middle') {\n if (['top', 'bottom'].includes(position)) {\n x += this.#getDomainInsideWidth(d) / 2;\n } else {\n x += domainHorizontalLabelWidth / 2;\n }\n }\n\n if (textAlign === 'end') {\n if (isVertical(position)) {\n x += this.#getDomainInsideWidth(d);\n } else {\n x += domainHorizontalLabelWidth;\n }\n }\n\n return x + offset.x;\n }\n\n #getY(d: Timestamp): number {\n const {\n domain: {\n label: { position, offset },\n padding,\n },\n x,\n } = this.calendar.options.options;\n\n let y = padding[Position.TOP] + x.domainVerticalLabelHeight / 2;\n\n if (position === 'bottom') {\n y += this.#getDomainInsideHeight(d);\n }\n\n return y + offset.y;\n }\n\n #getDomainInsideWidth(d: Timestamp): number {\n const {\n domain: { padding },\n x: { domainHorizontalLabelWidth },\n } = this.calendar.options.options;\n const { coordinates } =\n this.calendar.calendarPainter.domainsContainerPainter.domainPainter;\n\n return (\n coordinates.get(d)!.inner_width -\n domainHorizontalLabelWidth -\n horizontalPadding(padding)\n );\n }\n\n #getDomainInsideHeight(d: Timestamp): number {\n const {\n x: { domainVerticalLabelHeight },\n domain: { padding },\n } = this.calendar.options.options;\n const { coordinates } =\n this.calendar.calendarPainter.domainsContainerPainter.domainPainter;\n\n return (\n coordinates.get(d)!.inner_height -\n domainVerticalLabelHeight -\n verticalPadding(padding)\n );\n }\n\n #domainRotate(selection: any) {\n const {\n domain: {\n label: { rotate, textAlign, position },\n },\n x,\n } = this.calendar.options.options;\n const labelWidth = x.domainHorizontalLabelWidth;\n\n switch (rotate) {\n // Rotating the text clockwise\n case 'right':\n selection.attr('transform', (d: Timestamp) => {\n const domainWidth = this.#getDomainInsideWidth(d);\n const domainHeight = this.#getDomainInsideHeight(d);\n const s = [\n `rotate(90, ${position === 'right' ? domainWidth : labelWidth}, 0)`,\n ];\n\n switch (position) {\n case 'right':\n if (textAlign === 'middle') {\n s.push(`translate(${domainHeight / 2 - labelWidth / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(${domainHeight - labelWidth})`);\n }\n break;\n case 'left':\n if (textAlign === 'start') {\n s.push(`translate(${labelWidth})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(${labelWidth / 2 + domainHeight / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(${domainHeight})`);\n }\n break;\n default:\n }\n\n return s.join(',');\n });\n break;\n // Rotating the text anticlockwise\n case 'left':\n selection.attr('transform', (d: Timestamp) => {\n const domainWidth = this.#getDomainInsideWidth(d);\n const domainHeight = this.#getDomainInsideHeight(d);\n const s = [\n `rotate(270, ${\n position === 'right' ? domainWidth : labelWidth\n }, 0)`,\n ];\n\n switch (position) {\n case 'right':\n if (textAlign === 'start') {\n s.push(`translate(-${domainHeight})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(-${domainHeight / 2 + labelWidth / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(-${labelWidth})`);\n }\n break;\n case 'left':\n if (textAlign === 'start') {\n s.push(`translate(${labelWidth - domainHeight})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(${labelWidth / 2 - domainHeight / 2})`);\n }\n break;\n default:\n }\n\n return s.join(',');\n });\n break;\n default:\n }\n }\n}\n","'use strict';\n// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { Position } from '../constant';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp, SubDomain } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-subdomain';\nconst HIGHLIGHT_CLASSNAME = 'highlight';\n\nexport default class SubDomainPainter {\n calendar: CalHeatmap;\n\n root: any;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n }\n\n paint(root: any): void {\n this.root = root || this.root;\n const containerClassname = `${DEFAULT_SELECTOR}-container`;\n\n const subDomainSvgGroup = this.root\n .selectAll(containerClassname)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('svg')\n .call((selection: any) => this.#setPositions(selection))\n .attr('class', containerClassname.slice(1)),\n\n (update: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n update.call((selection: any) => this.#setPositions(selection)),\n );\n\n const {\n subDomain: {\n radius, width, height, sort,\n },\n } = this.calendar.options.options;\n const evt = this.calendar.eventEmitter;\n\n subDomainSvgGroup\n .selectAll('g')\n .data((d: Timestamp) => {\n const subDomainsCollection: SubDomain[] =\n this.calendar.domainCollection.get(d)!;\n if (sort === 'desc') {\n const max = Math.max(\n ...subDomainsCollection.map((s: SubDomain) => s.x),\n );\n subDomainsCollection.forEach((s: SubDomain, i: number) => {\n subDomainsCollection[i].x = Math.abs(s.x - max);\n });\n }\n\n return subDomainsCollection;\n })\n .join(\n (enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .insert('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .on('click', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('click', ev, d.t, d.v))\n .on('mouseover', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseover', ev, d.t, d.v))\n .on('mouseout', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseout', ev, d.t, d.v))\n .attr('rx', radius > 0 ? radius : null)\n .attr('ry', radius > 0 ? radius : null))\n .call((selection: any) => this.#appendText(selection)),\n (update: any) => update\n .selectAll('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .attr('rx', radius)\n .attr('ry', radius),\n );\n }\n\n /**\n * Set the subDomain group X and Y position\n * @param {d3-selection} selection A d3-selection object\n */\n #setPositions(selection: any): void {\n const { options } = this.calendar.options;\n const {\n padding,\n label: { position },\n } = options.domain;\n\n selection\n .attr('x', () => {\n let pos = padding[Position.LEFT];\n if (position === 'left') {\n pos += options.x.domainHorizontalLabelWidth;\n }\n return pos;\n })\n .attr('y', () => {\n let pos = padding[Position.TOP];\n if (position === 'top') {\n pos += options.x.domainVerticalLabelHeight;\n }\n return pos;\n });\n }\n\n /**\n * Return a classname if the specified date should be highlighted\n *\n * @param {number} timestamp Unix timestamp of the current subDomain\n * @return {String} the highlight class\n */\n #classname(timestamp: Timestamp, ...otherClasses: string[]): string {\n const {\n date: { highlight },\n subDomain: { type },\n } = this.calendar.options.options;\n let classname = '';\n\n if (highlight.length > 0) {\n highlight.forEach((d) => {\n const unitFn = this.calendar.templateCollection.get(type).extractUnit;\n\n if (unitFn(+d) === unitFn(timestamp)) {\n classname = HIGHLIGHT_CLASSNAME;\n }\n });\n }\n\n return [classname, ...otherClasses].join(' ').trim();\n }\n\n #appendText(elem: any) {\n const { width, height, label } = this.calendar.options.options.subDomain;\n\n if (!label) {\n return null;\n }\n\n return elem\n .append('text')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-text`))\n .attr('x', (d: SubDomain) => this.#getX(d) + width / 2)\n .attr('y', (d: SubDomain) => this.#getY(d) + height / 2)\n .attr('text-anchor', 'middle')\n .attr('dominant-baseline', 'central')\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.format(d.t, label, d.v, nodes[i]));\n }\n\n #getCoordinates(axis: 'x' | 'y', d: SubDomain): number {\n const { subDomain } = this.calendar.options.options;\n return (\n d[axis] *\n (subDomain[axis === 'x' ? 'width' : 'height'] + subDomain.gutter)\n );\n }\n\n #getX(d: SubDomain): number {\n return this.#getCoordinates('x', d);\n }\n\n #getY(d: SubDomain): number {\n return this.#getCoordinates('y', d);\n }\n}\n","import { select } from 'd3-selection';\nimport DomainPainter from './DomainPainter';\nimport DomainLabelPainter from './DomainLabelPainter';\nimport SubDomainPainter from '../subDomain/SubDomainPainter';\nimport { ScrollDirection } from '../constant';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Dimensions } from '../index';\n\nconst BASE_SELECTOR = '.ch-domain-container';\nconst TRANSITION_CLASSNAME = 'in-transition';\n\nclass DomainsContainerPainter {\n calendar: CalHeatmap;\n\n domainPainter: DomainPainter;\n\n domainLabelPainter: DomainLabelPainter;\n\n subDomainPainter: SubDomainPainter;\n\n dimensions: Dimensions;\n\n root: any;\n\n transitionsQueueCount: number;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n\n this.domainPainter = new DomainPainter(calendar);\n this.subDomainPainter = new SubDomainPainter(calendar);\n this.domainLabelPainter = new DomainLabelPainter(calendar);\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.transitionsQueueCount = 0;\n }\n\n setup() {\n this.root = this.calendar.calendarPainter.root\n .attr('x', 0)\n .attr('y', 0)\n .append('svg')\n .attr('class', BASE_SELECTOR.slice(1))\n .append('svg')\n .attr('class', `${BASE_SELECTOR.slice(1)}-animation-wrapper`);\n }\n\n paint(scrollDirection: ScrollDirection): Promise[] {\n this.#startAnimation();\n\n const result = this.domainPainter.paint(scrollDirection, this.root);\n this.subDomainPainter.paint(this.domainPainter.root);\n this.domainLabelPainter.paint(this.domainPainter.root);\n\n this.#recomputeDimensions();\n\n Promise.allSettled(result).then(() => {\n this.#endAnimation();\n });\n\n return result;\n }\n\n updatePosition() {\n if (!this.root?.node()) {\n return Promise.resolve();\n }\n\n const { animationDuration } = this.calendar.options.options;\n const topHeight = this.calendar.pluginManager.getHeightFromPosition('top');\n const leftWidth = this.calendar.pluginManager.getWidthFromPosition('left');\n\n return [\n select(this.root.node().parentNode)\n .transition()\n .duration(animationDuration)\n .call((selection: any) => {\n selection.attr('x', leftWidth).attr('y', topHeight);\n })\n .end(),\n ];\n }\n\n width(): Dimensions['width'] {\n return this.dimensions.width;\n }\n\n height(): Dimensions['height'] {\n return this.dimensions.height;\n }\n\n destroy(): Promise {\n this.#startAnimation();\n\n return Promise.resolve();\n }\n\n #startAnimation() {\n if (this.root?.node()) {\n this.transitionsQueueCount += 1;\n select(this.root.node().parentNode).classed(TRANSITION_CLASSNAME, true);\n }\n }\n\n #endAnimation() {\n if (this.root?.node()) {\n this.transitionsQueueCount -= 1;\n\n if (this.transitionsQueueCount === 0) {\n select(this.root.node().parentNode).classed(\n TRANSITION_CLASSNAME,\n false,\n );\n }\n }\n }\n\n #recomputeDimensions(): void {\n const {\n animationDuration,\n verticalOrientation,\n domain: { gutter },\n } = this.calendar.options.options;\n const { dimensions: domainsDimensions } = this.domainPainter;\n\n this.dimensions = {\n width: domainsDimensions.width - (verticalOrientation ? 0 : gutter),\n height: domainsDimensions.height - (!verticalOrientation ? 0 : gutter),\n };\n\n this.root\n .transition()\n .duration(animationDuration)\n .attr('width', this.dimensions.width)\n .attr('height', this.dimensions.height);\n }\n}\n\nexport default DomainsContainerPainter;\n","import type CalHeatmap from '../CalHeatmap';\n\nclass PluginPainter {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n paint(): Promise[] {\n let promises: Promise[] = [];\n\n promises = promises.concat(this.calendar.pluginManager.paintAll());\n promises = promises.concat(this.setPluginsPosition());\n\n return promises;\n }\n\n setPluginsPosition(): Promise[] {\n const { pluginManager } = this.calendar;\n const { animationDuration } = this.calendar.options.options;\n const { domainsContainerPainter } = this.calendar.calendarPainter;\n\n const top = pluginManager.getFromPosition('top');\n const right = pluginManager.getFromPosition('right');\n const bottom = pluginManager.getFromPosition('bottom');\n const left = pluginManager.getFromPosition('left');\n\n const topHeight = pluginManager.getHeightFromPosition('top');\n const leftWidth = pluginManager.getWidthFromPosition('left');\n\n const promises: Promise[] = [];\n\n let topOffset = 0;\n top.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('y', topOffset)\n .attr('x', leftWidth)\n .end(),\n );\n topOffset += plugin.options.dimensions!.height;\n });\n\n let leftOffset = 0;\n left.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftOffset)\n .attr('y', topHeight)\n .end(),\n );\n leftOffset += plugin.options.dimensions!.width;\n });\n\n bottom.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftWidth)\n .attr('y', topHeight + domainsContainerPainter.height())\n .end(),\n );\n });\n\n leftOffset += domainsContainerPainter.width();\n\n right.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftOffset)\n .attr('y', topHeight)\n .end(),\n );\n leftOffset += plugin.options.dimensions!.width;\n });\n\n return promises;\n }\n\n insideWidth() {\n return (\n this.calendar.pluginManager.getWidthFromPosition('left') +\n this.calendar.pluginManager.getWidthFromPosition('right')\n );\n }\n\n insideHeight() {\n return (\n this.calendar.pluginManager.getHeightFromPosition('top') +\n this.calendar.pluginManager.getHeightFromPosition('bottom')\n );\n }\n}\n\nexport default PluginPainter;\n","import { select } from 'd3-selection';\n\nimport DomainsContainerPainter from '../domain/DomainsContainerPainter';\nimport PluginPainter from '../plugins/PluginPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport { ScrollDirection } from '../constant';\nimport type { Dimensions } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-container';\n\nexport default class CalendarPainter {\n calendar: CalHeatmap;\n\n dimensions: Dimensions;\n\n root: any;\n\n domainsContainerPainter: DomainsContainerPainter;\n\n pluginPainter: PluginPainter;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.root = null;\n this.domainsContainerPainter = new DomainsContainerPainter(calendar);\n this.pluginPainter = new PluginPainter(calendar);\n }\n\n setup(): boolean {\n const { itemSelector, theme } = this.calendar.options.options;\n\n if (!this.root) {\n this.root = select(itemSelector)\n .append('svg')\n .attr('data-theme', theme)\n .attr('class', DEFAULT_SELECTOR.slice(1));\n this.domainsContainerPainter.setup();\n }\n\n this.calendar.pluginManager.setupAll();\n\n return true;\n }\n\n paint(navigationDir: ScrollDirection = ScrollDirection.SCROLL_NONE) {\n const transitions = this.domainsContainerPainter\n .paint(navigationDir)\n .concat(this.pluginPainter.paint())\n .concat(this.domainsContainerPainter.updatePosition());\n\n this.#resize();\n\n return Promise.allSettled(transitions);\n }\n\n #getHeight(): Dimensions['height'] {\n return (\n this.domainsContainerPainter.height() + this.pluginPainter.insideHeight()\n );\n }\n\n #getWidth(): Dimensions['width'] {\n return (\n this.domainsContainerPainter.width() + this.pluginPainter.insideWidth()\n );\n }\n\n #resize(): void {\n const { options } = this.calendar.options;\n\n const newWidth = this.#getWidth();\n const newHeight = this.#getHeight();\n\n this.root\n .transition()\n .duration(options.animationDuration)\n .attr('width', newWidth)\n .attr('height', newHeight);\n\n if (\n newWidth !== this.dimensions.width ||\n newHeight !== this.dimensions.height\n ) {\n this.calendar.eventEmitter.emit(\n 'resize',\n newWidth,\n newHeight,\n this.dimensions.width,\n this.dimensions.height,\n );\n }\n\n this.dimensions = {\n width: newWidth,\n height: newHeight,\n };\n }\n\n destroy(): Promise {\n const result: Promise[] = this.calendar.pluginManager\n .destroyAll()\n .concat(this.domainsContainerPainter.destroy());\n\n if (!this.root) {\n return Promise.allSettled(result);\n }\n\n result.push(\n this.root\n .transition()\n .duration(this.calendar.options.options.animationDuration)\n .attr('width', 0)\n .attr('height', 0)\n .remove()\n .end(),\n );\n\n return Promise.allSettled(result);\n }\n}\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nexport default freeGlobal;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nexport default root;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nexport default Symbol;\n","import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n","import Symbol from './_Symbol.js';\nimport getRawTag from './_getRawTag.js';\nimport objectToString from './_objectToString.js';\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nexport default baseGetTag;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isObject from './isObject.js';\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nexport default isFunction;\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-startswith -- safe\nvar nativeStartsWith = uncurryThis(''.startsWith);\nvar stringSlice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = toString(searchString);\n return nativeStartsWith\n ? nativeStartsWith(that, search, index)\n : stringSlice(that, index, index + search.length) === search;\n }\n});\n","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw new $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// in some IE versions, `propertyIsEnumerable` returns incorrect result on integer keys\n// of `null` prototype objects\nvar IE_BUG = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-create -- safe\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n});\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","// @ts-ignore\nimport { scale } from '@observablehq/plot';\nimport { OptionsType } from './options/Options';\nimport { SCALE_BASE_OPACITY_COLOR } from './constant';\n\nimport type { SubDomain } from './index';\n\ntype ValueType = string | number | undefined;\n\nexport function normalizedScale(scaleOptions: OptionsType['scale']): any {\n try {\n const scaleType = Object.keys(scaleOptions!)[0];\n\n return scale({\n [scaleType]: {\n ...scaleOptions![scaleType as 'color' | 'opacity'],\n clamp: true,\n },\n });\n } catch (error) {\n return null;\n }\n}\n\nfunction scaleStyle(_scale: any, scaleOptions: OptionsType['scale']) {\n const styles: { fill?: Function; 'fill-opacity'?: Function } = {};\n\n if (scaleOptions!.hasOwnProperty('opacity')) {\n styles.fill = () =>\n // eslint-disable-next-line implicit-arrow-linebreak\n scaleOptions!.opacity!.baseColor || SCALE_BASE_OPACITY_COLOR;\n styles['fill-opacity'] = (d: ValueType) => _scale?.apply(d);\n } else {\n styles.fill = (d: ValueType) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n (typeof d === 'string' && d?.startsWith('#') ? d : _scale?.apply(d));\n }\n\n return styles;\n}\n\nexport function applyScaleStyle(\n elem: any,\n _scale: any,\n scaleOptions: OptionsType['scale'],\n keyname?: string,\n) {\n Object.entries(scaleStyle(_scale, scaleOptions)).forEach(([prop, val]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n elem.style(prop, (d: SubDomain | string) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n val(keyname ? (d as SubDomain)[keyname as keyof SubDomain] : d)));\n}\n","import isFunction from 'lodash-es/isFunction';\nimport { hcl } from 'd3-color';\nimport { normalizedScale, applyScaleStyle } from '../scale';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { SubDomain, Timestamp } from '../index';\n\nexport default class Populator {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n populate(): void {\n const { calendar } = this;\n const { scale, subDomain } = calendar.options.options;\n const colorScale = normalizedScale(scale);\n\n calendar.calendarPainter\n .root!.selectAll('.ch-domain')\n .selectAll('svg')\n .selectAll('g')\n .data((d: Timestamp) => calendar.domainCollection.get(d) || [])\n .call((element: any) => {\n applyScaleStyle(element.select('rect'), colorScale, scale!, 'v');\n })\n .call((element: any) => {\n element\n .select('text')\n .attr('style', (d: SubDomain) => {\n const defaultColor =\n hcl(colorScale?.apply(d.v)).l > 60 ? '#000' : '#fff';\n let color = subDomain.color || (d.v ? defaultColor : null);\n\n if (isFunction(color)) {\n color = color(d.t, d.v, colorScale?.apply(d.v));\n }\n\n if (!color) {\n return null;\n }\n\n return `fill: ${color};`;\n })\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n calendar.dateHelper.format(d.t, subDomain.label, d.v, nodes[i]));\n })\n .call(() => {\n calendar.eventEmitter.emit('fill');\n });\n }\n}\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nexport default eq;\n","import eq from './eq.js';\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nexport default assocIndexOf;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nexport default listCacheDelete;\n","import listCacheClear from './_listCacheClear.js';\nimport listCacheDelete from './_listCacheDelete.js';\nimport listCacheGet from './_listCacheGet.js';\nimport listCacheHas from './_listCacheHas.js';\nimport listCacheSet from './_listCacheSet.js';\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nexport default ListCache;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nexport default listCacheClear;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nexport default listCacheGet;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nexport default listCacheHas;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nexport default listCacheSet;\n","import root from './_root.js';\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nexport default coreJsData;\n","import coreJsData from './_coreJsData.js';\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nexport default isMasked;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nexport default toSource;\n","import isFunction from './isFunction.js';\nimport isMasked from './_isMasked.js';\nimport isObject from './isObject.js';\nimport toSource from './_toSource.js';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nexport default baseIsNative;\n","import baseIsNative from './_baseIsNative.js';\nimport getValue from './_getValue.js';\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nexport default getNative;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nexport default getValue;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nexport default Map;\n","import getNative from './_getNative.js';\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nexport default nativeCreate;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nexport default hashGet;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nexport default hashHas;\n","import hashClear from './_hashClear.js';\nimport hashDelete from './_hashDelete.js';\nimport hashGet from './_hashGet.js';\nimport hashHas from './_hashHas.js';\nimport hashSet from './_hashSet.js';\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nexport default Hash;\n","import isKeyable from './_isKeyable.js';\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nexport default getMapData;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nexport default isKeyable;\n","import mapCacheClear from './_mapCacheClear.js';\nimport mapCacheDelete from './_mapCacheDelete.js';\nimport mapCacheGet from './_mapCacheGet.js';\nimport mapCacheHas from './_mapCacheHas.js';\nimport mapCacheSet from './_mapCacheSet.js';\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nexport default MapCache;\n","import nativeCreate from './_nativeCreate.js';\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nexport default hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default hashDelete;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nexport default hashSet;\n","import Hash from './_Hash.js';\nimport ListCache from './_ListCache.js';\nimport Map from './_Map.js';\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nexport default mapCacheClear;\n","import getMapData from './_getMapData.js';\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default mapCacheDelete;\n","import getMapData from './_getMapData.js';\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nexport default mapCacheGet;\n","import getMapData from './_getMapData.js';\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nexport default mapCacheHas;\n","import getMapData from './_getMapData.js';\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nexport default mapCacheSet;\n","import ListCache from './_ListCache.js';\nimport stackClear from './_stackClear.js';\nimport stackDelete from './_stackDelete.js';\nimport stackGet from './_stackGet.js';\nimport stackHas from './_stackHas.js';\nimport stackSet from './_stackSet.js';\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nexport default Stack;\n","import ListCache from './_ListCache.js';\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nexport default stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nexport default stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nexport default stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nexport default stackHas;\n","import ListCache from './_ListCache.js';\nimport Map from './_Map.js';\nimport MapCache from './_MapCache.js';\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nexport default stackSet;\n","import getNative from './_getNative.js';\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nexport default defineProperty;\n","import defineProperty from './_defineProperty.js';\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nexport default baseAssignValue;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignMergeValue;\n","import createBaseFor from './_createBaseFor.js';\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nexport default baseFor;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nexport default createBaseFor;\n","import root from './_root.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nexport default cloneBuffer;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nexport default Uint8Array;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nexport default cloneTypedArray;\n","import Uint8Array from './_Uint8Array.js';\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nexport default cloneArrayBuffer;\n","import isObject from './isObject.js';\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nexport default baseCreate;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nexport default overArg;\n","import overArg from './_overArg.js';\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nexport default getPrototype;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nexport default isPrototype;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nexport default isObjectLike;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nexport default baseIsArguments;\n","import baseIsArguments from './_baseIsArguments.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nexport default isArguments;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nexport default isLength;\n","import isFunction from './isFunction.js';\nimport isLength from './isLength.js';\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nexport default isArrayLike;\n","import root from './_root.js';\nimport stubFalse from './stubFalse.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nexport default isBuffer;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nexport default stubFalse;\n","import baseGetTag from './_baseGetTag.js';\nimport getPrototype from './_getPrototype.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nexport default isPlainObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isLength from './isLength.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nexport default baseIsTypedArray;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nexport default nodeUtil;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nexport default baseUnary;\n","import baseIsTypedArray from './_baseIsTypedArray.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nexport default isTypedArray;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nexport default safeGet;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignValue;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nexport default isIndex;\n","import baseTimes from './_baseTimes.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isIndex from './_isIndex.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default arrayLikeKeys;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nexport default baseTimes;\n","import isObject from './isObject.js';\nimport isPrototype from './_isPrototype.js';\nimport nativeKeysIn from './_nativeKeysIn.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeysIn;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default nativeKeysIn;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeysIn from './_baseKeysIn.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nexport default keysIn;\n","import copyObject from './_copyObject.js';\nimport keysIn from './keysIn.js';\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nexport default toPlainObject;\n","import assignValue from './_assignValue.js';\nimport baseAssignValue from './_baseAssignValue.js';\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nexport default copyObject;\n","import assignMergeValue from './_assignMergeValue.js';\nimport cloneBuffer from './_cloneBuffer.js';\nimport cloneTypedArray from './_cloneTypedArray.js';\nimport copyArray from './_copyArray.js';\nimport initCloneObject from './_initCloneObject.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isArrayLikeObject from './isArrayLikeObject.js';\nimport isBuffer from './isBuffer.js';\nimport isFunction from './isFunction.js';\nimport isObject from './isObject.js';\nimport isPlainObject from './isPlainObject.js';\nimport isTypedArray from './isTypedArray.js';\nimport safeGet from './_safeGet.js';\nimport toPlainObject from './toPlainObject.js';\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\nexport default baseMergeDeep;\n","import isArrayLike from './isArrayLike.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nexport default isArrayLikeObject;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nexport default copyArray;\n","import baseCreate from './_baseCreate.js';\nimport getPrototype from './_getPrototype.js';\nimport isPrototype from './_isPrototype.js';\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nexport default initCloneObject;\n","import Stack from './_Stack.js';\nimport assignMergeValue from './_assignMergeValue.js';\nimport baseFor from './_baseFor.js';\nimport baseMergeDeep from './_baseMergeDeep.js';\nimport isObject from './isObject.js';\nimport keysIn from './keysIn.js';\nimport safeGet from './_safeGet.js';\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\nexport default baseMerge;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nexport default identity;\n","import apply from './_apply.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nexport default overRest;\n","import constant from './constant.js';\nimport defineProperty from './_defineProperty.js';\nimport identity from './identity.js';\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nexport default baseSetToString;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nexport default constant;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nexport default shortOut;\n","import baseSetToString from './_baseSetToString.js';\nimport shortOut from './_shortOut.js';\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nexport default setToString;\n","import identity from './identity.js';\nimport overRest from './_overRest.js';\nimport setToString from './_setToString.js';\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\nexport default baseRest;\n","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nexport default apply;\n","import baseMerge from './_baseMerge.js';\nimport createAssigner from './_createAssigner.js';\n\n/**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\nvar mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n});\n\nexport default mergeWith;\n","import baseRest from './_baseRest.js';\nimport isIterateeCall from './_isIterateeCall.js';\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nexport default createAssigner;\n","import eq from './eq.js';\nimport isArrayLike from './isArrayLike.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nexport default isIterateeCall;\n","import MapCache from './_MapCache.js';\nimport setCacheAdd from './_setCacheAdd.js';\nimport setCacheHas from './_setCacheHas.js';\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nexport default SetCache;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nexport default arraySome;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nexport default setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nexport default setCacheHas;\n","import SetCache from './_SetCache.js';\nimport arraySome from './_arraySome.js';\nimport cacheHas from './_cacheHas.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nexport default equalArrays;\n","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nexport default cacheHas;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nexport default mapToArray;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nexport default setToArray;\n","import Symbol from './_Symbol.js';\nimport Uint8Array from './_Uint8Array.js';\nimport eq from './eq.js';\nimport equalArrays from './_equalArrays.js';\nimport mapToArray from './_mapToArray.js';\nimport setToArray from './_setToArray.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nexport default equalByTag;\n","import arrayFilter from './_arrayFilter.js';\nimport stubArray from './stubArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nexport default getSymbols;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nexport default arrayFilter;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nexport default stubArray;\n","import overArg from './_overArg.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nexport default nativeKeys;\n","import isPrototype from './_isPrototype.js';\nimport nativeKeys from './_nativeKeys.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeys;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeys from './_baseKeys.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nexport default keys;\n","import baseGetAllKeys from './_baseGetAllKeys.js';\nimport getSymbols from './_getSymbols.js';\nimport keys from './keys.js';\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nexport default getAllKeys;\n","import arrayPush from './_arrayPush.js';\nimport isArray from './isArray.js';\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nexport default baseGetAllKeys;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nexport default arrayPush;\n","import getAllKeys from './_getAllKeys.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nexport default equalObjects;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nexport default DataView;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nexport default Promise;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nexport default Set;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nexport default WeakMap;\n","import DataView from './_DataView.js';\nimport Map from './_Map.js';\nimport Promise from './_Promise.js';\nimport Set from './_Set.js';\nimport WeakMap from './_WeakMap.js';\nimport baseGetTag from './_baseGetTag.js';\nimport toSource from './_toSource.js';\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nexport default getTag;\n","import Stack from './_Stack.js';\nimport equalArrays from './_equalArrays.js';\nimport equalByTag from './_equalByTag.js';\nimport equalObjects from './_equalObjects.js';\nimport getTag from './_getTag.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nexport default baseIsEqualDeep;\n","import baseIsEqualDeep from './_baseIsEqualDeep.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nexport default baseIsEqual;\n","import baseIsEqual from './_baseIsEqual.js';\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nexport default isEqual;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n}\n\nexport default baseHas;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","import isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nexport default isKey;\n","import MapCache from './_MapCache.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nexport default memoize;\n","import memoizeCapped from './_memoizeCapped.js';\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nexport default stringToPath;\n","import memoize from './memoize.js';\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nexport default memoizeCapped;\n","import Symbol from './_Symbol.js';\nimport arrayMap from './_arrayMap.js';\nimport isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default baseToString;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nexport default arrayMap;\n","import isArray from './isArray.js';\nimport isKey from './_isKey.js';\nimport stringToPath from './_stringToPath.js';\nimport toString from './toString.js';\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nexport default castPath;\n","import baseToString from './_baseToString.js';\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nexport default toString;\n","import isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default toKey;\n","import baseHas from './_baseHas.js';\nimport hasPath from './_hasPath.js';\n\n/**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\nfunction has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n}\n\nexport default has;\n","import castPath from './_castPath.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isIndex from './_isIndex.js';\nimport isLength from './isLength.js';\nimport toKey from './_toKey.js';\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n}\n\nexport default hasPath;\n","import baseGet from './_baseGet.js';\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nexport default get;\n","import castPath from './_castPath.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\nexport default baseGet;\n","import baseSet from './_baseSet.js';\n\n/**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\nfunction set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n}\n\nexport default set;\n","import assignValue from './_assignValue.js';\nimport castPath from './_castPath.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\nfunction baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n}\n\nexport default baseSet;\n","import castArray from 'lodash-es/castArray';\nimport isFunction from 'lodash-es/isFunction';\nimport isString from 'lodash-es/isString';\nimport type { SubDomainOptions } from './Options';\n\nexport default {\n range: (value: number): number => Math.max(+value, 1),\n 'date.highlight': (args: Date[] | Date): Date[] => castArray(args),\n 'subDomain.label': (\n value: SubDomainOptions['label'],\n ): string | Function | null =>\n // eslint-disable-next-line\n ((isString(value) && value !== '') || isFunction(value) ? value : null),\n};\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","import baseGetTag from './_baseGetTag.js';\nimport isArray from './isArray.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar stringTag = '[object String]';\n\n/**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\nfunction isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n}\n\nexport default isString;\n","import mergeWith from 'lodash-es/mergeWith';\nimport isEqual from 'lodash-es/isEqual';\nimport has from 'lodash-es/has';\nimport get from 'lodash-es/get';\nimport set from 'lodash-es/set';\nimport type { Ls } from 'dayjs';\nimport type { DomainType, Timestamp } from '../index';\nimport {\n OPTIONS_DEFAULT_DOMAIN_TYPE,\n OPTIONS_DEFAULT_SUBDOMAIN_TYPE,\n OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n OPTIONS_DEFAULT_THEME,\n OPTIONS_DEFAULT_ANIMATION_DURATION,\n OPTIONS_DEFAULT_ITEM_SELECTOR,\n OPTIONS_DEFAULT_RANGE,\n SCALE_BASE_COLOR_SCHEME,\n SCALE_BASE_COLOR_TYPE,\n SCALE_BASE_COLOR_DOMAIN,\n OPTIONS_DEFAULT_LOCALE,\n} from '../constant';\n\nimport OptionsPreProcessors from './OptionsPreProcessors';\n\ntype SortOrder = 'asc' | 'desc';\nexport type TextAlign = 'start' | 'middle' | 'end';\nexport type Padding = [number, number, number, number];\n\nexport type DomainOptions = {\n type: DomainType;\n gutter: number;\n padding: Padding;\n dynamicDimension: boolean;\n label: LabelOptions;\n sort: SortOrder;\n};\n\ntype LabelOptions = {\n text?:\n | string\n | null\n | ((timestamp: Timestamp, element: SVGElement) => string);\n position: 'top' | 'right' | 'bottom' | 'left';\n textAlign: TextAlign;\n offset: {\n x: number;\n y: number;\n };\n rotate: null | 'left' | 'right';\n width: number;\n height: number;\n};\n\nexport type SubDomainOptions = {\n type: string;\n width: number;\n height: number;\n gutter: number;\n radius: number;\n label:\n | string\n | null\n | ((timestamp: Timestamp, value: number, element: SVGElement) => string);\n color?:\n | string\n | ((\n timestamp: Timestamp,\n value: number | string | null | undefined,\n backgroundColor: string,\n ) => string);\n sort: SortOrder;\n};\n\nexport type DataGroupType = 'sum' | 'count' | 'min' | 'max' | 'average';\n\ntype DateOptions = {\n start: Date;\n min?: Date;\n max?: Date;\n highlight: Date[];\n locale: string | Partial<(typeof Ls)[0]>;\n timezone?: string;\n};\n\nexport type DataRecord = Record;\nexport type DataOptions = {\n source: string | DataRecord[];\n type: 'json' | 'csv' | 'tsv' | 'txt';\n requestInit: object;\n x: string | ((datum: DataRecord) => number);\n y: string | ((datum: DataRecord) => number);\n groupY:\n | DataGroupType\n | ((values: (string | number | null)[]) => string | number | null);\n defaultValue: null | number | string;\n};\n\ntype ScaleOptions = {\n opacity?: {\n domain: number[];\n type?: string;\n baseColor: string;\n };\n color?: {\n domain: number[];\n scheme?: string;\n range?: string[];\n interpolate?: any;\n type?: string;\n };\n};\n\nexport type OptionsType = {\n itemSelector: string;\n range: number;\n domain: DomainOptions;\n subDomain: SubDomainOptions;\n date: DateOptions;\n data: DataOptions;\n scale?: ScaleOptions;\n animationDuration: number;\n verticalOrientation: boolean;\n theme: 'light' | 'dark';\n};\n\ntype InternalOptionsType = {\n x: {\n domainHorizontalLabelWidth: number;\n domainVerticalLabelHeight: number;\n };\n};\n\nexport default class Options {\n options: OptionsType & InternalOptionsType;\n\n preProcessors: {\n [key: string]: (value: any) => any;\n };\n\n constructor(processors = OptionsPreProcessors) {\n this.preProcessors = processors;\n\n this.options = {\n // selector string of the container to append the graph to\n // Accept any string value accepted by document.querySelector or CSS3\n // or an Element object\n itemSelector: OPTIONS_DEFAULT_ITEM_SELECTOR,\n\n // Number of domain to display on the graph\n range: OPTIONS_DEFAULT_RANGE,\n\n domain: {\n type: OPTIONS_DEFAULT_DOMAIN_TYPE,\n\n // Space between each domain, in pixel\n gutter: 4,\n\n padding: [0, 0, 0, 0],\n\n // Whether to enable dynamic domain size\n // The width/height on a domain depends on the number of\n // subDomains items count\n dynamicDimension: true,\n\n // Whether to show most recent date first\n sort: 'asc',\n\n label: {\n // Formatting of the domain label\n // @default: undefined, will use the formatting\n // according to domain type\n // Accept any string accepted by dayjs.format()\n // or a function\n //\n // Refer to https://day.js.org/docs/en/display/format\n // for list of accepted string tokens used by dayjs.format()\n text: undefined,\n\n // valid: top, right, bottom, left\n position: 'bottom',\n\n // Valid are the direct svg values: start, middle, end\n textAlign: 'middle',\n\n // By default, there is no margin/padding around the label\n offset: {\n x: 0,\n y: 0,\n },\n\n rotate: null,\n\n // Used only on vertical orientation\n width: 100,\n\n // Used only on horizontal orientation\n height: 25,\n },\n },\n\n subDomain: {\n type: OPTIONS_DEFAULT_SUBDOMAIN_TYPE,\n\n // Width of each subDomain cell, in pixel\n width: OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n\n // Height of each subDomain cell, in pixel\n height: OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n\n // Space between each subDomain cell, in pixel\n gutter: OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n\n // Radius of each subDomain cell, in pixel\n radius: OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n\n // Formatting of the text inside each subDomain cell\n // @default: null, no text\n // Accept any string accepted by dayjs.format()\n // or a function\n //\n // Refer to https://day.js.org/docs/en/display/format\n // for list of accepted string tokens used by dayjs.format()\n label: null,\n\n color: undefined,\n\n sort: 'asc',\n },\n\n date: {\n // Start date of the graph\n // @default now\n start: new Date(),\n\n min: undefined,\n\n max: undefined,\n\n // List of dates to highlight\n // Valid values:\n // - []: don't highlight anything\n // - an array of Date objects: highlight the specified dates\n highlight: [],\n\n locale: OPTIONS_DEFAULT_LOCALE,\n\n timezone: undefined,\n },\n\n // Calendar orientation\n // false: display domains side by side\n // true : display domains one under the other\n verticalOrientation: false,\n\n data: {\n // Data source\n // URL, where to fetch the original datas\n source: '',\n\n // Data type\n // Default: json\n type: 'json',\n\n requestInit: {},\n\n // keyname of the time property\n x: '',\n\n // keyname of the value property\n y: '',\n\n // Grouping function of the values\n groupY: 'sum',\n\n defaultValue: null,\n },\n\n scale: undefined,\n\n // Animation duration, in ms\n animationDuration: OPTIONS_DEFAULT_ANIMATION_DURATION,\n\n // Theme mode: dark/light\n theme: OPTIONS_DEFAULT_THEME,\n\n // Internally used options, do not edit not set\n x: {\n domainHorizontalLabelWidth: 0,\n domainVerticalLabelHeight: 0,\n },\n };\n }\n\n /**\n * Set a new value for an option, only if unchanged\n * @param {string} key Name of the option\n * @param {any} value Value of the option\n * @return {boolean} Whether the option have been changed\n */\n set(key: string, value: any): boolean {\n if (!has(this.options, key) || isEqual(get(this.options, key), value)) {\n return false;\n }\n\n set(\n this.options,\n key,\n has(this.preProcessors, key) ?\n get(this.preProcessors, key)(value) :\n value,\n );\n\n return true;\n }\n\n init(opts?: CalHeatmap.DeepPartial): void {\n this.options = {\n // eslint-disable-next-line arrow-body-style\n ...mergeWith(this.options, opts, (_, srcValue) => {\n return Array.isArray(srcValue) ? srcValue : undefined;\n }),\n };\n\n const { options } = this;\n\n Object.keys(this.preProcessors).forEach((key) => {\n set(options, key, get(this.preProcessors, key)(get(options, key)));\n });\n\n if (typeof options.scale === 'undefined') {\n this.initScale();\n }\n\n options.x.domainVerticalLabelHeight = options.domain.label.height;\n\n // When the label is affecting the height\n if (\n options.domain.label.position === 'top' ||\n options.domain.label.position === 'bottom'\n ) {\n options.x.domainHorizontalLabelWidth = 0;\n } else {\n options.x.domainVerticalLabelHeight = 0;\n options.x.domainHorizontalLabelWidth = options.domain.label.width;\n }\n\n if (\n options.domain.label.text === null ||\n options.domain.label.text === ''\n ) {\n options.x.domainVerticalLabelHeight = 0;\n options.x.domainHorizontalLabelWidth = 0;\n }\n }\n\n initScale() {\n this.options.scale = {\n color: {\n scheme: SCALE_BASE_COLOR_SCHEME,\n type: SCALE_BASE_COLOR_TYPE,\n domain: SCALE_BASE_COLOR_DOMAIN,\n },\n };\n }\n}\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') !== null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') !== null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.test('\\n') && re.flags === 's');\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) !== 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () {\n execCalled = true;\n return null;\n };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n// eslint-disable-next-line redos/no-vulnerable -- safe\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw new $TypeError('RegExp#exec called on incompatible receiver');\n};\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n var fullUnicode;\n if (global) {\n fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n\n var results = [];\n var result;\n while (true) {\n result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n var replacement;\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","import {\n json, csv, dsv, text,\n} from 'd3-fetch';\n\nimport type { DataOptions, DataRecord } from './options/Options';\nimport type { Timestamp } from './index';\nimport type CalHeatmap from './CalHeatmap';\n\nexport default class DataFetcher {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n /**\n * Fetch and interpret data from the datasource\n *\n * @param {string|object} source\n * @param {number} startTimestamp\n * @param {number} endTimestamp\n *\n * @return {Promize} A promise, that will return the final data when resolved\n */\n async getDatas(\n source: DataOptions['source'],\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): Promise {\n if (typeof source === 'string' && source.length > 0) {\n return this.#fetch(source, startTimestamp, endTimestamp);\n }\n\n let d: DataRecord[] = [];\n if (Array.isArray(source)) {\n d = source;\n }\n\n return new Promise((resolve) => {\n resolve(d);\n });\n }\n\n parseURI(\n str: string,\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): string {\n let newUri = str.replace(/\\{\\{start=(.*?)\\}\\}/g, (_, format) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.date(startTimestamp).format(format));\n newUri = newUri.replace(/\\{\\{end=(.*?)\\}\\}/g, (_, format) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.date(endTimestamp).format(format));\n\n return newUri;\n }\n\n #fetch(\n source: DataOptions['source'],\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): Promise {\n const { type, requestInit } = this.calendar.options.options.data;\n\n const url = this.parseURI(source as string, startTimestamp, endTimestamp);\n\n switch (type) {\n case 'json':\n return json(url, requestInit);\n case 'csv':\n return csv(url, requestInit);\n case 'tsv':\n return dsv('\\t', url, requestInit);\n case 'txt':\n return text(url, requestInit);\n default:\n return new Promise((resolve) => {\n resolve([]);\n });\n }\n }\n}\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,\"millisecond\"),o=this.diff(a,e,!0);return o<0?r(this).startOf(\"week\").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_dayOfYear=t()}(this,(function(){\"use strict\";return function(e,t,n){t.prototype.dayOfYear=function(e){var t=Math.round((n(this).startOf(\"day\")-n(this).startOf(\"year\"))/864e5)+1;return null==e?t:this.add(e-t,\"day\")}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_weekday=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.weekday=function(e){var t=this.$locale().weekStart||0,i=this.$W,n=(i0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i4&&(o+=7),n.add(o,e));return r.diff(u,\"week\")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return\"isoweek\"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf(\"day\"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf(\"day\"):n.bind(this)(e,t)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isLeapYear=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_advancedFormat=t()}(this,(function(){\"use strict\";return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||\"YYYY-MM-DDTHH:mm:ssZ\").replace(/\\[([^\\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case\"Q\":return Math.ceil((t.$M+1)/3);case\"Do\":return r.ordinal(t.$D);case\"gggg\":return t.weekYear();case\"GGGG\":return t.isoWeekYear();case\"wo\":return r.ordinal(t.week(),\"W\");case\"w\":case\"ww\":return s.s(t.week(),\"w\"===e?1:2,\"0\");case\"W\":case\"WW\":return s.s(t.isoWeek(),\"W\"===e?1:2,\"0\");case\"k\":case\"kk\":return s.s(String(0===t.$H?24:t.$H),\"k\"===e?1:2,\"0\");case\"X\":return Math.floor(t.$d.getTime()/1e3);case\"x\":return t.$d.getTime();case\"z\":return\"[\"+t.offsetName()+\"]\";case\"zzz\":return\"[\"+t.offsetName(\"long\")+\"]\";default:return e}}));return n.bind(this)(a)}}}));","!function(t,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_utc=i()}(this,(function(){\"use strict\";var t=\"minute\",i=/[+-]\\d\\d(?::?\\d\\d)?/g,e=/([+-]|\\d\\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t)};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else r.call(this)};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if(\"string\"==typeof s&&(s=function(t){void 0===t&&(t=\"\");var s=t.match(i);if(!s)return null;var f=(\"\"+s[0]).match(e)||[\"-\",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:\"+\"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?\"YYYY-MM-DDTHH:mm:ss[Z]\":\"\");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return\"s\"===t&&this.$offset?n(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)}}}));","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_timezone=e()}(this,(function(){\"use strict\";var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||\"short\",o=t+\"|\"+i,r=e[o];return r||(r=new Intl.DateTimeFormat(\"en-US\",{hour12:!1,timeZone:t,year:\"numeric\",month:\"2-digit\",day:\"2-digit\",hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u=0&&(r[c]=parseInt(m,10))}var d=r[3],l=24===d?0:d,h=r[0]+\"-\"+r[1]+\"-\"+r[2]+\" \"+l+\":\"+r[4]+\":\"+r[5]+\":000\",v=+e;return(o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString(\"en-US\",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set(\"millisecond\",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,\"minute\")}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return\"timezonename\"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if(\"string\"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return[i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t}}}));","!function(n,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(n=\"undefined\"!=typeof globalThis?globalThis:n||self).dayjs_plugin_localeData=e()}(this,(function(){\"use strict\";return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return{months:function(e){return e?e.format(\"MMMM\"):u(n,\"months\")},monthsShort:function(e){return e?e.format(\"MMM\"):u(n,\"monthsShort\",\"months\",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format(\"dddd\"):u(n,\"weekdays\")},weekdaysMin:function(e){return e?e.format(\"dd\"):u(n,\"weekdaysMin\",\"weekdays\",2)},weekdaysShort:function(e){return e?e.format(\"ddd\"):u(n,\"weekdaysShort\",\"weekdays\",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return{firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),\"months\")},t.monthsShort=function(){return u(i(),\"monthsShort\",\"months\",3)},t.weekdays=function(n){return u(i(),\"weekdays\",null,null,n)},t.weekdaysShort=function(n){return u(i(),\"weekdaysShort\",\"weekdays\",3,n)},t.weekdaysMin=function(n){return u(i(),\"weekdaysMin\",\"weekdays\",2,n)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_localizedFormat=t()}(this,(function(){\"use strict\";var e={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t=\"YYYY-MM-DDTHH:mm:ssZ\");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)}}}));","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_updateLocale=n()}(this,(function(){\"use strict\";return function(e,n,t){t.updateLocale=function(e,n){var o=t.Ls[e];if(o)return(n?Object.keys(n):[]).forEach((function(e){o[e]=n[e]})),o}}}));","import dayjs from 'dayjs';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport dayOfYear from 'dayjs/plugin/dayOfYear';\nimport weekday from 'dayjs/plugin/weekday';\nimport minMax from 'dayjs/plugin/minMax';\nimport isoWeeksInYear from 'dayjs/plugin/isoWeeksInYear';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport isLeapYear from 'dayjs/plugin/isLeapYear';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\nimport localeData from 'dayjs/plugin/localeData';\nimport localizedFormat from 'dayjs/plugin/localizedFormat';\nimport updateLocale from 'dayjs/plugin/updateLocale';\n\nimport type { ManipulateType, PluginFunc, Ls } from 'dayjs';\nimport type { OptionsType } from '../options/Options';\nimport type { Timestamp, DomainType } from '../index';\n\ndayjs.extend(weekOfYear);\ndayjs.extend(isoWeeksInYear);\ndayjs.extend(isoWeek);\ndayjs.extend(isLeapYear);\ndayjs.extend(dayOfYear);\ndayjs.extend(weekday);\ndayjs.extend(minMax);\ndayjs.extend(advancedFormat);\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(localeData);\ndayjs.extend(localizedFormat);\ndayjs.extend(updateLocale);\n\nconst DEFAULT_LOCALE = 'en';\n\nexport default class DateHelper {\n locale: OptionsType['date']['locale'];\n\n timezone: string;\n\n constructor() {\n this.locale = DEFAULT_LOCALE;\n this.timezone = dayjs.tz.guess();\n if (typeof window === 'object') {\n (window as any).dayjs ||= dayjs;\n }\n }\n\n async setup({ options }: { options: OptionsType }) {\n this.timezone = options.date.timezone || dayjs.tz.guess();\n const userLocale = options.date.locale;\n\n if (typeof userLocale === 'string' && userLocale !== DEFAULT_LOCALE) {\n let locale;\n if (typeof window === 'object') {\n locale =\n (window as any)[`dayjs_locale_${userLocale}`] ||\n (await this.loadBrowserLocale(userLocale));\n } else {\n locale = await this.loadNodeLocale(userLocale);\n }\n dayjs.locale(userLocale);\n this.locale = locale;\n }\n\n if (typeof userLocale === 'object') {\n if (userLocale.hasOwnProperty('name')) {\n dayjs.locale(userLocale.name, userLocale);\n this.locale = userLocale;\n } else {\n this.locale = dayjs.updateLocale(DEFAULT_LOCALE, userLocale);\n }\n }\n }\n\n // eslint-disable-next-line class-methods-use-this\n extend(dayjsPlugin: PluginFunc): dayjs.Dayjs {\n return dayjs.extend(dayjsPlugin);\n }\n\n /**\n * Return the week number, relative to its month\n *\n * @param {number|Date} d Date or timestamp in milliseconds\n * @returns {number} The week number, relative to the month [0-5]\n */\n getMonthWeekNumber(d: Timestamp | dayjs.Dayjs): number {\n const dayjsDate = this.date(d);\n const date = dayjsDate.startOf('day');\n const endOfWeek = dayjsDate.startOf('month').endOf('week');\n\n if (date <= endOfWeek) {\n return 1;\n }\n return Math.ceil(date.diff(endOfWeek, 'weeks', true)) + 1;\n }\n\n /**\n * Return the number of weeks in the given month\n *\n * As there is no fixed standard to specify which month a partial week should\n * belongs to, the ISO week date standard is used, where:\n * - the first week of the month should have at least 4 days\n *\n * @see https://en.wikipedia.org/wiki/ISO_week_date\n *\n * @param {Timestamp | dayjs.Dayjs} d Datejs object or timestamp\n * @return {number} The number of weeks\n */\n getWeeksCountInMonth(d: Timestamp | dayjs.Dayjs): number {\n const pivotDate = this.date(d);\n\n return (\n this.getLastWeekOfMonth(pivotDate).diff(\n this.getFirstWeekOfMonth(pivotDate),\n 'week',\n ) + 1\n );\n }\n\n /**\n * Return the start of the first week of the month\n *\n * @see getWeeksCountInMonth() about standard warning\n * @return {dayjs.Dayjs} A dayjs object representing the start of the\n * first week\n */\n getFirstWeekOfMonth(d: Timestamp | dayjs.Dayjs): dayjs.Dayjs {\n const startOfMonth = this.date(d).startOf('month');\n let startOfFirstWeek = startOfMonth.startOf('week');\n if (startOfMonth.weekday() > 4) {\n startOfFirstWeek = startOfFirstWeek.add(1, 'week');\n }\n\n return startOfFirstWeek;\n }\n\n /**\n * Return the end of the last week of the month\n *\n * @see getWeeksCountInMonth() about standard warning\n * @return {dayjs.Dayjs} A dayjs object representing the end of the last week\n */\n getLastWeekOfMonth(d: Timestamp | dayjs.Dayjs): dayjs.Dayjs {\n const endOfMonth = this.date(d).endOf('month');\n let endOfLastWeek = endOfMonth.endOf('week');\n if (endOfMonth.weekday() < 4) {\n endOfLastWeek = endOfLastWeek.subtract(1, 'week');\n }\n\n return endOfLastWeek;\n }\n\n date(d: Timestamp | Date | dayjs.Dayjs | string = new Date()): dayjs.Dayjs {\n if (dayjs.isDayjs(d)) {\n return d;\n }\n\n return dayjs(d)\n .tz(this.timezone)\n .utcOffset(0)\n .locale(this.locale as (typeof Ls)[0] | string);\n }\n\n format(\n timestamp: Timestamp,\n formatter: null | string | Function,\n ...args: any\n ): string | null {\n if (typeof formatter === 'function') {\n return formatter(timestamp, ...args);\n }\n\n if (typeof formatter === 'string') {\n return this.date(timestamp).format(formatter);\n }\n\n return null;\n }\n\n /**\n * Return an array of time interval\n *\n * @param {number|Date} date A random date included in the wanted interval\n * @param {number|Date} range Length of the wanted interval, or a stop date.\n * @param {boolean} range Whether the end date should be excluded\n * from the result\n * @returns {Array} Array of unix timestamp, in milliseconds\n */\n intervals(\n interval: DomainType,\n date: Timestamp | Date | dayjs.Dayjs,\n range: number | Date | dayjs.Dayjs,\n excludeEnd: boolean = true,\n ): Timestamp[] {\n let start = this.date(date);\n let end: dayjs.Dayjs;\n if (typeof range === 'number') {\n end = start.add(range, interval as ManipulateType);\n } else if (dayjs.isDayjs(range)) {\n end = range;\n } else {\n end = this.date(range);\n }\n\n start = start.startOf(interval as ManipulateType);\n\n end = end.startOf(interval as ManipulateType);\n let pivot = dayjs.min(start, end)!;\n end = dayjs.max(start, end)!;\n const result: Timestamp[] = [];\n\n if (!excludeEnd) {\n end = end.add(1, 'second');\n }\n\n do {\n result.push(+pivot);\n pivot = pivot.add(1, interval as ManipulateType);\n } while (pivot < end);\n\n return result;\n }\n\n // this function will work cross-browser for loading scripts asynchronously\n // eslint-disable-next-line class-methods-use-this\n loadBrowserLocale(userLocale: string): Promise {\n return new Promise((resolve, reject) => {\n const s = document.createElement('script');\n s.type = 'text/javascript';\n s.async = true;\n s.src = `https://cdn.jsdelivr.net/npm/dayjs@1/locale/${userLocale}.js`;\n s.onerror = (err) => {\n reject(err);\n };\n s.onload = () => {\n resolve((window as any)[`dayjs_locale_${userLocale}`]);\n };\n document.head.appendChild(s);\n });\n }\n\n // eslint-disable-next-line class-methods-use-this\n loadNodeLocale(userLocale: string): Promise {\n return import(`dayjs/locale/${userLocale}.js`);\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\nvar stringIndexOf = uncurryThis(''.indexOf);\n\n// `String.prototype.includes` method\n// https://tc39.es/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~stringIndexOf(\n toString(requireObjectCoercible(this)),\n toString(notARegExp(searchString)),\n arguments.length > 1 ? arguments[1] : undefined\n );\n }\n});\n","import type TemplateCollection from '../TemplateCollection';\nimport type { DomainOptions, SubDomainOptions, DataOptions } from './Options';\nimport type { DomainType } from '../index';\n\nconst ALLOWED_DATA_TYPES = ['json', 'csv', 'tsv', 'txt'];\n\n/**\n * Ensure that critical options are valid\n *\n * @throw {Error} on critical invalid options\n * @return {boolean} Returns true when there is not critical errors\n */\nexport default function validate(\n templateCollection: TemplateCollection,\n {\n domain,\n subDomain,\n data,\n }: {\n domain: Partial;\n subDomain: Partial;\n data: Partial;\n },\n): boolean {\n const domainType = domain.type as DomainType;\n const subDomainType = subDomain.type as string;\n\n if (!templateCollection.has(domainType)) {\n throw new Error(`'${domainType}' is not a valid domain type'`);\n }\n\n if (!templateCollection.has(subDomainType)) {\n throw new Error(`'${subDomainType}' is not a valid subDomain type'`);\n }\n\n if (data.type && !ALLOWED_DATA_TYPES.includes(data.type)) {\n throw new Error(`The data type '${data.type}' is not valid data type`);\n }\n\n if (\n !(templateCollection.get(subDomainType).allowedDomainType || []).includes(\n domainType,\n )\n ) {\n throw new Error(\n `The subDomain.type '${subDomainType}' can not be used together ` +\n `with the domain type ${domainType}`,\n );\n }\n\n return true;\n}\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Set` constructor\n// https://tc39.es/ecma262/#sec-set-objects\ncollection('Set', function (init) {\n return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","import isEqual from 'lodash-es/isEqual';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport {\n PluginDefinition,\n PluginOptions,\n IPluginContructor,\n IPlugin,\n} from '../index';\n\ntype PluginSetting = {\n options?: PluginOptions;\n dirty: boolean;\n};\n\nfunction createPlugin(\n Creator: IPluginContructor,\n calendar: CalHeatmap,\n): IPlugin {\n return new Creator(calendar);\n}\n\nfunction extractPluginName(\n PluginClass: IPluginContructor,\n options?: PluginOptions,\n): string {\n return `${new PluginClass().name}${options?.key || ''}`;\n}\n\nexport default class PluginManager {\n calendar: CalHeatmap;\n\n settings: Map;\n\n plugins: Map;\n\n pendingPaint: Set;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.settings = new Map();\n this.plugins = new Map();\n this.pendingPaint = new Set();\n }\n\n add(plugins: PluginDefinition[]): void {\n plugins.forEach(([PluginClass, pluginOptions]) => {\n const name = extractPluginName(PluginClass, pluginOptions);\n\n const existingPlugin = this.plugins.get(name);\n\n if (\n existingPlugin &&\n this.settings.get(name) &&\n isEqual(this.settings.get(name)!.options, pluginOptions)\n ) {\n return;\n }\n\n this.settings.set(name, {\n options: pluginOptions,\n dirty: true,\n });\n\n if (!this.plugins.has(name)) {\n this.plugins.set(name, createPlugin(PluginClass, this.calendar));\n }\n\n this.pendingPaint.add(this.plugins.get(name)!);\n });\n }\n\n setupAll(): void {\n this.plugins.forEach((pluginInstance, name) => {\n const settings = this.settings.get(name);\n\n if (typeof settings !== 'undefined') {\n if (settings.dirty) {\n pluginInstance.setup(settings.options);\n settings.dirty = false;\n\n this.settings.set(name, settings);\n }\n }\n });\n }\n\n paintAll(): Promise[] {\n return Array.from(this.pendingPaint.values()).map((p) => p.paint());\n }\n\n destroyAll(): Promise[] {\n return this.allPlugins().map((p) => p.destroy());\n }\n\n getFromPosition(position: PluginOptions['position']): IPlugin[] {\n return this.allPlugins().filter(\n (plugin) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n plugin.options?.position === position,\n );\n }\n\n getHeightFromPosition(position: PluginOptions['position']): number {\n return this.getFromPosition(position)\n .map((d) => d.options.dimensions!.height)\n .reduce((a, b) => a + b, 0);\n }\n\n getWidthFromPosition(position: PluginOptions['position']): number {\n return this.getFromPosition(position)\n .map((d) => d.options.dimensions!.width)\n .reduce((a, b) => a + b, 0);\n }\n\n allPlugins(): IPlugin[] {\n return Array.from(this.plugins.values());\n }\n}\n","import minuteTemplate from './minute';\nimport hourTemplate from './hour';\nimport dayTemplate from './day';\nimport xDayTemplate from './xDay';\nimport ghDayTemplate from './ghDay';\nimport weekTemplate from './week';\nimport monthTemplate from './month';\nimport yearTemplate from './year';\n\nexport default [\n minuteTemplate,\n hourTemplate,\n dayTemplate,\n xDayTemplate,\n ghDayTemplate,\n weekTemplate,\n monthTemplate,\n yearTemplate,\n];\n","import type { Template, DomainType } from '../index';\n\nconst minuteTemplate: Template = (DateHelper) => {\n const COLUMNS_COUNT = 10;\n const ROWS_COUNT = 6;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['day', 'hour'];\n\n return {\n name: 'minute',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => COLUMNS_COUNT,\n columnsCount: () => ROWS_COUNT,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'minute',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts, index: number) => ({\n t: ts,\n x: Math.floor(index / COLUMNS_COUNT),\n y: index % COLUMNS_COUNT,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('minute').valueOf(),\n };\n};\n\nexport default minuteTemplate;\n","import type { DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst hourTemplate: Template = (\n DateHelper,\n { domain }: { domain: DomainOptions },\n) => {\n const TOTAL_ITEMS = 24;\n const ROWS_COUNT = 6;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['month', 'week', 'day'];\n\n return {\n name: 'hour',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => ROWS_COUNT,\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'week':\n return (TOTAL_ITEMS / ROWS_COUNT) * 7;\n case 'month':\n return (\n (TOTAL_ITEMS / ROWS_COUNT) *\n (domain.dynamicDimension ? DateHelper.date(ts).daysInMonth() : 31)\n );\n case 'day':\n default:\n return TOTAL_ITEMS / ROWS_COUNT;\n }\n },\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'hour',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n const hour = date.hour();\n const monthDate = date.date();\n let baseX = Math.floor(hour / ROWS_COUNT);\n const columnOffset = TOTAL_ITEMS / ROWS_COUNT;\n\n if (domain.type === 'month') {\n baseX += (monthDate - 1) * columnOffset;\n }\n if (domain.type === 'week') {\n baseX += +date.format('d') * columnOffset;\n }\n\n return {\n t: ts,\n x: baseX,\n y: Math.floor(hour % ROWS_COUNT),\n };\n }),\n extractUnit: (ts) => DateHelper.date(ts).startOf('hour').valueOf(),\n };\n};\n\nexport default hourTemplate;\n","import type { OptionsType, DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (\n DateHelper,\n {\n domain,\n verticalOrientation,\n }: {\n domain: DomainOptions;\n verticalOrientation: OptionsType['verticalOrientation'];\n },\n) => {\n const ROWS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month', 'week'];\n\n return {\n name: 'day',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => (domain.type === 'week' ? 1 : ROWS_COUNT),\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'month':\n return Math.ceil(\n domain.dynamicDimension && !verticalOrientation ?\n DateHelper.getMonthWeekNumber(\n DateHelper.date(ts).endOf('month'),\n ) :\n 6, // In rare case, when the first week contains less than 3 days\n );\n case 'year':\n return Math.ceil(\n domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').dayOfYear() / ROWS_COUNT :\n 54,\n );\n case 'week':\n default:\n return ROWS_COUNT;\n }\n },\n mapping: (startTimestamp, endTimestamp) => {\n let weekNumber = 0;\n let x = -1;\n\n return DateHelper.intervals(\n 'day',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n\n switch (domain.type) {\n case 'month':\n x = DateHelper.getMonthWeekNumber(ts) - 1;\n break;\n case 'year':\n if (weekNumber !== date.week()) {\n weekNumber = date.week();\n x += 1;\n }\n break;\n case 'week':\n x = date.weekday();\n break;\n default:\n }\n\n return {\n t: ts,\n x,\n y: domain.type === 'week' ? 0 : date.weekday(),\n };\n });\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { OptionsType, DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (\n DateHelper,\n {\n domain,\n verticalOrientation,\n }: {\n domain: DomainOptions;\n verticalOrientation: OptionsType['verticalOrientation'];\n },\n) => {\n const COLUMNS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month', 'week'];\n\n return {\n name: 'xDay',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: (ts) => {\n switch (domain.type) {\n case 'month':\n return Math.ceil(\n domain.dynamicDimension && !verticalOrientation ?\n DateHelper.getMonthWeekNumber(\n DateHelper.date(ts).endOf('month'),\n ) :\n 6, // In rare case, when the first week contains less than 3 days\n );\n case 'year':\n return Math.ceil(\n domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').dayOfYear() / COLUMNS_COUNT :\n 54,\n );\n case 'week':\n default:\n return COLUMNS_COUNT;\n }\n },\n columnsCount: () => {\n if (domain.type === 'week') {\n return 1;\n }\n return COLUMNS_COUNT;\n },\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'day',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n const endWeekNumber = date.endOf('year').week();\n let x = 0;\n\n switch (domain.type) {\n case 'month':\n x = DateHelper.getMonthWeekNumber(ts) - 1;\n break;\n case 'year':\n if (endWeekNumber === 1 && date.week() === endWeekNumber) {\n x = date.subtract(1, 'week').week() + 1;\n }\n\n x = date.week() - 1;\n break;\n case 'week':\n x = date.weekday();\n break;\n default:\n }\n\n return {\n t: ts,\n y: x,\n x: domain.type === 'week' ? 0 : date.weekday(),\n };\n }),\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (DateHelper) => {\n const ROWS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['month'];\n\n return {\n name: 'ghDay',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => ROWS_COUNT,\n columnsCount: (ts) => DateHelper.getWeeksCountInMonth(ts),\n mapping: (startTimestamp, endTimestamp) => {\n const clampStart = DateHelper.getFirstWeekOfMonth(startTimestamp);\n const clampEnd = DateHelper.getFirstWeekOfMonth(endTimestamp);\n\n let x = -1;\n const pivotDay = clampStart.weekday();\n\n return DateHelper.intervals('day', clampStart, clampEnd).map((ts) => {\n const weekday = DateHelper.date(ts).weekday();\n if (weekday === pivotDay) {\n x += 1;\n }\n\n return {\n t: ts,\n x,\n y: weekday,\n };\n });\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst weekTemplate: Template = (\n DateHelper,\n { domain }: { domain: DomainOptions },\n) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month'];\n\n return {\n name: 'week',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'year':\n return domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').isoWeeksInYear() :\n 53;\n case 'month':\n return domain.dynamicDimension ?\n DateHelper.getWeeksCountInMonth(ts) :\n 5;\n default:\n return 1;\n }\n },\n mapping: (startTimestamp, endTimestamp) => {\n const clampStart = DateHelper.getFirstWeekOfMonth(startTimestamp);\n const clampEnd = DateHelper.getFirstWeekOfMonth(endTimestamp);\n\n return DateHelper.intervals('week', clampStart, clampEnd).map(\n (ts, i) => ({\n t: ts,\n x: i,\n y: 0,\n }),\n );\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('week').valueOf(),\n };\n};\n\nexport default weekTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst monthTemplate: Template = (DateHelper) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year'];\n\n return {\n name: 'month',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: () => 12,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'month',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => ({\n t: ts,\n x: DateHelper.date(ts).month(),\n y: 0,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('month').valueOf(),\n };\n};\n\nexport default monthTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst yearTemplate: Template = (DateHelper) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = [];\n\n return {\n name: 'year',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: () => 1,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'year',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts, index) => ({\n t: ts,\n x: index,\n y: 0,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('year').valueOf(),\n };\n};\n\nexport default yearTemplate;\n","import castArray from 'lodash-es/castArray';\n\nimport DefaultTemplates from './templates/index';\nimport type Options from './options/Options';\nimport type { Template, TemplateResult } from './index';\nimport type DateHelper from './helpers/DateHelper';\n\nexport default class TemplateCollection {\n dateHelper: DateHelper;\n\n options: Options;\n\n settings: Map;\n\n // Whether the default templates has been initiated\n initiated: boolean;\n\n constructor(dateHelper: DateHelper, options: Options) {\n this.settings = new Map();\n this.dateHelper = dateHelper;\n this.options = options;\n this.initiated = false;\n }\n\n get(subDomainType: string): TemplateResult {\n return this.settings.get(subDomainType)!;\n }\n\n has(subDomainType: string): boolean {\n return this.settings.has(subDomainType);\n }\n\n init() {\n if (!this.initiated) {\n this.initiated = true;\n this.add(DefaultTemplates);\n }\n }\n\n add(templates: Template | Template[]) {\n this.init();\n\n const tplWithParent: string[] = [];\n castArray(templates).forEach((f) => {\n const template = f(this.dateHelper, this.options.options);\n this.settings.set(template.name, template);\n\n if (template.hasOwnProperty('parent')) {\n tplWithParent.push(template.name);\n }\n });\n\n tplWithParent.forEach((name) => {\n const parentTemplate = this.settings.get(\n this.settings.get(name)!.parent!,\n );\n\n if (!parentTemplate) {\n return;\n }\n\n this.settings.set(name, {\n ...parentTemplate,\n ...this.settings.get(name),\n });\n });\n }\n}\n","import EventEmmiter from 'eventemitter3';\nimport castArray from 'lodash-es/castArray';\nimport type { PluginFunc } from 'dayjs';\nimport type dayjs from 'dayjs';\n\nimport Navigator from './calendar/Navigator';\nimport CalendarPainter from './calendar/CalendarPainter';\nimport Populator from './calendar/Populator';\nimport Options from './options/Options';\nimport DataFetcher from './DataFetcher';\nimport DomainCollection from './calendar/DomainCollection';\nimport DateHelper from './helpers/DateHelper';\nimport validate from './options/OptionsValidator';\nimport PluginManager from './plugins/PluginManager';\nimport VERSION from './version';\n\nimport './cal-heatmap.scss';\n\nimport TemplateCollection from './TemplateCollection';\n\nimport type { OptionsType } from './options/Options';\nimport type {\n Template,\n Dimensions,\n PluginDefinition,\n Timestamp,\n} from './index';\n\nimport { ScrollDirection } from './constant';\n\nexport default class CalHeatmap {\n static VERSION = VERSION;\n\n options: Options;\n\n calendarPainter: CalendarPainter;\n\n populator: Populator;\n\n navigator: Navigator;\n\n eventEmitter: EventEmmiter;\n\n dataFetcher: DataFetcher;\n\n domainCollection!: DomainCollection;\n\n templateCollection: TemplateCollection;\n\n dateHelper: DateHelper;\n\n pluginManager: PluginManager;\n\n constructor() {\n // Default options\n this.options = new Options();\n\n // Init the helpers with the default options\n this.dateHelper = new DateHelper();\n this.templateCollection = new TemplateCollection(\n this.dateHelper,\n this.options,\n );\n this.dataFetcher = new DataFetcher(this);\n this.navigator = new Navigator(this);\n this.populator = new Populator(this);\n\n this.calendarPainter = new CalendarPainter(this);\n this.eventEmitter = new EventEmmiter();\n this.pluginManager = new PluginManager(this);\n }\n\n createDomainCollection(\n startDate: Timestamp | Date,\n range: number | Date,\n excludeEnd: boolean = true,\n ): DomainCollection {\n return new DomainCollection(\n this.dateHelper,\n this.options.options.domain.type,\n startDate,\n range,\n excludeEnd,\n );\n }\n\n // =========================================================================\n // PUBLIC API\n // =========================================================================\n\n /**\n * Setup and paint the calendar with the given options\n *\n * @param {Object} options The Options object\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n async paint(\n options?: CalHeatmap.DeepPartial,\n plugins?: PluginDefinition[] | PluginDefinition,\n ): Promise {\n this.options.init(options);\n await this.dateHelper.setup(this.options);\n\n this.templateCollection.init();\n\n try {\n validate(this.templateCollection, this.options.options);\n } catch (error) {\n return Promise.reject(error);\n }\n\n if (plugins) {\n this.pluginManager.add(castArray(plugins as any) as PluginDefinition[]);\n }\n\n this.calendarPainter.setup();\n\n // Record all the valid domains\n // Each domain value is a timestamp in milliseconds\n this.domainCollection = new DomainCollection(this.dateHelper);\n this.navigator.loadNewDomains(\n this.createDomainCollection(\n this.options.options.date.start,\n this.options.options.range,\n ),\n );\n\n return Promise.allSettled([this.calendarPainter.paint(), this.fill()]);\n }\n\n /**\n * Add a new subDomainTemplate\n *\n * @since 4.0.0\n * @param {SubDomainTemplate[] | SubDomainTemplate} templates\n * A single, or an array of SubDomainTemplate object\n * @return void\n */\n addTemplates(templates: Template | Template[]): void {\n this.templateCollection.add(templates);\n }\n\n /**\n * Shift the calendar by n domains forward\n *\n * @param {number} n Number of domain intervals to shift forward\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n next(n: number = 1): Promise {\n const loadDirection = this.navigator.loadNewDomains(\n this.createDomainCollection(this.domainCollection.max, n + 1).slice(n),\n ScrollDirection.SCROLL_FORWARD,\n );\n\n return Promise.allSettled([\n this.calendarPainter.paint(loadDirection),\n this.fill(),\n ]);\n }\n\n /**\n * Shift the calendar by n domains backward\n *\n * @param {number} n Number of domain intervals to shift backward\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n previous(n: number = 1): Promise {\n const loadDirection = this.navigator.loadNewDomains(\n this.createDomainCollection(this.domainCollection.min, -n),\n ScrollDirection.SCROLL_BACKWARD,\n );\n\n return Promise.allSettled([\n this.calendarPainter.paint(loadDirection),\n this.fill(),\n ]);\n }\n\n /**\n * Jump directly to a specific date\n *\n * JumpTo will scroll the calendar until the wanted domain with the specified\n * date is visible. Unless you set reset to true, the wanted domain\n * will not necessarily be the first domain of the calendar.\n *\n * @param {Date} date Jump to the domain containing that date\n * @param {boolean} reset Whether the wanted domain\n * should be the first domain of the calendar\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n jumpTo(date: Date, reset: boolean = false): Promise {\n return Promise.allSettled([\n this.calendarPainter.paint(this.navigator.jumpTo(date, reset)),\n this.fill(),\n ]);\n }\n\n /**\n * Fill the calendar with the given data\n *\n * @param {Object|string} dataSource The calendar's datasource,\n * same type as `options.data.source`\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n fill(dataSource = this.options.options.data.source): Promise {\n const { options } = this.options;\n const template = this.templateCollection;\n const endDate = this.dateHelper.intervals(\n options.domain.type,\n this.domainCollection.max,\n 2,\n )[1];\n\n const dataPromise = this.dataFetcher.getDatas(\n dataSource,\n this.domainCollection.min,\n endDate,\n );\n\n return new Promise((resolve, reject) => {\n dataPromise.then(\n (data: any) => {\n this.domainCollection.fill(\n data,\n options.data,\n template.get(options.subDomain.type)!.extractUnit,\n );\n this.populator.populate();\n resolve(null);\n },\n (error) => {\n reject(error);\n },\n );\n });\n }\n\n /**\n * Listener for all events\n *\n * @since 4.0.0\n * @param {string} eventName Name of the event to listen to\n * @param {function} Callback function to execute on event trigger\n * @return void\n */\n on(name: string, fn: (...args: any[]) => any): void {\n this.eventEmitter.on(name, fn);\n }\n\n dimensions(): Dimensions {\n return this.calendarPainter.dimensions;\n }\n\n /**\n * Destroy the calendar\n *\n * @since 3.3.6\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n destroy(): Promise {\n return this.calendarPainter.destroy();\n }\n\n extendDayjs(plugin: PluginFunc): dayjs.Dayjs {\n return this.dateHelper.extend(plugin);\n }\n}\n","const VERSION = '4.2.4';\nexport default VERSION;\n"],"names":["check","it","Math","global","globalThis","window","self","this","Function","shared$4","exports","require$$0","defineProperty","Object","defineGlobalProperty","key","value","configurable","writable","error","require$$1","SHARED","sharedStore","store","sharedModule","undefined","push","version","mode","copyright","license","source","match","fails","exec","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","hasOwnProperty_1","hasOwn","uncurryThis","id","postfix","random","toString","uid","engineUserAgent","navigator","String","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","$String","require$$2","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","shared","require$$3","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","toStringTagSupport","documentAll","document","all","documentAll_1","IS_HTMLDDA","isCallable","objectDefineProperty","descriptors","get","isObject","EXISTS","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","isSymbol","$Symbol","tryToString","aCallable","getMethod","V","P","func","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","DESCRIPTORS","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","getOwnPropertyDescriptor","ENUMERABLE","CONFIGURABLE","WRITABLE","f","O","Attributes","current","enumerable","makeBuiltIn$3","getDescriptor","functionName","PROPER","functionToString","inspectSource","set","has","WeakMap","weakMapBasicDetection","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","classofRaw","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","classof","tag","tryGet","callee","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","descriptor","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","objectGetOwnPropertyNames","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","target","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","defineBuiltInAccessor","SPECIES","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionUncurryThisClause","functionBindContext","that","html","arraySlice","engineIsIos","require$$8","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","require$$12","speciesConstructor","defaultConstructor","S","require$$14","require$$15","hostReportErrors","b","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","objectKeys","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","addToUnscopables","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","allSettled","status","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","stringMultibyte","codeAt","STRING_ITERATOR","point","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","fill","argumentsLength","end","endPos","isArray","createProperty","propertyKey","arrayMethodHasSpeciesSupport","array","foo","Boolean","nativeSlice","HAS_SPECIES_SUPPORT","$Array","__awaiter","thisArg","_arguments","generator","fulfilled","e","rejected","__classPrivateFieldGet","receiver","start","k","fin","prefix","Events","EE","context","once","addListener","emitter","listener","evt","_events","_eventsCount","clearEvent","EventEmitter","eventNames","events","listeners","handlers","l","ee","listenerCount","a1","a2","a3","a4","a5","len","removeListener","j","on","removeAllListeners","off","prefixed","module","isArray$3","castArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","forEach","map","filter","some","every","find","findIndex","filterReject","$map","$assign","assign","objectAssign","A","B","alphabet","chr","T","internalMetadata","objectGetOwnPropertyNamesExternal","arraySliceSimple","$getOwnPropertyNames","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","collection","common","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","getConstructor","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","ScrollDirection","Position","collectionWeak","define","init","SCALE_BASE_OPACITY_COLOR","SCALE_BASE_COLOR_DOMAIN","Navigator","calendar","_classCallCheck","maxDomainReached","minDomainReached","_createClass","newDomainCollection","_this","direction","SCROLL_NONE","templatesClt","templateCollection","minDate","date","extractUnit","maxDate","domainCollection","_Navigator_instances","_Navigator_isDomainBoundaryReached","clamp","range","SCROLL_FORWARD","merge","domainKey","subDomainEndDate","at","dateHelper","intervals","pop","subDomain","mapping","d","v","defaultValue","_Navigator_setDomainsBoundaryReached","SCROLL_BACKWARD","eventEmitter","reset","_this$calendar","Date","loadNewDomains","createDomainCollection","WeakSet","lowerBound","upperBound","reached","doesNotExceedSafeInteger","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","arg","E","arrayMethodIsStrict","nativeJoin","separator","collectionStrong","last","previous","getEntry","removed","prev","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","mergeSort","comparefn","middle","insertionSort","element","left","right","llength","rlength","lindex","rindex","arraySort","firefox","engineFfVersion","engineIsIeOrEdge","webkit","engineWebkitVersion","deletePropertyOrThrow","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","sort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STRICT_METHOD","STABLE_SORT","code","fromCharCode","itemsLength","items","arrayLength","y","getSortCompare","$forEach","isVertical","horizontalPadding","padding","LEFT","RIGHT","verticalPadding","TOP","BOTTOM","DomainCoordinates","domainPainter","Map","scrollDirection","_this$calendar$option","verticalOrientation","dimensions","width","height","exitingTotal","scrollFactor","reverse","yankedDomains","coor","w","_DomainCoordinates_instances","_DomainCoordinates_getWidth","h","_DomainCoordinates_getHeight","pre_x","pre_y","inner_width","gutter","inner_height","_this$calendar$option2","columnsCount","subDomainWidth","domainHorizontalLabelWidth","_this$calendar$option3","rowsCount","subDomainHeight","domainVerticalLabelHeight","DEFAULT_SELECTOR","DomainPainter","coordinates","root","rootNode","animationDuration","t","transition","duration","update","promises","selectAll","append","attr","enterSelection","updateSelection","exitSelection","remove","classname","helper","hour","format","week","month","year","$includes","$filter","callWithSafeIterationClosing","arrayLike","IS_CONSTRUCTOR","mapfn","DOMAIN_FORMAT","xDay","ghDay","day","minute","DomainCollection","interval","excludeEnd","ts","_DomainCollection_instances","_DomainCollection_refreshKeys","callback","newCollection","limit","createValueCallback","_this2","keyToRemove","_this3","fromBeginning","_ref","subDomainKeyExtractor","_this4","groupY","groupedRecords","groupRecords","records","_DomainCollection_setSubDomainValues","_this5","results","validSubDomainTimestamp","timestamp","extractTimestamp","groupFn","cleanedValues","reduce","_toConsumableArray","datum","extractorFn","_this6","groupValues","_DomainCollection_extractValues","parseInt","DomainLabelPainter","label","text","textAlign","_DomainLabelPainter_instances","_DomainLabelPainter_textVerticalAlign","nodes","selection","_DomainLabelPainter_domainRotate","rotate","_this$calendar$option4","offset","_DomainLabelPainter_getDomainInsideWidth","_this$calendar$option5","_this$calendar$option6","_this$calendar$option7","_DomainLabelPainter_getDomainInsideHeight","_this$calendar$option8","calendarPainter","domainsContainerPainter","_this$calendar$option9","_this$calendar$option10","_this$calendar$option11","labelWidth","domainWidth","domainHeight","s","whitespaces","ltrim","RegExp","rtrim","stringTrim","trim","$trim","forcedStringTrimMethod","SubDomainPainter","containerClassname","subDomainSvgGroup","_SubDomainPainter_instances","_SubDomainPainter_setPositions","radius","subDomainsCollection","abs","insert","_SubDomainPainter_classname","ev","_SubDomainPainter_appendText","_options$domain","highlight","unitFn","_len","otherClasses","_key","elem","_SubDomainPainter_getCoordinates","axis","BASE_SELECTOR","TRANSITION_CLASSNAME","DomainsContainerPainter","subDomainPainter","domainLabelPainter","transitionsQueueCount","_DomainsContainerPainter_instances","_DomainsContainerPainter_startAnimation","paint","_DomainsContainerPainter_recomputeDimensions","_DomainsContainerPainter_endAnimation","_a","topHeight","pluginManager","getHeightFromPosition","leftWidth","getWidthFromPosition","select","parentNode","classed","domainsDimensions","PluginPainter","paintAll","setPluginsPosition","top","getFromPosition","bottom","topOffset","plugin","leftOffset","CalendarPainter","pluginPainter","itemSelector","theme","setup","setupAll","navigationDir","transitions","updatePosition","_CalendarPainter_instances","_CalendarPainter_resize","destroyAll","destroy","insideHeight","_CalendarPainter_getWidth","insideWidth","newWidth","newHeight","freeGlobal$1","freeSelf","root$1","freeGlobal","Symbol$2","objectProto","nativeObjectToString","symToStringTag","toStringTag","nullTag","undefinedTag","baseGetTag","isOwn","unmasked","getRawTag","objectToString","asyncTag","funcTag","genTag","proxyTag","isFunction","nativeKeys","MATCH","isRegExp","notARegexp","correctIsRegexpLogic","regexp","error1","error2","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","search","IE_BUG","TO_ENTRIES","IE_WORKAROUND","$entries","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","re","parse","fallback","timeIntervals","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","Error","maybeUtcInterval","TypedArray","Uint8Array","constant","coerceNumbers","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","arrayify","isScaleOptions","option","maybeInterval","isInteger","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","orderof","descending","color","opacity","registry","sqrt4_3","sqrt","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","draw","rx","PI","ry","hy","moveTo","lineTo","closePath","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","ordinalScheme","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","scale","channels","nice","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","h25","quantile","h50","median","inferLogDomain","inferQuantileDomain","createScaleD","transform","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","inferHint","stroke","inferSymbolHint","isNone","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","candidate","normalizeScale","projection","typeProjection","asOrdinalType","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","exposeScale","percent","bandwidth","normalizedScale","scaleOptions","scaleType","applyScaleStyle","_scale","keyname","styles","baseColor","scaleStyle","_ref2","_slicedToArray","prop","Populator","_calendar$options$opt","colorScale","defaultColor","hcl","eq","other","assocIndexOf","ListCache","__data__","coreJsData$1","maskSrcKey","coreJsData","funcToString","toSource","reIsHostCtor","funcProto","reIsNative","baseIsNative","getNative","getValue","Map$2","nativeCreate$1","Hash","getMapData","MapCache","nativeCreate","hash","Stack","pairs","LARGE_ARRAY_SIZE","defineProperty$1","baseAssignValue","assignMergeValue","fromRight","baseFor","iteratee","keysFunc","baseFor$1","freeExports","nodeType","freeModule","Buffer","allocUnsafe","Uint8Array$2","cloneTypedArray","typedArray","isDeep","arrayBuffer","byteLength","byteOffset","baseCreate$1","overArg","getPrototype$1","isPrototype","Ctor","isObjectLike","baseIsArguments","isArguments$1","MAX_SAFE_INTEGER","isLength","isArrayLike","isBuffer$1","isBuffer","objectTag","objectCtorString","typedArrayTags","freeProcess","nodeUtil","types","require","binding","nodeIsTypedArray","isTypedArray","isTypedArray$1","safeGet","assignValue","objValue","reIsUint","isIndex","arrayLikeKeys","inherited","isArr","isArg","isArguments","isBuff","isType","skipIndexes","baseTimes","baseKeysIn","nativeKeysIn","isProto","keysIn","toPlainObject","customizer","isNew","newValue","copyObject","baseMergeDeep","srcIndex","mergeFunc","stack","srcValue","stacked","isCommon","isTyped","copyArray","copy","cloneBuffer","getPrototype","isPlainObject","baseCreate","initCloneObject","baseMerge","identity","nativeMax","baseSetToString","baseSetToString$1","nativeNow","setToString","count","lastCalled","stamp","shortOut","setToString$1","baseRest","otherArgs","overRest","assigner","mergeWith","sources","guard","isIterateeCall","mergeWith$1","SetCache","arraySome","predicate","COMPARE_PARTIAL_FLAG","COMPARE_UNORDERED_FLAG","equalArrays","bitmask","equalFunc","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","boolTag","dateTag","errorTag","mapTag","numberTag","regexpTag","setTag","stringTag","symbolTag","arrayBufferTag","dataViewTag","symbolProto","symbolValueOf","nativeGetSymbols","getSymbols","resIndex","arrayFilter","getSymbols$1","nativeKeys$1","baseKeys","getAllKeys","symbolsFunc","arrayPush","baseGetAllKeys","DataView$1","Promise$2","Set$2","WeakMap$1","promiseTag","weakMapTag","dataViewCtorString","DataView","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ctorString","getTag$1","argsTag","arrayTag","baseIsEqualDeep","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","convert","equalByTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","equalObjects","baseIsEqual","isEqual","baseHas","reIsDeepProp","reIsPlainProp","FUNC_ERROR_TEXT","memoize","resolver","memoized","cache","Cache","rePropName","reEscapeChar","stringToPath","memoizeCapped","quote","subString","stringToPath$1","INFINITY","symbolToString","baseToString","arrayMap","castPath","isKey","toKey","path","hasFunc","hasPath","baseGet","lastIndex","nested","baseSet","re1","re2","OptionsPreProcessors","isString","Options","processors","preProcessors","dynamicDimension","locale","timezone","requestInit","opts","initScale","$RegExp","UNSUPPORTED_Y","MISSED_STICKY","sticky","BROKEN_CARET","regexpStickyHelpers","regexpUnsupportedDotAll","dotAll","flags","regexpUnsupportedNcg","groups","regexpFlags","hasIndices","ignoreCase","multiline","unicode","unicodeSets","stickyHelpers","UNSUPPORTED_DOT_ALL","UNSUPPORTED_NCG","nativeReplace","nativeExec","patchedExec","UPDATES_LAST_INDEX_WRONG","NPCG_INCLUDED","reCopy","group","str","raw","charsAdded","strCopy","regexpExec","RegExpPrototype","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","fixRegExpWellKnownSymbolLogic","SHAM","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","uncurriedNativeRegExpMethod","nativeMethod","arg2","forceStringMethod","$exec","advanceStringIndex","getSubstitution","matched","captures","namedCaptures","tailPos","m","ch","capture","regExpExec","R","REPLACE","require$$16","stringIndexOf","REPLACE_KEEPS_$0","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_SUPPORTS_NAMED_GROUPS","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","res","functionalReplace","fullUnicode","accumulatedResult","nextSourcePosition","replacerArgs","DataFetcher","startTimestamp","endTimestamp","_context","abrupt","_DataFetcher_instances","_DataFetcher_fetch","_callee","newUri","url","parseURI","json","csv","dsv","FUNCTION_NAME_EXISTS","nameRE","dayjs_min","u","o","M","weekdays","months","ordinal","z","utcOffset","clone","p","D","ms","Q","g","$L","utc","$u","$x","$offset","$d","substring","UTC","$y","getFullYear","$M","getMonth","$D","getDate","$W","getDay","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","isSame","startOf","endOf","isAfter","isBefore","$g","unix","getTime","toDate","$locale","weekStart","$set","daysInMonth","subtract","invalidDate","meridiem","monthsShort","weekdaysMin","weekdaysShort","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","extend","$i","isDayjs","en","Ls","yearStart","weeks","dayOfYear","weekday","isoWeeksInYear","isLeapYear","isoWeekday","isoWeekYear","isoWeek","weekYear","offsetName","local","getUTCFullYear","getUTCMonth","getUTCDate","getUTCDay","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","$localOffset","isUTC","timeZoneName","Intl","DateTimeFormat","hour12","timeZone","formatToParts","tz","toLocaleString","$timezone","guess","resolvedOptions","setDefault","formats","toUpperCase","firstDayOfWeek","longDateFormat","localeData","LTS","L","LL","LLL","LLLL","updateLocale","dayjs","weekOfYear","minMax","advancedFormat","localizedFormat","DEFAULT_LOCALE","DateHelper","_typeof","userLocale","loadBrowserLocale","sent","loadNodeLocale","dayjsPlugin","dayjsDate","endOfWeek","pivotDate","getLastWeekOfMonth","getFirstWeekOfMonth","startOfMonth","startOfFirstWeek","endOfMonth","endOfLastWeek","formatter","async","onerror","err","onload","import","ALLOWED_DATA_TYPES","validate","domainType","subDomainType","allowedDomainType","PluginManager","settings","plugins","pendingPaint","Creator","PluginClass","pluginOptions","extractPluginName","dirty","pluginInstance","allPlugins","TOTAL_ITEMS","monthDate","baseX","getMonthWeekNumber","weekNumber","endWeekNumber","getWeeksCountInMonth","clampStart","clampEnd","pivotDay","TemplateCollection","initiated","DefaultTemplates","templates","tplWithParent","template","parentTemplate","CalHeatmap","dataFetcher","populator","EventEmmiter","startDate","loadDirection","jumpTo","dataSource","endDate","dataPromise","getDatas","populate","VERSION"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,159,161,162,163,164,165,166,167,168,169,170,171,172,173,174,178,179,180,181,182,185,186,187,188,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,355,356,358,359,360,361,362,363,364,365,366,367,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,385,387]} diff --git a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.min.js.map b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.min.js.map index bef459c..6e43c83 100644 --- a/src/agenda_culturel/static/cal-heatmap/cal-heatmap.min.js.map +++ b/src/agenda_culturel/static/cal-heatmap/cal-heatmap.min.js.map @@ -1 +1 @@ -{"version":3,"file":"cal-heatmap.min.js","sources":["../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/define-global-property.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/function-bind-native.js","../node_modules/core-js/internals/function-uncurry-this.js","../node_modules/core-js/internals/is-null-or-undefined.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/has-own-property.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/symbol-constructor-detection.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/document-all.js","../node_modules/core-js/internals/is-callable.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/v8-prototype-define-bug.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/function-call.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/object-is-prototype-of.js","../node_modules/core-js/internals/is-symbol.js","../node_modules/core-js/internals/try-to-string.js","../node_modules/core-js/internals/a-callable.js","../node_modules/core-js/internals/get-method.js","../node_modules/core-js/internals/ordinary-to-primitive.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/to-property-key.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/function-name.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/weak-map-basic-detection.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/make-built-in.js","../node_modules/core-js/internals/define-built-in.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/object-to-string.js","../node_modules/core-js/modules/es.object.to-string.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/math-trunc.js","../node_modules/core-js/internals/to-integer-or-infinity.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/length-of-array-like.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/engine-is-node.js","../node_modules/core-js/internals/function-uncurry-this-accessor.js","../node_modules/core-js/internals/a-possible-prototype.js","../node_modules/core-js/internals/object-set-prototype-of.js","../node_modules/core-js/internals/set-to-string-tag.js","../node_modules/core-js/internals/define-built-in-accessor.js","../node_modules/core-js/internals/set-species.js","../node_modules/core-js/internals/an-instance.js","../node_modules/core-js/internals/is-constructor.js","../node_modules/core-js/internals/task.js","../node_modules/core-js/internals/a-constructor.js","../node_modules/core-js/internals/species-constructor.js","../node_modules/core-js/internals/function-apply.js","../node_modules/core-js/internals/function-uncurry-this-clause.js","../node_modules/core-js/internals/function-bind-context.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/array-slice.js","../node_modules/core-js/internals/validate-arguments-length.js","../node_modules/core-js/internals/engine-is-ios.js","../node_modules/core-js/internals/queue.js","../node_modules/core-js/internals/microtask.js","../node_modules/core-js/internals/engine-is-ios-pebble.js","../node_modules/core-js/internals/engine-is-webos-webkit.js","../node_modules/core-js/internals/perform.js","../node_modules/core-js/internals/promise-native-constructor.js","../node_modules/core-js/internals/engine-is-deno.js","../node_modules/core-js/internals/engine-is-browser.js","../node_modules/core-js/internals/promise-constructor-detection.js","../node_modules/core-js/internals/new-promise-capability.js","../node_modules/core-js/modules/es.promise.constructor.js","../node_modules/core-js/internals/host-report-errors.js","../node_modules/core-js/internals/iterators.js","../node_modules/core-js/internals/is-array-iterator-method.js","../node_modules/core-js/internals/get-iterator-method.js","../node_modules/core-js/internals/get-iterator.js","../node_modules/core-js/internals/iterator-close.js","../node_modules/core-js/internals/iterate.js","../node_modules/core-js/internals/check-correctness-of-iteration.js","../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../node_modules/core-js/modules/es.promise.all.js","../node_modules/core-js/modules/es.promise.catch.js","../node_modules/core-js/modules/es.promise.race.js","../node_modules/core-js/modules/es.promise.reject.js","../node_modules/core-js/internals/promise-resolve.js","../node_modules/core-js/modules/es.promise.resolve.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/add-to-unscopables.js","../node_modules/core-js/internals/iterators-core.js","../node_modules/core-js/internals/correct-prototype-getter.js","../node_modules/core-js/internals/object-get-prototype-of.js","../node_modules/core-js/internals/iterator-create-constructor.js","../node_modules/core-js/internals/iterator-define.js","../node_modules/core-js/internals/create-iter-result-object.js","../node_modules/core-js/modules/es.array.iterator.js","../node_modules/core-js/modules/es.promise.all-settled.js","../node_modules/core-js/internals/to-string.js","../node_modules/core-js/internals/string-multibyte.js","../node_modules/core-js/modules/es.string.iterator.js","../node_modules/core-js/internals/dom-iterables.js","../node_modules/core-js/internals/dom-token-list-prototype.js","../node_modules/core-js/modules/web.dom-collections.iterator.js","../node_modules/core-js/internals/array-fill.js","../node_modules/core-js/modules/es.array.fill.js","../node_modules/core-js/internals/is-array.js","../node_modules/core-js/internals/create-property.js","../node_modules/core-js/internals/array-method-has-species-support.js","../node_modules/core-js/modules/es.array.slice.js","../node_modules/tslib/tslib.es6.js","../node_modules/eventemitter3/index.js","../node_modules/lodash-es/isArray.js","../node_modules/lodash-es/castArray.js","../node_modules/core-js/internals/array-species-constructor.js","../node_modules/core-js/internals/array-species-create.js","../node_modules/core-js/internals/array-iteration.js","../node_modules/core-js/modules/es.array.map.js","../node_modules/core-js/internals/object-assign.js","../node_modules/core-js/modules/es.object.assign.js","../node_modules/core-js/internals/array-slice-simple.js","../node_modules/core-js/internals/object-get-own-property-names-external.js","../node_modules/core-js/internals/array-buffer-non-extensible.js","../node_modules/core-js/internals/object-is-extensible.js","../node_modules/core-js/internals/freezing.js","../node_modules/core-js/internals/internal-metadata.js","../node_modules/core-js/internals/inherit-if-required.js","../node_modules/core-js/internals/collection.js","../node_modules/core-js/internals/define-built-ins.js","../node_modules/core-js/internals/collection-weak.js","../../src/constant.ts","../node_modules/core-js/modules/es.weak-set.constructor.js","../../src/calendar/Navigator.ts","../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../node_modules/core-js/modules/es.array.concat.js","../node_modules/core-js/internals/array-method-is-strict.js","../node_modules/core-js/modules/es.array.join.js","../node_modules/core-js/internals/collection-strong.js","../node_modules/core-js/modules/es.map.constructor.js","../node_modules/core-js/internals/delete-property-or-throw.js","../node_modules/core-js/internals/array-sort.js","../node_modules/core-js/internals/engine-ff-version.js","../node_modules/core-js/internals/engine-is-ie-or-edge.js","../node_modules/core-js/internals/engine-webkit-version.js","../node_modules/core-js/modules/es.array.sort.js","../node_modules/core-js/internals/array-for-each.js","../node_modules/core-js/modules/web.dom-collections.for-each.js","../../src/helpers/PositionHelper.ts","../../src/domain/DomainCoordinates.ts","../../src/domain/DomainPainter.ts","../node_modules/core-js/modules/es.array.includes.js","../node_modules/core-js/modules/es.array.filter.js","../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../node_modules/core-js/internals/array-from.js","../node_modules/core-js/modules/es.array.from.js","../../src/calendar/DomainCollection.ts","../../src/domain/DomainLabelPainter.ts","../node_modules/core-js/internals/whitespaces.js","../node_modules/core-js/internals/string-trim.js","../node_modules/core-js/internals/string-trim-forced.js","../node_modules/core-js/modules/es.string.trim.js","../../src/subDomain/SubDomainPainter.ts","../../src/domain/DomainsContainerPainter.ts","../../src/plugins/PluginPainter.ts","../../src/calendar/CalendarPainter.ts","../node_modules/lodash-es/_freeGlobal.js","../node_modules/lodash-es/_root.js","../node_modules/lodash-es/_Symbol.js","../node_modules/lodash-es/_getRawTag.js","../node_modules/lodash-es/_objectToString.js","../node_modules/lodash-es/_baseGetTag.js","../node_modules/lodash-es/isObject.js","../node_modules/lodash-es/isFunction.js","../node_modules/core-js/modules/es.object.keys.js","../node_modules/core-js/internals/is-regexp.js","../node_modules/core-js/modules/es.string.starts-with.js","../node_modules/core-js/internals/not-a-regexp.js","../node_modules/core-js/internals/correct-is-regexp-logic.js","../node_modules/core-js/internals/object-to-array.js","../node_modules/core-js/modules/es.object.entries.js","../node_modules/@observablehq/plot/src/defined.js","../node_modules/isoformat/src/parse.js","../node_modules/@observablehq/plot/src/time.js","../node_modules/@observablehq/plot/src/options.js","../node_modules/@observablehq/plot/src/scales/index.js","../node_modules/@observablehq/plot/src/symbol.js","../node_modules/@observablehq/plot/src/warnings.js","../node_modules/@observablehq/plot/src/scales/schemes.js","../node_modules/@observablehq/plot/src/scales/quantitative.js","../node_modules/@observablehq/plot/src/scales/diverging.js","../node_modules/@observablehq/plot/src/scales/temporal.js","../node_modules/@observablehq/plot/src/scales/ordinal.js","../node_modules/@observablehq/plot/src/scales.js","../../src/scale.ts","../../src/calendar/Populator.ts","../node_modules/lodash-es/eq.js","../node_modules/lodash-es/_assocIndexOf.js","../node_modules/lodash-es/_listCacheDelete.js","../node_modules/lodash-es/_ListCache.js","../node_modules/lodash-es/_listCacheClear.js","../node_modules/lodash-es/_listCacheGet.js","../node_modules/lodash-es/_listCacheHas.js","../node_modules/lodash-es/_listCacheSet.js","../node_modules/lodash-es/_coreJsData.js","../node_modules/lodash-es/_isMasked.js","../node_modules/lodash-es/_toSource.js","../node_modules/lodash-es/_baseIsNative.js","../node_modules/lodash-es/_getNative.js","../node_modules/lodash-es/_getValue.js","../node_modules/lodash-es/_Map.js","../node_modules/lodash-es/_nativeCreate.js","../node_modules/lodash-es/_hashGet.js","../node_modules/lodash-es/_hashHas.js","../node_modules/lodash-es/_Hash.js","../node_modules/lodash-es/_getMapData.js","../node_modules/lodash-es/_isKeyable.js","../node_modules/lodash-es/_MapCache.js","../node_modules/lodash-es/_hashClear.js","../node_modules/lodash-es/_hashDelete.js","../node_modules/lodash-es/_hashSet.js","../node_modules/lodash-es/_mapCacheClear.js","../node_modules/lodash-es/_mapCacheDelete.js","../node_modules/lodash-es/_mapCacheGet.js","../node_modules/lodash-es/_mapCacheHas.js","../node_modules/lodash-es/_mapCacheSet.js","../node_modules/lodash-es/_Stack.js","../node_modules/lodash-es/_stackClear.js","../node_modules/lodash-es/_stackDelete.js","../node_modules/lodash-es/_stackGet.js","../node_modules/lodash-es/_stackHas.js","../node_modules/lodash-es/_stackSet.js","../node_modules/lodash-es/_defineProperty.js","../node_modules/lodash-es/_baseAssignValue.js","../node_modules/lodash-es/_assignMergeValue.js","../node_modules/lodash-es/_baseFor.js","../node_modules/lodash-es/_createBaseFor.js","../node_modules/lodash-es/_cloneBuffer.js","../node_modules/lodash-es/_Uint8Array.js","../node_modules/lodash-es/_cloneTypedArray.js","../node_modules/lodash-es/_cloneArrayBuffer.js","../node_modules/lodash-es/_baseCreate.js","../node_modules/lodash-es/_overArg.js","../node_modules/lodash-es/_getPrototype.js","../node_modules/lodash-es/_isPrototype.js","../node_modules/lodash-es/isObjectLike.js","../node_modules/lodash-es/_baseIsArguments.js","../node_modules/lodash-es/isArguments.js","../node_modules/lodash-es/isLength.js","../node_modules/lodash-es/isArrayLike.js","../node_modules/lodash-es/isBuffer.js","../node_modules/lodash-es/stubFalse.js","../node_modules/lodash-es/isPlainObject.js","../node_modules/lodash-es/_baseIsTypedArray.js","../node_modules/lodash-es/_nodeUtil.js","../node_modules/lodash-es/_baseUnary.js","../node_modules/lodash-es/isTypedArray.js","../node_modules/lodash-es/_safeGet.js","../node_modules/lodash-es/_assignValue.js","../node_modules/lodash-es/_isIndex.js","../node_modules/lodash-es/_arrayLikeKeys.js","../node_modules/lodash-es/_baseTimes.js","../node_modules/lodash-es/_baseKeysIn.js","../node_modules/lodash-es/_nativeKeysIn.js","../node_modules/lodash-es/keysIn.js","../node_modules/lodash-es/toPlainObject.js","../node_modules/lodash-es/_copyObject.js","../node_modules/lodash-es/_baseMergeDeep.js","../node_modules/lodash-es/isArrayLikeObject.js","../node_modules/lodash-es/_copyArray.js","../node_modules/lodash-es/_initCloneObject.js","../node_modules/lodash-es/_baseMerge.js","../node_modules/lodash-es/identity.js","../node_modules/lodash-es/_overRest.js","../node_modules/lodash-es/_baseSetToString.js","../node_modules/lodash-es/constant.js","../node_modules/lodash-es/_shortOut.js","../node_modules/lodash-es/_setToString.js","../node_modules/lodash-es/_baseRest.js","../node_modules/lodash-es/_apply.js","../node_modules/lodash-es/mergeWith.js","../node_modules/lodash-es/_createAssigner.js","../node_modules/lodash-es/_isIterateeCall.js","../node_modules/lodash-es/_SetCache.js","../node_modules/lodash-es/_arraySome.js","../node_modules/lodash-es/_setCacheAdd.js","../node_modules/lodash-es/_setCacheHas.js","../node_modules/lodash-es/_equalArrays.js","../node_modules/lodash-es/_cacheHas.js","../node_modules/lodash-es/_mapToArray.js","../node_modules/lodash-es/_setToArray.js","../node_modules/lodash-es/_equalByTag.js","../node_modules/lodash-es/_getSymbols.js","../node_modules/lodash-es/_arrayFilter.js","../node_modules/lodash-es/stubArray.js","../node_modules/lodash-es/_nativeKeys.js","../node_modules/lodash-es/_baseKeys.js","../node_modules/lodash-es/keys.js","../node_modules/lodash-es/_getAllKeys.js","../node_modules/lodash-es/_baseGetAllKeys.js","../node_modules/lodash-es/_arrayPush.js","../node_modules/lodash-es/_equalObjects.js","../node_modules/lodash-es/_DataView.js","../node_modules/lodash-es/_Promise.js","../node_modules/lodash-es/_Set.js","../node_modules/lodash-es/_WeakMap.js","../node_modules/lodash-es/_getTag.js","../node_modules/lodash-es/_baseIsEqualDeep.js","../node_modules/lodash-es/_baseIsEqual.js","../node_modules/lodash-es/isEqual.js","../node_modules/lodash-es/_baseHas.js","../node_modules/lodash-es/isSymbol.js","../node_modules/lodash-es/_isKey.js","../node_modules/lodash-es/memoize.js","../node_modules/lodash-es/_stringToPath.js","../node_modules/lodash-es/_memoizeCapped.js","../node_modules/lodash-es/_baseToString.js","../node_modules/lodash-es/_arrayMap.js","../node_modules/lodash-es/_castPath.js","../node_modules/lodash-es/toString.js","../node_modules/lodash-es/_toKey.js","../node_modules/lodash-es/has.js","../node_modules/lodash-es/_hasPath.js","../node_modules/lodash-es/get.js","../node_modules/lodash-es/_baseGet.js","../node_modules/lodash-es/set.js","../node_modules/lodash-es/_baseSet.js","../../src/options/OptionsPreProcessors.ts","../node_modules/core-js/internals/regexp-exec.js","../node_modules/lodash-es/isString.js","../../src/options/Options.ts","../node_modules/core-js/internals/regexp-flags.js","../node_modules/core-js/internals/regexp-sticky-helpers.js","../node_modules/core-js/internals/regexp-unsupported-dot-all.js","../node_modules/core-js/internals/regexp-unsupported-ncg.js","../node_modules/core-js/modules/es.regexp.exec.js","../node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","../node_modules/core-js/internals/advance-string-index.js","../node_modules/core-js/internals/get-substitution.js","../node_modules/core-js/internals/regexp-exec-abstract.js","../node_modules/core-js/modules/es.string.replace.js","../../src/DataFetcher.ts","../node_modules/core-js/modules/es.function.name.js","../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/weekOfYear.js","../node_modules/dayjs/plugin/dayOfYear.js","../node_modules/dayjs/plugin/weekday.js","../node_modules/dayjs/plugin/minMax.js","../node_modules/dayjs/plugin/isoWeeksInYear.js","../node_modules/dayjs/plugin/isoWeek.js","../node_modules/dayjs/plugin/isLeapYear.js","../node_modules/dayjs/plugin/advancedFormat.js","../node_modules/dayjs/plugin/utc.js","../node_modules/dayjs/plugin/timezone.js","../node_modules/dayjs/plugin/localeData.js","../node_modules/dayjs/plugin/localizedFormat.js","../node_modules/dayjs/plugin/updateLocale.js","../../src/helpers/DateHelper.ts","../node_modules/core-js/modules/es.string.includes.js","../../src/options/OptionsValidator.ts","../node_modules/core-js/modules/es.set.constructor.js","../../src/plugins/PluginManager.ts","../../src/templates/index.ts","../../src/templates/minute.ts","../../src/templates/hour.ts","../../src/templates/day.ts","../../src/templates/xDay.ts","../../src/templates/ghDay.ts","../../src/templates/week.ts","../../src/templates/month.ts","../../src/templates/year.ts","../../src/TemplateCollection.ts","../../src/CalHeatmap.ts","../../src/version.ts"],"sourcesContent":["'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = lengthOfArrayLike(O);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fill = require('../internals/array-fill');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.fill` method\n// https://tc39.es/ecma262/#sec-array.prototype.fill\n$({ target: 'Array', proto: true }, {\n fill: fill\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('fill');\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nexport default isArray;\n","import isArray from './isArray.js';\n\n/**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\nfunction castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n}\n\nexport default castArray;\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","import { ScrollDirection } from '../constant';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type DomainCollection from './DomainCollection';\nimport type { Timestamp } from '../index';\n\nexport default class Navigator {\n calendar: CalHeatmap;\n\n minDomainReached: boolean;\n\n maxDomainReached: boolean;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.maxDomainReached = false;\n this.minDomainReached = false;\n }\n\n loadNewDomains(\n newDomainCollection: DomainCollection,\n direction: ScrollDirection = ScrollDirection.SCROLL_NONE,\n ): ScrollDirection {\n const { options } = this.calendar.options;\n const templatesClt = this.calendar.templateCollection;\n const minDate = options.date.min ?\n templatesClt.get(options.domain.type)!.extractUnit(+options.date.min) :\n undefined;\n const maxDate = options.date.max ?\n templatesClt.get(options.domain.type)!.extractUnit(+options.date.max) :\n undefined;\n const { domainCollection } = this.calendar;\n\n if (\n this.#isDomainBoundaryReached(\n newDomainCollection,\n minDate,\n maxDate,\n direction,\n )\n ) {\n return ScrollDirection.SCROLL_NONE;\n }\n\n if (direction !== ScrollDirection.SCROLL_NONE) {\n newDomainCollection\n .clamp(minDate, maxDate)\n .slice(options.range, direction === ScrollDirection.SCROLL_FORWARD);\n }\n\n domainCollection.merge(\n newDomainCollection,\n options.range,\n (domainKey: Timestamp, index: number) => {\n let subDomainEndDate = null;\n if (newDomainCollection.at(index + 1)) {\n subDomainEndDate = newDomainCollection.at(index + 1);\n } else {\n subDomainEndDate = this.calendar.dateHelper\n .intervals(options.domain.type, domainKey, 2)\n .pop();\n }\n return templatesClt\n .get(options.subDomain.type)!\n .mapping(domainKey, subDomainEndDate!)\n .map((d) => ({ ...d, v: options.data.defaultValue }));\n },\n );\n\n this.#setDomainsBoundaryReached(\n domainCollection.min,\n domainCollection.max,\n minDate,\n maxDate,\n );\n\n if (direction === ScrollDirection.SCROLL_BACKWARD) {\n this.calendar.eventEmitter.emit('domainsLoaded', [domainCollection.min]);\n } else if (direction === ScrollDirection.SCROLL_FORWARD) {\n this.calendar.eventEmitter.emit('domainsLoaded', [domainCollection.max]);\n }\n\n return direction;\n }\n\n jumpTo(date: Date, reset: boolean): ScrollDirection {\n const { domainCollection, options } = this.calendar;\n const minDate = new Date(domainCollection.min!);\n const maxDate = new Date(domainCollection.max!);\n\n if (date < minDate) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(date, minDate, false),\n ScrollDirection.SCROLL_BACKWARD,\n );\n }\n if (reset) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(date, options.options.range),\n minDate < date ?\n ScrollDirection.SCROLL_FORWARD :\n ScrollDirection.SCROLL_BACKWARD,\n );\n }\n\n if (date > maxDate) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(maxDate, date, false),\n ScrollDirection.SCROLL_FORWARD,\n );\n }\n\n return ScrollDirection.SCROLL_NONE;\n }\n\n #isDomainBoundaryReached(\n newDomainCollection: DomainCollection,\n minDate?: Timestamp,\n maxDate?: Timestamp,\n direction?: ScrollDirection,\n ): boolean {\n if (\n maxDate &&\n newDomainCollection.max! >= maxDate &&\n this.maxDomainReached &&\n direction === ScrollDirection.SCROLL_FORWARD\n ) {\n return true;\n }\n\n if (\n minDate &&\n newDomainCollection.min! <= minDate &&\n this.minDomainReached &&\n direction === ScrollDirection.SCROLL_BACKWARD\n ) {\n return true;\n }\n\n return false;\n }\n\n #setDomainsBoundaryReached(\n lowerBound: Timestamp,\n upperBound: Timestamp,\n min?: Timestamp,\n max?: Timestamp,\n ): void {\n if (min) {\n const reached = lowerBound <= min;\n this.calendar.eventEmitter.emit(\n reached ? 'minDateReached' : 'minDateNotReached',\n );\n this.minDomainReached = reached;\n }\n if (max) {\n const reached = upperBound >= max;\n this.calendar.eventEmitter.emit(\n reached ? 'maxDateReached' : 'maxDateNotReached',\n );\n this.maxDomainReached = reached;\n }\n }\n}\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key === key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first === entry) state.first = next;\n if (state.last === entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind === 'keys') return createIterResultObject(entry.key, false);\n if (kind === 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","'use strict';\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","'use strict';\nvar UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar nativeSort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = lengthOfArrayLike(items);\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","import { Position } from '../constant';\nimport type { Padding } from '../options/Options';\n\nexport function isHorizontal(position: string): boolean {\n return position === 'left' || position === 'right';\n}\n\nexport function isVertical(position: string): boolean {\n return position === 'top' || position === 'bottom';\n}\n\nexport function horizontalPadding(padding: Padding): number {\n return padding[Position.LEFT] + padding[Position.RIGHT];\n}\n\nexport function verticalPadding(padding: Padding): number {\n return padding[Position.TOP] + padding[Position.BOTTOM];\n}\n","import { ScrollDirection } from '../constant';\nimport { horizontalPadding, verticalPadding } from '../helpers/PositionHelper';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type DomainPainter from './DomainPainter';\nimport type DomainCollection from '../calendar/DomainCollection';\nimport type { SubDomain, Dimensions, Timestamp } from '../index';\n\ntype SubDomainWithCoordinates = Required & {\n pre_x: number;\n pre_y: number;\n width: number;\n height: number;\n inner_width: number;\n inner_height: number;\n};\n\nexport default class DomainCoordinates {\n calendar: CalHeatmap;\n\n domainPainter: DomainPainter;\n\n collection: Map;\n\n scrollDirection: ScrollDirection;\n\n constructor(calendar: CalHeatmap, domainPainter: DomainPainter) {\n this.calendar = calendar;\n this.domainPainter = domainPainter;\n this.collection = new Map();\n this.scrollDirection = ScrollDirection.SCROLL_FORWARD;\n }\n\n get(domainKey: Timestamp): SubDomainWithCoordinates | undefined {\n return this.collection.get(domainKey);\n }\n\n update(collection: DomainCollection, scrollDirection: ScrollDirection) {\n const { verticalOrientation, domain } = this.calendar.options.options;\n\n this.scrollDirection = scrollDirection;\n const dimensions: Dimensions = {\n width: 0,\n height: 0,\n };\n let exitingTotal = 0;\n let scrollFactor =\n scrollDirection === ScrollDirection.SCROLL_FORWARD ? -1 : 1;\n const { keys } = collection;\n if (this.calendar.options.options.domain.sort === 'desc') {\n keys.reverse();\n scrollFactor *= -1;\n }\n\n collection.yankedDomains.forEach((domainKey: Timestamp) => {\n exitingTotal +=\n this.collection.get(domainKey)![\n verticalOrientation ? 'height' : 'width'\n ];\n });\n collection.yankedDomains.forEach((domainKey: Timestamp) => {\n const coor = this.collection.get(domainKey)!;\n this.collection.set(domainKey, {\n ...coor,\n x: verticalOrientation ? coor.x : coor.x + exitingTotal * scrollFactor,\n y: verticalOrientation ? coor.y + exitingTotal * scrollFactor : coor.y,\n });\n });\n\n keys.forEach((domainKey: Timestamp) => {\n const w = this.#getWidth(domainKey);\n const h = this.#getHeight(domainKey);\n if (verticalOrientation) {\n dimensions.height += h;\n dimensions.width = Math.max(w, dimensions.width);\n } else {\n dimensions.width += w;\n dimensions.height = Math.max(h, dimensions.height);\n }\n\n const x = dimensions.width - w;\n const y = dimensions.height - h;\n\n this.collection.set(domainKey, {\n ...this.collection.get(domainKey)!,\n x: verticalOrientation ? 0 : x,\n y: verticalOrientation ? y : 0,\n pre_x: verticalOrientation ? x : x - exitingTotal * scrollFactor,\n pre_y: verticalOrientation ? y - exitingTotal * scrollFactor : y,\n width: w,\n height: h,\n inner_width: w - (verticalOrientation ? 0 : domain.gutter),\n inner_height: h - (!verticalOrientation ? 0 : domain.gutter),\n });\n });\n\n return dimensions;\n }\n\n /**\n * Return the full width of the domain block\n * @param {number} d Domain start timestamp\n * @return {number} The full width of the domain,\n * including all padding and gutter\n * Used to compute the x position of the domains on the x axis\n */\n #getWidth(d: Timestamp): number {\n const {\n domain, subDomain, x, verticalOrientation,\n } =\n this.calendar.options.options;\n const columnsCount = this.calendar.templateCollection\n .get(subDomain.type)!\n .columnsCount(d);\n\n const subDomainWidth =\n (subDomain.width + subDomain.gutter) * columnsCount - subDomain.gutter;\n\n return (\n horizontalPadding(domain.padding) +\n x.domainHorizontalLabelWidth +\n (verticalOrientation ? 0 : domain.gutter) +\n subDomainWidth\n );\n }\n\n /**\n * Return the full height of the domain block\n * @param {number} d Domain start timestamp\n * @return {number} The full height of the domain,\n * including all paddings and gutter.\n * Used to compute the y position of the domains on the y axis\n */\n #getHeight(d: Timestamp): number {\n const {\n domain, subDomain, x, verticalOrientation,\n } =\n this.calendar.options.options;\n const rowsCount = this.calendar.templateCollection\n .get(subDomain.type)!\n .rowsCount(d);\n\n const subDomainHeight =\n (subDomain.height + subDomain.gutter) * rowsCount - subDomain.gutter;\n\n return (\n verticalPadding(domain.padding) +\n subDomainHeight +\n (verticalOrientation ? domain.gutter : 0) +\n x.domainVerticalLabelHeight\n );\n }\n}\n","import DomainCoordinates from './DomainCoordinates';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { ScrollDirection } from '../constant';\nimport type { Dimensions, Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '.ch-domain';\n\nexport default class DomainPainter {\n calendar: CalHeatmap;\n\n coordinates: DomainCoordinates;\n\n root: any;\n\n dimensions: Dimensions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.coordinates = new DomainCoordinates(calendar, this);\n this.root = null;\n\n // Dimensions of the internal area containing all the domains\n // Excluding all surrounding margins\n this.dimensions = {\n width: 0,\n height: 0,\n };\n }\n\n paint(scrollDirection: ScrollDirection, rootNode: any): Promise[] {\n const { animationDuration } = this.calendar.options.options;\n const t = rootNode.transition().duration(animationDuration);\n const coor = this.coordinates;\n\n this.dimensions = coor.update(\n this.calendar.domainCollection,\n scrollDirection,\n );\n\n const promises: Promise[] = [];\n\n this.root = rootNode\n .selectAll(DEFAULT_SELECTOR)\n .data(this.calendar.domainCollection.keys, (d: Timestamp) => d)\n .join(\n (enter: any) => enter\n .append('svg')\n .attr('x', (d: Timestamp) => coor.get(d)!.pre_x)\n .attr('y', (d: Timestamp) => coor.get(d)!.pre_y)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .attr('class', (d: Timestamp) => this.#getClassName(d))\n .call((enterSelection: any) => enterSelection\n .append('rect')\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .call((enterSelection: any) => promises.push(\n enterSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .end(),\n )),\n (update: any) => update\n .call((updateSelection: any) => promises.push(\n updateSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .end(),\n ))\n .call((updateSelection: any) => promises.push(\n updateSelection\n .selectAll(`${DEFAULT_SELECTOR}-bg`)\n .transition(t)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .end(),\n )),\n (exit: any) => exit.call((exitSelection: any) => promises.push(\n exitSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .remove()\n .end(),\n )),\n );\n\n return promises;\n }\n\n #getClassName(d: Timestamp): string {\n let classname = DEFAULT_SELECTOR.slice(1);\n const helper = this.calendar.dateHelper.date(d);\n\n switch (this.calendar.options.options.domain.type) {\n case 'hour':\n classname += ` h_${helper.hour()}`;\n break;\n case 'day':\n classname += ` d_${helper.date()} dy_${helper.format('d') + 1}`;\n break;\n case 'week':\n classname += ` w_${helper.week()}`;\n break;\n case 'month':\n classname += ` m_${helper.month() + 1}`;\n break;\n case 'year':\n classname += ` y_${helper.year()}`;\n break;\n default:\n }\n return classname;\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n // eslint-disable-next-line es/no-array-prototype-includes -- detection\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","import castArray from 'lodash-es/castArray';\n\nimport type { SubDomain } from '../index';\nimport type {\n DataOptions,\n DataGroupType,\n DataRecord,\n} from '../options/Options';\nimport { DomainType, Timestamp } from '../index';\nimport type DateHelper from '../helpers/DateHelper';\n\nexport const DOMAIN_FORMAT: Record = {\n year: 'YYYY',\n month: 'MMMM',\n week: 'wo [week] YYYY',\n xDay: 'Do MMM',\n ghDay: 'Do MMM',\n day: 'Do MMM',\n hour: 'HH:00',\n minute: 'HH:mm',\n};\n\ntype GroupedRecords = Map;\ntype ValueType = string | number | null;\n\nexport default class DomainCollection {\n collection: Map;\n\n dateHelper: DateHelper;\n\n min: Timestamp;\n\n max: Timestamp;\n\n keys: Timestamp[];\n\n yankedDomains: Timestamp[];\n\n constructor(\n dateHelper: DateHelper,\n interval?: DomainType,\n start?: Date | Timestamp,\n range?: Date | Timestamp,\n excludeEnd: boolean = false,\n ) {\n this.collection = new Map();\n this.dateHelper = dateHelper;\n\n if (interval && start && range) {\n const ts = this.dateHelper\n .intervals(interval, start, range, excludeEnd)\n .map((d: Timestamp) => castArray(d));\n\n // @ts-ignore\n this.collection = new Map(ts);\n }\n\n this.min = 0;\n this.max = 0;\n this.keys = [];\n this.yankedDomains = [];\n\n if (this.collection.size > 0) {\n this.#refreshKeys();\n }\n }\n\n has(key: Timestamp): boolean {\n return this.collection.has(key);\n }\n\n get(key: Timestamp) {\n return this.collection.get(key);\n }\n\n forEach(callback: any) {\n return this.collection.forEach(callback);\n }\n\n at(index: number): Timestamp {\n return this.keys[index];\n }\n\n clamp(minDate?: Timestamp, maxDate?: Timestamp): DomainCollection {\n if (minDate && this.min! < minDate) {\n this.keys\n .filter((key) => key < minDate)\n .forEach((d) => this.collection.delete(d));\n }\n\n if (maxDate && this.max! > maxDate) {\n this.keys\n .filter((key) => key > maxDate)\n .forEach((d) => this.collection.delete(d));\n }\n\n this.#refreshKeys();\n\n return this;\n }\n\n merge(\n newCollection: DomainCollection,\n limit: number,\n createValueCallback: Function,\n ): void {\n this.yankedDomains = [];\n\n newCollection.keys.forEach((domainKey, index) => {\n if (this.has(domainKey)) {\n return;\n }\n\n if (this.collection.size >= limit) {\n let keyToRemove = this.max;\n\n if (domainKey > this.max!) {\n keyToRemove = this.min;\n }\n\n if (keyToRemove && this.collection.delete(keyToRemove)) {\n this.yankedDomains.push(keyToRemove);\n }\n }\n this.collection.set(domainKey, createValueCallback(domainKey, index));\n this.#refreshKeys();\n });\n this.yankedDomains = this.yankedDomains.sort((a, b) => a - b);\n }\n\n slice(limit: number = 0, fromBeginning: boolean = true): DomainCollection {\n if (this.keys.length > limit) {\n const keysToDelete = fromBeginning ?\n this.keys.slice(0, -limit) :\n this.keys.slice(limit);\n\n keysToDelete.forEach((key) => {\n this.collection.delete(key);\n });\n\n this.#refreshKeys();\n }\n\n return this;\n }\n\n fill(\n data: DataRecord[],\n {\n x,\n y,\n groupY,\n defaultValue,\n }: {\n x: DataOptions['x'];\n y: DataOptions['y'];\n groupY: DataOptions['groupY'];\n defaultValue: DataOptions['defaultValue'];\n },\n subDomainKeyExtractor: Function,\n ): void {\n const groupedRecords: GroupedRecords = this.groupRecords(\n data,\n x,\n subDomainKeyExtractor,\n );\n\n this.keys.forEach((domainKey) => {\n const records = groupedRecords.get(domainKey) || {};\n this.#setSubDomainValues(domainKey, records, y, groupY, defaultValue);\n });\n }\n\n #setSubDomainValues(\n domainKey: Timestamp,\n records: { [key: string]: DataRecord[] },\n y: DataOptions['y'],\n groupY: DataOptions['groupY'],\n defaultValue: DataOptions['defaultValue'],\n ): void {\n this.get(domainKey)!.forEach((subDomain: SubDomain, index: number) => {\n let value: ValueType = defaultValue;\n if (records.hasOwnProperty(subDomain.t)) {\n value = this.groupValues(\n this.#extractValues(records[subDomain.t], y),\n groupY,\n );\n }\n\n this.get(domainKey)![index].v = value;\n });\n }\n\n groupRecords(\n data: DataRecord[],\n x: DataOptions['x'],\n subDomainKeyExtractor: Function,\n ): GroupedRecords {\n const results: GroupedRecords = new Map();\n const validSubDomainTimestamp: Map = new Map();\n this.keys.forEach((domainKey) => {\n this.get(domainKey)!.forEach((subDomain: SubDomain) => {\n validSubDomainTimestamp.set(subDomain.t, domainKey);\n });\n });\n\n data.forEach((d) => {\n const timestamp = this.extractTimestamp(d, x, subDomainKeyExtractor);\n\n if (validSubDomainTimestamp.has(timestamp)) {\n const domainKey = validSubDomainTimestamp.get(timestamp)!;\n const records = results.get(domainKey) || {};\n records[timestamp] ||= [];\n records[timestamp].push(d);\n\n results.set(domainKey, records);\n }\n });\n\n return results;\n }\n\n // eslint-disable-next-line class-methods-use-this\n #extractValues(data: DataRecord[], y: string | Function): ValueType[] {\n return data.map((d): ValueType => (typeof y === 'function' ? y(d) : d[y]));\n }\n\n // eslint-disable-next-line class-methods-use-this\n groupValues(\n values: ValueType[],\n groupFn: DataGroupType | ((values: ValueType[]) => ValueType),\n ): ValueType {\n const cleanedValues = values.filter((n) => n !== null);\n\n if (typeof groupFn === 'string') {\n if (cleanedValues.every((n) => typeof n === 'number')) {\n switch (groupFn) {\n case 'sum':\n return (cleanedValues as number[]).reduce((a, b) => a + b, 0);\n case 'count':\n return cleanedValues.length;\n case 'min':\n return Math.min(...(cleanedValues as number[])) || null;\n case 'max':\n return Math.max(...(cleanedValues as number[])) || null;\n case 'average':\n return cleanedValues.length > 0 ?\n (cleanedValues as number[]).reduce((a, b) => a + b, 0) /\n cleanedValues.length :\n null;\n default:\n return null;\n }\n }\n\n switch (groupFn) {\n case 'count':\n return cleanedValues.length;\n default:\n return null;\n }\n } else if (typeof groupFn === 'function') {\n return groupFn(cleanedValues);\n }\n\n return null;\n }\n\n // eslint-disable-next-line class-methods-use-this\n extractTimestamp(\n datum: DataRecord,\n x: string | Function,\n extractorFn: Function,\n ): Timestamp {\n let timestamp: string | Timestamp =\n typeof x === 'function' ? x(datum) : datum[x];\n\n if (typeof timestamp === 'string') {\n timestamp = +new Date(timestamp);\n }\n\n return extractorFn(timestamp);\n }\n\n #refreshKeys(): Timestamp[] {\n this.keys = Array.from(this.collection.keys())\n .map((d: any) => parseInt(d, 10))\n .sort((a, b) => a - b);\n\n const { keys } = this;\n // eslint-disable-next-line prefer-destructuring\n this.min = keys[0];\n this.max = keys[keys.length - 1];\n\n return this.keys;\n }\n}\n","import { Position } from '../constant';\nimport {\n isVertical,\n verticalPadding,\n horizontalPadding,\n} from '../helpers/PositionHelper';\nimport { DOMAIN_FORMAT } from '../calendar/DomainCollection';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '.ch-domain-text';\n\nexport default class DomainLabelPainter {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n paint(root: any): void {\n const { label, type } = this.calendar.options.options.domain;\n const { dateHelper } = this.calendar;\n let format = label.text;\n if (format === null || format === '') {\n return;\n }\n\n if (typeof format === 'undefined') {\n format = DOMAIN_FORMAT[type];\n }\n\n root\n .selectAll(DEFAULT_SELECTOR)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('text')\n .attr('class', DEFAULT_SELECTOR.slice(1))\n .attr('x', (d: Timestamp) => this.#getX(d))\n .attr('y', (d: Timestamp) => this.#getY(d))\n .attr('text-anchor', label.textAlign)\n .attr('dominant-baseline', () => this.#textVerticalAlign())\n .text((d: Timestamp, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n dateHelper.format(d, format!, nodes[i]))\n .call((selection: any) => this.#domainRotate(selection)),\n (update: any) => {\n update\n .attr('x', (d: Timestamp) => this.#getX(d))\n .attr('y', (d: Timestamp) => this.#getY(d))\n .attr('text-anchor', label.textAlign)\n .attr('dominant-baseline', () => this.#textVerticalAlign())\n .text((d: Timestamp, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n dateHelper.format(d, format!, nodes[i]))\n .call((selection: any) => this.#domainRotate(selection));\n },\n );\n }\n\n #textVerticalAlign(): string {\n const { position, rotate } = this.calendar.options.options.domain.label;\n\n if (isVertical(position)) {\n return 'middle';\n }\n\n if (\n (rotate === 'left' && position === 'left') ||\n (rotate === 'right' && position === 'right')\n ) {\n return 'bottom';\n }\n\n return 'hanging';\n }\n\n #getX(d: Timestamp): number {\n const {\n padding,\n label: { position, textAlign, offset },\n } = this.calendar.options.options.domain;\n const { domainHorizontalLabelWidth } = this.calendar.options.options.x;\n\n let x = padding[Position.LEFT];\n\n if (position === 'right') {\n x += this.#getDomainInsideWidth(d);\n }\n\n if (textAlign === 'middle') {\n if (['top', 'bottom'].includes(position)) {\n x += this.#getDomainInsideWidth(d) / 2;\n } else {\n x += domainHorizontalLabelWidth / 2;\n }\n }\n\n if (textAlign === 'end') {\n if (isVertical(position)) {\n x += this.#getDomainInsideWidth(d);\n } else {\n x += domainHorizontalLabelWidth;\n }\n }\n\n return x + offset.x;\n }\n\n #getY(d: Timestamp): number {\n const {\n domain: {\n label: { position, offset },\n padding,\n },\n x,\n } = this.calendar.options.options;\n\n let y = padding[Position.TOP] + x.domainVerticalLabelHeight / 2;\n\n if (position === 'bottom') {\n y += this.#getDomainInsideHeight(d);\n }\n\n return y + offset.y;\n }\n\n #getDomainInsideWidth(d: Timestamp): number {\n const {\n domain: { padding },\n x: { domainHorizontalLabelWidth },\n } = this.calendar.options.options;\n const { coordinates } =\n this.calendar.calendarPainter.domainsContainerPainter.domainPainter;\n\n return (\n coordinates.get(d)!.inner_width -\n domainHorizontalLabelWidth -\n horizontalPadding(padding)\n );\n }\n\n #getDomainInsideHeight(d: Timestamp): number {\n const {\n x: { domainVerticalLabelHeight },\n domain: { padding },\n } = this.calendar.options.options;\n const { coordinates } =\n this.calendar.calendarPainter.domainsContainerPainter.domainPainter;\n\n return (\n coordinates.get(d)!.inner_height -\n domainVerticalLabelHeight -\n verticalPadding(padding)\n );\n }\n\n #domainRotate(selection: any) {\n const {\n domain: {\n label: { rotate, textAlign, position },\n },\n x,\n } = this.calendar.options.options;\n const labelWidth = x.domainHorizontalLabelWidth;\n\n switch (rotate) {\n // Rotating the text clockwise\n case 'right':\n selection.attr('transform', (d: Timestamp) => {\n const domainWidth = this.#getDomainInsideWidth(d);\n const domainHeight = this.#getDomainInsideHeight(d);\n const s = [\n `rotate(90, ${position === 'right' ? domainWidth : labelWidth}, 0)`,\n ];\n\n switch (position) {\n case 'right':\n if (textAlign === 'middle') {\n s.push(`translate(${domainHeight / 2 - labelWidth / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(${domainHeight - labelWidth})`);\n }\n break;\n case 'left':\n if (textAlign === 'start') {\n s.push(`translate(${labelWidth})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(${labelWidth / 2 + domainHeight / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(${domainHeight})`);\n }\n break;\n default:\n }\n\n return s.join(',');\n });\n break;\n // Rotating the text anticlockwise\n case 'left':\n selection.attr('transform', (d: Timestamp) => {\n const domainWidth = this.#getDomainInsideWidth(d);\n const domainHeight = this.#getDomainInsideHeight(d);\n const s = [\n `rotate(270, ${\n position === 'right' ? domainWidth : labelWidth\n }, 0)`,\n ];\n\n switch (position) {\n case 'right':\n if (textAlign === 'start') {\n s.push(`translate(-${domainHeight})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(-${domainHeight / 2 + labelWidth / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(-${labelWidth})`);\n }\n break;\n case 'left':\n if (textAlign === 'start') {\n s.push(`translate(${labelWidth - domainHeight})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(${labelWidth / 2 - domainHeight / 2})`);\n }\n break;\n default:\n }\n\n return s.join(',');\n });\n break;\n default:\n }\n }\n}\n","'use strict';\n// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { Position } from '../constant';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp, SubDomain } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-subdomain';\nconst HIGHLIGHT_CLASSNAME = 'highlight';\n\nexport default class SubDomainPainter {\n calendar: CalHeatmap;\n\n root: any;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n }\n\n paint(root: any): void {\n this.root = root || this.root;\n const containerClassname = `${DEFAULT_SELECTOR}-container`;\n\n const subDomainSvgGroup = this.root\n .selectAll(containerClassname)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('svg')\n .call((selection: any) => this.#setPositions(selection))\n .attr('class', containerClassname.slice(1)),\n\n (update: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n update.call((selection: any) => this.#setPositions(selection)),\n );\n\n const {\n subDomain: {\n radius, width, height, sort,\n },\n } = this.calendar.options.options;\n const evt = this.calendar.eventEmitter;\n\n subDomainSvgGroup\n .selectAll('g')\n .data((d: Timestamp) => {\n const subDomainsCollection: SubDomain[] =\n this.calendar.domainCollection.get(d)!;\n if (sort === 'desc') {\n const max = Math.max(\n ...subDomainsCollection.map((s: SubDomain) => s.x),\n );\n subDomainsCollection.forEach((s: SubDomain, i: number) => {\n subDomainsCollection[i].x = Math.abs(s.x - max);\n });\n }\n\n return subDomainsCollection;\n })\n .join(\n (enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .insert('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .on('click', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('click', ev, d.t, d.v))\n .on('mouseover', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseover', ev, d.t, d.v))\n .on('mouseout', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseout', ev, d.t, d.v))\n .attr('rx', radius > 0 ? radius : null)\n .attr('ry', radius > 0 ? radius : null))\n .call((selection: any) => this.#appendText(selection)),\n (update: any) => update\n .selectAll('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .attr('rx', radius)\n .attr('ry', radius),\n );\n }\n\n /**\n * Set the subDomain group X and Y position\n * @param {d3-selection} selection A d3-selection object\n */\n #setPositions(selection: any): void {\n const { options } = this.calendar.options;\n const {\n padding,\n label: { position },\n } = options.domain;\n\n selection\n .attr('x', () => {\n let pos = padding[Position.LEFT];\n if (position === 'left') {\n pos += options.x.domainHorizontalLabelWidth;\n }\n return pos;\n })\n .attr('y', () => {\n let pos = padding[Position.TOP];\n if (position === 'top') {\n pos += options.x.domainVerticalLabelHeight;\n }\n return pos;\n });\n }\n\n /**\n * Return a classname if the specified date should be highlighted\n *\n * @param {number} timestamp Unix timestamp of the current subDomain\n * @return {String} the highlight class\n */\n #classname(timestamp: Timestamp, ...otherClasses: string[]): string {\n const {\n date: { highlight },\n subDomain: { type },\n } = this.calendar.options.options;\n let classname = '';\n\n if (highlight.length > 0) {\n highlight.forEach((d) => {\n const unitFn = this.calendar.templateCollection.get(type).extractUnit;\n\n if (unitFn(+d) === unitFn(timestamp)) {\n classname = HIGHLIGHT_CLASSNAME;\n }\n });\n }\n\n return [classname, ...otherClasses].join(' ').trim();\n }\n\n #appendText(elem: any) {\n const { width, height, label } = this.calendar.options.options.subDomain;\n\n if (!label) {\n return null;\n }\n\n return elem\n .append('text')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-text`))\n .attr('x', (d: SubDomain) => this.#getX(d) + width / 2)\n .attr('y', (d: SubDomain) => this.#getY(d) + height / 2)\n .attr('text-anchor', 'middle')\n .attr('dominant-baseline', 'central')\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.format(d.t, label, d.v, nodes[i]));\n }\n\n #getCoordinates(axis: 'x' | 'y', d: SubDomain): number {\n const { subDomain } = this.calendar.options.options;\n return (\n d[axis] *\n (subDomain[axis === 'x' ? 'width' : 'height'] + subDomain.gutter)\n );\n }\n\n #getX(d: SubDomain): number {\n return this.#getCoordinates('x', d);\n }\n\n #getY(d: SubDomain): number {\n return this.#getCoordinates('y', d);\n }\n}\n","import { select } from 'd3-selection';\nimport DomainPainter from './DomainPainter';\nimport DomainLabelPainter from './DomainLabelPainter';\nimport SubDomainPainter from '../subDomain/SubDomainPainter';\nimport { ScrollDirection } from '../constant';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Dimensions } from '../index';\n\nconst BASE_SELECTOR = '.ch-domain-container';\nconst TRANSITION_CLASSNAME = 'in-transition';\n\nclass DomainsContainerPainter {\n calendar: CalHeatmap;\n\n domainPainter: DomainPainter;\n\n domainLabelPainter: DomainLabelPainter;\n\n subDomainPainter: SubDomainPainter;\n\n dimensions: Dimensions;\n\n root: any;\n\n transitionsQueueCount: number;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n\n this.domainPainter = new DomainPainter(calendar);\n this.subDomainPainter = new SubDomainPainter(calendar);\n this.domainLabelPainter = new DomainLabelPainter(calendar);\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.transitionsQueueCount = 0;\n }\n\n setup() {\n this.root = this.calendar.calendarPainter.root\n .attr('x', 0)\n .attr('y', 0)\n .append('svg')\n .attr('class', BASE_SELECTOR.slice(1))\n .append('svg')\n .attr('class', `${BASE_SELECTOR.slice(1)}-animation-wrapper`);\n }\n\n paint(scrollDirection: ScrollDirection): Promise[] {\n this.#startAnimation();\n\n const result = this.domainPainter.paint(scrollDirection, this.root);\n this.subDomainPainter.paint(this.domainPainter.root);\n this.domainLabelPainter.paint(this.domainPainter.root);\n\n this.#recomputeDimensions();\n\n Promise.allSettled(result).then(() => {\n this.#endAnimation();\n });\n\n return result;\n }\n\n updatePosition() {\n if (!this.root?.node()) {\n return Promise.resolve();\n }\n\n const { animationDuration } = this.calendar.options.options;\n const topHeight = this.calendar.pluginManager.getHeightFromPosition('top');\n const leftWidth = this.calendar.pluginManager.getWidthFromPosition('left');\n\n return [\n select(this.root.node().parentNode)\n .transition()\n .duration(animationDuration)\n .call((selection: any) => {\n selection.attr('x', leftWidth).attr('y', topHeight);\n })\n .end(),\n ];\n }\n\n width(): Dimensions['width'] {\n return this.dimensions.width;\n }\n\n height(): Dimensions['height'] {\n return this.dimensions.height;\n }\n\n destroy(): Promise {\n this.#startAnimation();\n\n return Promise.resolve();\n }\n\n #startAnimation() {\n if (this.root?.node()) {\n this.transitionsQueueCount += 1;\n select(this.root.node().parentNode).classed(TRANSITION_CLASSNAME, true);\n }\n }\n\n #endAnimation() {\n if (this.root?.node()) {\n this.transitionsQueueCount -= 1;\n\n if (this.transitionsQueueCount === 0) {\n select(this.root.node().parentNode).classed(\n TRANSITION_CLASSNAME,\n false,\n );\n }\n }\n }\n\n #recomputeDimensions(): void {\n const {\n animationDuration,\n verticalOrientation,\n domain: { gutter },\n } = this.calendar.options.options;\n const { dimensions: domainsDimensions } = this.domainPainter;\n\n this.dimensions = {\n width: domainsDimensions.width - (verticalOrientation ? 0 : gutter),\n height: domainsDimensions.height - (!verticalOrientation ? 0 : gutter),\n };\n\n this.root\n .transition()\n .duration(animationDuration)\n .attr('width', this.dimensions.width)\n .attr('height', this.dimensions.height);\n }\n}\n\nexport default DomainsContainerPainter;\n","import type CalHeatmap from '../CalHeatmap';\n\nclass PluginPainter {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n paint(): Promise[] {\n let promises: Promise[] = [];\n\n promises = promises.concat(this.calendar.pluginManager.paintAll());\n promises = promises.concat(this.setPluginsPosition());\n\n return promises;\n }\n\n setPluginsPosition(): Promise[] {\n const { pluginManager } = this.calendar;\n const { animationDuration } = this.calendar.options.options;\n const { domainsContainerPainter } = this.calendar.calendarPainter;\n\n const top = pluginManager.getFromPosition('top');\n const right = pluginManager.getFromPosition('right');\n const bottom = pluginManager.getFromPosition('bottom');\n const left = pluginManager.getFromPosition('left');\n\n const topHeight = pluginManager.getHeightFromPosition('top');\n const leftWidth = pluginManager.getWidthFromPosition('left');\n\n const promises: Promise[] = [];\n\n let topOffset = 0;\n top.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('y', topOffset)\n .attr('x', leftWidth)\n .end(),\n );\n topOffset += plugin.options.dimensions!.height;\n });\n\n let leftOffset = 0;\n left.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftOffset)\n .attr('y', topHeight)\n .end(),\n );\n leftOffset += plugin.options.dimensions!.width;\n });\n\n bottom.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftWidth)\n .attr('y', topHeight + domainsContainerPainter.height())\n .end(),\n );\n });\n\n leftOffset += domainsContainerPainter.width();\n\n right.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftOffset)\n .attr('y', topHeight)\n .end(),\n );\n leftOffset += plugin.options.dimensions!.width;\n });\n\n return promises;\n }\n\n insideWidth() {\n return (\n this.calendar.pluginManager.getWidthFromPosition('left') +\n this.calendar.pluginManager.getWidthFromPosition('right')\n );\n }\n\n insideHeight() {\n return (\n this.calendar.pluginManager.getHeightFromPosition('top') +\n this.calendar.pluginManager.getHeightFromPosition('bottom')\n );\n }\n}\n\nexport default PluginPainter;\n","import { select } from 'd3-selection';\n\nimport DomainsContainerPainter from '../domain/DomainsContainerPainter';\nimport PluginPainter from '../plugins/PluginPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport { ScrollDirection } from '../constant';\nimport type { Dimensions } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-container';\n\nexport default class CalendarPainter {\n calendar: CalHeatmap;\n\n dimensions: Dimensions;\n\n root: any;\n\n domainsContainerPainter: DomainsContainerPainter;\n\n pluginPainter: PluginPainter;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.root = null;\n this.domainsContainerPainter = new DomainsContainerPainter(calendar);\n this.pluginPainter = new PluginPainter(calendar);\n }\n\n setup(): boolean {\n const { itemSelector, theme } = this.calendar.options.options;\n\n if (!this.root) {\n this.root = select(itemSelector)\n .append('svg')\n .attr('data-theme', theme)\n .attr('class', DEFAULT_SELECTOR.slice(1));\n this.domainsContainerPainter.setup();\n }\n\n this.calendar.pluginManager.setupAll();\n\n return true;\n }\n\n paint(navigationDir: ScrollDirection = ScrollDirection.SCROLL_NONE) {\n const transitions = this.domainsContainerPainter\n .paint(navigationDir)\n .concat(this.pluginPainter.paint())\n .concat(this.domainsContainerPainter.updatePosition());\n\n this.#resize();\n\n return Promise.allSettled(transitions);\n }\n\n #getHeight(): Dimensions['height'] {\n return (\n this.domainsContainerPainter.height() + this.pluginPainter.insideHeight()\n );\n }\n\n #getWidth(): Dimensions['width'] {\n return (\n this.domainsContainerPainter.width() + this.pluginPainter.insideWidth()\n );\n }\n\n #resize(): void {\n const { options } = this.calendar.options;\n\n const newWidth = this.#getWidth();\n const newHeight = this.#getHeight();\n\n this.root\n .transition()\n .duration(options.animationDuration)\n .attr('width', newWidth)\n .attr('height', newHeight);\n\n if (\n newWidth !== this.dimensions.width ||\n newHeight !== this.dimensions.height\n ) {\n this.calendar.eventEmitter.emit(\n 'resize',\n newWidth,\n newHeight,\n this.dimensions.width,\n this.dimensions.height,\n );\n }\n\n this.dimensions = {\n width: newWidth,\n height: newHeight,\n };\n }\n\n destroy(): Promise {\n const result: Promise[] = this.calendar.pluginManager\n .destroyAll()\n .concat(this.domainsContainerPainter.destroy());\n\n if (!this.root) {\n return Promise.allSettled(result);\n }\n\n result.push(\n this.root\n .transition()\n .duration(this.calendar.options.options.animationDuration)\n .attr('width', 0)\n .attr('height', 0)\n .remove()\n .end(),\n );\n\n return Promise.allSettled(result);\n }\n}\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nexport default freeGlobal;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nexport default root;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nexport default Symbol;\n","import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n","import Symbol from './_Symbol.js';\nimport getRawTag from './_getRawTag.js';\nimport objectToString from './_objectToString.js';\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nexport default baseGetTag;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isObject from './isObject.js';\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nexport default isFunction;\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-startswith -- safe\nvar nativeStartsWith = uncurryThis(''.startsWith);\nvar stringSlice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = toString(searchString);\n return nativeStartsWith\n ? nativeStartsWith(that, search, index)\n : stringSlice(that, index, index + search.length) === search;\n }\n});\n","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw new $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// in some IE versions, `propertyIsEnumerable` returns incorrect result on integer keys\n// of `null` prototype objects\nvar IE_BUG = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-create -- safe\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n});\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","// @ts-ignore\nimport { scale } from '@observablehq/plot';\nimport { OptionsType } from './options/Options';\nimport { SCALE_BASE_OPACITY_COLOR } from './constant';\n\nimport type { SubDomain } from './index';\n\ntype ValueType = string | number | undefined;\n\nexport function normalizedScale(scaleOptions: OptionsType['scale']): any {\n try {\n const scaleType = Object.keys(scaleOptions!)[0];\n\n return scale({\n [scaleType]: {\n ...scaleOptions![scaleType as 'color' | 'opacity'],\n clamp: true,\n },\n });\n } catch (error) {\n return null;\n }\n}\n\nfunction scaleStyle(_scale: any, scaleOptions: OptionsType['scale']) {\n const styles: { fill?: Function; 'fill-opacity'?: Function } = {};\n\n if (scaleOptions!.hasOwnProperty('opacity')) {\n styles.fill = () =>\n // eslint-disable-next-line implicit-arrow-linebreak\n scaleOptions!.opacity!.baseColor || SCALE_BASE_OPACITY_COLOR;\n styles['fill-opacity'] = (d: ValueType) => _scale?.apply(d);\n } else {\n styles.fill = (d: ValueType) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n (typeof d === 'string' && d?.startsWith('#') ? d : _scale?.apply(d));\n }\n\n return styles;\n}\n\nexport function applyScaleStyle(\n elem: any,\n _scale: any,\n scaleOptions: OptionsType['scale'],\n keyname?: string,\n) {\n Object.entries(scaleStyle(_scale, scaleOptions)).forEach(([prop, val]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n elem.style(prop, (d: SubDomain | string) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n val(keyname ? (d as SubDomain)[keyname as keyof SubDomain] : d)));\n}\n","import isFunction from 'lodash-es/isFunction';\nimport { hcl } from 'd3-color';\nimport { normalizedScale, applyScaleStyle } from '../scale';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { SubDomain, Timestamp } from '../index';\n\nexport default class Populator {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n populate(): void {\n const { calendar } = this;\n const { scale, subDomain } = calendar.options.options;\n const colorScale = normalizedScale(scale);\n\n calendar.calendarPainter\n .root!.selectAll('.ch-domain')\n .selectAll('svg')\n .selectAll('g')\n .data((d: Timestamp) => calendar.domainCollection.get(d) || [])\n .call((element: any) => {\n applyScaleStyle(element.select('rect'), colorScale, scale!, 'v');\n })\n .call((element: any) => {\n element\n .select('text')\n .attr('style', (d: SubDomain) => {\n const defaultColor =\n hcl(colorScale?.apply(d.v)).l > 60 ? '#000' : '#fff';\n let color = subDomain.color || (d.v ? defaultColor : null);\n\n if (isFunction(color)) {\n color = color(d.t, d.v, colorScale?.apply(d.v));\n }\n\n if (!color) {\n return null;\n }\n\n return `fill: ${color};`;\n })\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n calendar.dateHelper.format(d.t, subDomain.label, d.v, nodes[i]));\n })\n .call(() => {\n calendar.eventEmitter.emit('fill');\n });\n }\n}\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nexport default eq;\n","import eq from './eq.js';\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nexport default assocIndexOf;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nexport default listCacheDelete;\n","import listCacheClear from './_listCacheClear.js';\nimport listCacheDelete from './_listCacheDelete.js';\nimport listCacheGet from './_listCacheGet.js';\nimport listCacheHas from './_listCacheHas.js';\nimport listCacheSet from './_listCacheSet.js';\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nexport default ListCache;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nexport default listCacheClear;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nexport default listCacheGet;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nexport default listCacheHas;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nexport default listCacheSet;\n","import root from './_root.js';\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nexport default coreJsData;\n","import coreJsData from './_coreJsData.js';\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nexport default isMasked;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nexport default toSource;\n","import isFunction from './isFunction.js';\nimport isMasked from './_isMasked.js';\nimport isObject from './isObject.js';\nimport toSource from './_toSource.js';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nexport default baseIsNative;\n","import baseIsNative from './_baseIsNative.js';\nimport getValue from './_getValue.js';\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nexport default getNative;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nexport default getValue;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nexport default Map;\n","import getNative from './_getNative.js';\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nexport default nativeCreate;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nexport default hashGet;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nexport default hashHas;\n","import hashClear from './_hashClear.js';\nimport hashDelete from './_hashDelete.js';\nimport hashGet from './_hashGet.js';\nimport hashHas from './_hashHas.js';\nimport hashSet from './_hashSet.js';\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nexport default Hash;\n","import isKeyable from './_isKeyable.js';\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nexport default getMapData;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nexport default isKeyable;\n","import mapCacheClear from './_mapCacheClear.js';\nimport mapCacheDelete from './_mapCacheDelete.js';\nimport mapCacheGet from './_mapCacheGet.js';\nimport mapCacheHas from './_mapCacheHas.js';\nimport mapCacheSet from './_mapCacheSet.js';\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nexport default MapCache;\n","import nativeCreate from './_nativeCreate.js';\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nexport default hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default hashDelete;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nexport default hashSet;\n","import Hash from './_Hash.js';\nimport ListCache from './_ListCache.js';\nimport Map from './_Map.js';\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nexport default mapCacheClear;\n","import getMapData from './_getMapData.js';\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default mapCacheDelete;\n","import getMapData from './_getMapData.js';\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nexport default mapCacheGet;\n","import getMapData from './_getMapData.js';\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nexport default mapCacheHas;\n","import getMapData from './_getMapData.js';\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nexport default mapCacheSet;\n","import ListCache from './_ListCache.js';\nimport stackClear from './_stackClear.js';\nimport stackDelete from './_stackDelete.js';\nimport stackGet from './_stackGet.js';\nimport stackHas from './_stackHas.js';\nimport stackSet from './_stackSet.js';\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nexport default Stack;\n","import ListCache from './_ListCache.js';\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nexport default stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nexport default stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nexport default stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nexport default stackHas;\n","import ListCache from './_ListCache.js';\nimport Map from './_Map.js';\nimport MapCache from './_MapCache.js';\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nexport default stackSet;\n","import getNative from './_getNative.js';\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nexport default defineProperty;\n","import defineProperty from './_defineProperty.js';\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nexport default baseAssignValue;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignMergeValue;\n","import createBaseFor from './_createBaseFor.js';\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nexport default baseFor;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nexport default createBaseFor;\n","import root from './_root.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nexport default cloneBuffer;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nexport default Uint8Array;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nexport default cloneTypedArray;\n","import Uint8Array from './_Uint8Array.js';\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nexport default cloneArrayBuffer;\n","import isObject from './isObject.js';\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nexport default baseCreate;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nexport default overArg;\n","import overArg from './_overArg.js';\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nexport default getPrototype;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nexport default isPrototype;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nexport default isObjectLike;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nexport default baseIsArguments;\n","import baseIsArguments from './_baseIsArguments.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nexport default isArguments;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nexport default isLength;\n","import isFunction from './isFunction.js';\nimport isLength from './isLength.js';\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nexport default isArrayLike;\n","import root from './_root.js';\nimport stubFalse from './stubFalse.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nexport default isBuffer;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nexport default stubFalse;\n","import baseGetTag from './_baseGetTag.js';\nimport getPrototype from './_getPrototype.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nexport default isPlainObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isLength from './isLength.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nexport default baseIsTypedArray;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nexport default nodeUtil;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nexport default baseUnary;\n","import baseIsTypedArray from './_baseIsTypedArray.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nexport default isTypedArray;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nexport default safeGet;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignValue;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nexport default isIndex;\n","import baseTimes from './_baseTimes.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isIndex from './_isIndex.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default arrayLikeKeys;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nexport default baseTimes;\n","import isObject from './isObject.js';\nimport isPrototype from './_isPrototype.js';\nimport nativeKeysIn from './_nativeKeysIn.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeysIn;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default nativeKeysIn;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeysIn from './_baseKeysIn.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nexport default keysIn;\n","import copyObject from './_copyObject.js';\nimport keysIn from './keysIn.js';\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nexport default toPlainObject;\n","import assignValue from './_assignValue.js';\nimport baseAssignValue from './_baseAssignValue.js';\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nexport default copyObject;\n","import assignMergeValue from './_assignMergeValue.js';\nimport cloneBuffer from './_cloneBuffer.js';\nimport cloneTypedArray from './_cloneTypedArray.js';\nimport copyArray from './_copyArray.js';\nimport initCloneObject from './_initCloneObject.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isArrayLikeObject from './isArrayLikeObject.js';\nimport isBuffer from './isBuffer.js';\nimport isFunction from './isFunction.js';\nimport isObject from './isObject.js';\nimport isPlainObject from './isPlainObject.js';\nimport isTypedArray from './isTypedArray.js';\nimport safeGet from './_safeGet.js';\nimport toPlainObject from './toPlainObject.js';\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\nexport default baseMergeDeep;\n","import isArrayLike from './isArrayLike.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nexport default isArrayLikeObject;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nexport default copyArray;\n","import baseCreate from './_baseCreate.js';\nimport getPrototype from './_getPrototype.js';\nimport isPrototype from './_isPrototype.js';\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nexport default initCloneObject;\n","import Stack from './_Stack.js';\nimport assignMergeValue from './_assignMergeValue.js';\nimport baseFor from './_baseFor.js';\nimport baseMergeDeep from './_baseMergeDeep.js';\nimport isObject from './isObject.js';\nimport keysIn from './keysIn.js';\nimport safeGet from './_safeGet.js';\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\nexport default baseMerge;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nexport default identity;\n","import apply from './_apply.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nexport default overRest;\n","import constant from './constant.js';\nimport defineProperty from './_defineProperty.js';\nimport identity from './identity.js';\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nexport default baseSetToString;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nexport default constant;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nexport default shortOut;\n","import baseSetToString from './_baseSetToString.js';\nimport shortOut from './_shortOut.js';\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nexport default setToString;\n","import identity from './identity.js';\nimport overRest from './_overRest.js';\nimport setToString from './_setToString.js';\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\nexport default baseRest;\n","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nexport default apply;\n","import baseMerge from './_baseMerge.js';\nimport createAssigner from './_createAssigner.js';\n\n/**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\nvar mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n});\n\nexport default mergeWith;\n","import baseRest from './_baseRest.js';\nimport isIterateeCall from './_isIterateeCall.js';\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nexport default createAssigner;\n","import eq from './eq.js';\nimport isArrayLike from './isArrayLike.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nexport default isIterateeCall;\n","import MapCache from './_MapCache.js';\nimport setCacheAdd from './_setCacheAdd.js';\nimport setCacheHas from './_setCacheHas.js';\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nexport default SetCache;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nexport default arraySome;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nexport default setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nexport default setCacheHas;\n","import SetCache from './_SetCache.js';\nimport arraySome from './_arraySome.js';\nimport cacheHas from './_cacheHas.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nexport default equalArrays;\n","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nexport default cacheHas;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nexport default mapToArray;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nexport default setToArray;\n","import Symbol from './_Symbol.js';\nimport Uint8Array from './_Uint8Array.js';\nimport eq from './eq.js';\nimport equalArrays from './_equalArrays.js';\nimport mapToArray from './_mapToArray.js';\nimport setToArray from './_setToArray.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nexport default equalByTag;\n","import arrayFilter from './_arrayFilter.js';\nimport stubArray from './stubArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nexport default getSymbols;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nexport default arrayFilter;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nexport default stubArray;\n","import overArg from './_overArg.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nexport default nativeKeys;\n","import isPrototype from './_isPrototype.js';\nimport nativeKeys from './_nativeKeys.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeys;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeys from './_baseKeys.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nexport default keys;\n","import baseGetAllKeys from './_baseGetAllKeys.js';\nimport getSymbols from './_getSymbols.js';\nimport keys from './keys.js';\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nexport default getAllKeys;\n","import arrayPush from './_arrayPush.js';\nimport isArray from './isArray.js';\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nexport default baseGetAllKeys;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nexport default arrayPush;\n","import getAllKeys from './_getAllKeys.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nexport default equalObjects;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nexport default DataView;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nexport default Promise;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nexport default Set;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nexport default WeakMap;\n","import DataView from './_DataView.js';\nimport Map from './_Map.js';\nimport Promise from './_Promise.js';\nimport Set from './_Set.js';\nimport WeakMap from './_WeakMap.js';\nimport baseGetTag from './_baseGetTag.js';\nimport toSource from './_toSource.js';\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nexport default getTag;\n","import Stack from './_Stack.js';\nimport equalArrays from './_equalArrays.js';\nimport equalByTag from './_equalByTag.js';\nimport equalObjects from './_equalObjects.js';\nimport getTag from './_getTag.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nexport default baseIsEqualDeep;\n","import baseIsEqualDeep from './_baseIsEqualDeep.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nexport default baseIsEqual;\n","import baseIsEqual from './_baseIsEqual.js';\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nexport default isEqual;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n}\n\nexport default baseHas;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","import isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nexport default isKey;\n","import MapCache from './_MapCache.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nexport default memoize;\n","import memoizeCapped from './_memoizeCapped.js';\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nexport default stringToPath;\n","import memoize from './memoize.js';\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nexport default memoizeCapped;\n","import Symbol from './_Symbol.js';\nimport arrayMap from './_arrayMap.js';\nimport isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default baseToString;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nexport default arrayMap;\n","import isArray from './isArray.js';\nimport isKey from './_isKey.js';\nimport stringToPath from './_stringToPath.js';\nimport toString from './toString.js';\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nexport default castPath;\n","import baseToString from './_baseToString.js';\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nexport default toString;\n","import isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default toKey;\n","import baseHas from './_baseHas.js';\nimport hasPath from './_hasPath.js';\n\n/**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\nfunction has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n}\n\nexport default has;\n","import castPath from './_castPath.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isIndex from './_isIndex.js';\nimport isLength from './isLength.js';\nimport toKey from './_toKey.js';\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n}\n\nexport default hasPath;\n","import baseGet from './_baseGet.js';\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nexport default get;\n","import castPath from './_castPath.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\nexport default baseGet;\n","import baseSet from './_baseSet.js';\n\n/**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\nfunction set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n}\n\nexport default set;\n","import assignValue from './_assignValue.js';\nimport castPath from './_castPath.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\nfunction baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n}\n\nexport default baseSet;\n","import castArray from 'lodash-es/castArray';\nimport isFunction from 'lodash-es/isFunction';\nimport isString from 'lodash-es/isString';\nimport type { SubDomainOptions } from './Options';\n\nexport default {\n range: (value: number): number => Math.max(+value, 1),\n 'date.highlight': (args: Date[] | Date): Date[] => castArray(args),\n 'subDomain.label': (\n value: SubDomainOptions['label'],\n ): string | Function | null =>\n // eslint-disable-next-line\n ((isString(value) && value !== '') || isFunction(value) ? value : null),\n};\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","import baseGetTag from './_baseGetTag.js';\nimport isArray from './isArray.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar stringTag = '[object String]';\n\n/**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\nfunction isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n}\n\nexport default isString;\n","import mergeWith from 'lodash-es/mergeWith';\nimport isEqual from 'lodash-es/isEqual';\nimport has from 'lodash-es/has';\nimport get from 'lodash-es/get';\nimport set from 'lodash-es/set';\nimport type { Ls } from 'dayjs';\nimport type { DomainType, Timestamp } from '../index';\nimport {\n OPTIONS_DEFAULT_DOMAIN_TYPE,\n OPTIONS_DEFAULT_SUBDOMAIN_TYPE,\n OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n OPTIONS_DEFAULT_THEME,\n OPTIONS_DEFAULT_ANIMATION_DURATION,\n OPTIONS_DEFAULT_ITEM_SELECTOR,\n OPTIONS_DEFAULT_RANGE,\n SCALE_BASE_COLOR_SCHEME,\n SCALE_BASE_COLOR_TYPE,\n SCALE_BASE_COLOR_DOMAIN,\n OPTIONS_DEFAULT_LOCALE,\n} from '../constant';\n\nimport OptionsPreProcessors from './OptionsPreProcessors';\n\ntype SortOrder = 'asc' | 'desc';\nexport type TextAlign = 'start' | 'middle' | 'end';\nexport type Padding = [number, number, number, number];\n\nexport type DomainOptions = {\n type: DomainType;\n gutter: number;\n padding: Padding;\n dynamicDimension: boolean;\n label: LabelOptions;\n sort: SortOrder;\n};\n\ntype LabelOptions = {\n text?:\n | string\n | null\n | ((timestamp: Timestamp, element: SVGElement) => string);\n position: 'top' | 'right' | 'bottom' | 'left';\n textAlign: TextAlign;\n offset: {\n x: number;\n y: number;\n };\n rotate: null | 'left' | 'right';\n width: number;\n height: number;\n};\n\nexport type SubDomainOptions = {\n type: string;\n width: number;\n height: number;\n gutter: number;\n radius: number;\n label:\n | string\n | null\n | ((timestamp: Timestamp, value: number, element: SVGElement) => string);\n color?:\n | string\n | ((\n timestamp: Timestamp,\n value: number | string | null | undefined,\n backgroundColor: string,\n ) => string);\n sort: SortOrder;\n};\n\nexport type DataGroupType = 'sum' | 'count' | 'min' | 'max' | 'average';\n\ntype DateOptions = {\n start: Date;\n min?: Date;\n max?: Date;\n highlight: Date[];\n locale: string | Partial<(typeof Ls)[0]>;\n timezone?: string;\n};\n\nexport type DataRecord = Record;\nexport type DataOptions = {\n source: string | DataRecord[];\n type: 'json' | 'csv' | 'tsv' | 'txt';\n requestInit: object;\n x: string | ((datum: DataRecord) => number);\n y: string | ((datum: DataRecord) => number);\n groupY:\n | DataGroupType\n | ((values: (string | number | null)[]) => string | number | null);\n defaultValue: null | number | string;\n};\n\ntype ScaleOptions = {\n opacity?: {\n domain: number[];\n type?: string;\n baseColor: string;\n };\n color?: {\n domain: number[];\n scheme?: string;\n range?: string[];\n interpolate?: any;\n type?: string;\n };\n};\n\nexport type OptionsType = {\n itemSelector: string;\n range: number;\n domain: DomainOptions;\n subDomain: SubDomainOptions;\n date: DateOptions;\n data: DataOptions;\n scale?: ScaleOptions;\n animationDuration: number;\n verticalOrientation: boolean;\n theme: 'light' | 'dark';\n};\n\ntype InternalOptionsType = {\n x: {\n domainHorizontalLabelWidth: number;\n domainVerticalLabelHeight: number;\n };\n};\n\nexport default class Options {\n options: OptionsType & InternalOptionsType;\n\n preProcessors: {\n [key: string]: (value: any) => any;\n };\n\n constructor(processors = OptionsPreProcessors) {\n this.preProcessors = processors;\n\n this.options = {\n // selector string of the container to append the graph to\n // Accept any string value accepted by document.querySelector or CSS3\n // or an Element object\n itemSelector: OPTIONS_DEFAULT_ITEM_SELECTOR,\n\n // Number of domain to display on the graph\n range: OPTIONS_DEFAULT_RANGE,\n\n domain: {\n type: OPTIONS_DEFAULT_DOMAIN_TYPE,\n\n // Space between each domain, in pixel\n gutter: 4,\n\n padding: [0, 0, 0, 0],\n\n // Whether to enable dynamic domain size\n // The width/height on a domain depends on the number of\n // subDomains items count\n dynamicDimension: true,\n\n // Whether to show most recent date first\n sort: 'asc',\n\n label: {\n // Formatting of the domain label\n // @default: undefined, will use the formatting\n // according to domain type\n // Accept any string accepted by dayjs.format()\n // or a function\n //\n // Refer to https://day.js.org/docs/en/display/format\n // for list of accepted string tokens used by dayjs.format()\n text: undefined,\n\n // valid: top, right, bottom, left\n position: 'bottom',\n\n // Valid are the direct svg values: start, middle, end\n textAlign: 'middle',\n\n // By default, there is no margin/padding around the label\n offset: {\n x: 0,\n y: 0,\n },\n\n rotate: null,\n\n // Used only on vertical orientation\n width: 100,\n\n // Used only on horizontal orientation\n height: 25,\n },\n },\n\n subDomain: {\n type: OPTIONS_DEFAULT_SUBDOMAIN_TYPE,\n\n // Width of each subDomain cell, in pixel\n width: OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n\n // Height of each subDomain cell, in pixel\n height: OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n\n // Space between each subDomain cell, in pixel\n gutter: OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n\n // Radius of each subDomain cell, in pixel\n radius: OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n\n // Formatting of the text inside each subDomain cell\n // @default: null, no text\n // Accept any string accepted by dayjs.format()\n // or a function\n //\n // Refer to https://day.js.org/docs/en/display/format\n // for list of accepted string tokens used by dayjs.format()\n label: null,\n\n color: undefined,\n\n sort: 'asc',\n },\n\n date: {\n // Start date of the graph\n // @default now\n start: new Date(),\n\n min: undefined,\n\n max: undefined,\n\n // List of dates to highlight\n // Valid values:\n // - []: don't highlight anything\n // - an array of Date objects: highlight the specified dates\n highlight: [],\n\n locale: OPTIONS_DEFAULT_LOCALE,\n\n timezone: undefined,\n },\n\n // Calendar orientation\n // false: display domains side by side\n // true : display domains one under the other\n verticalOrientation: false,\n\n data: {\n // Data source\n // URL, where to fetch the original datas\n source: '',\n\n // Data type\n // Default: json\n type: 'json',\n\n requestInit: {},\n\n // keyname of the time property\n x: '',\n\n // keyname of the value property\n y: '',\n\n // Grouping function of the values\n groupY: 'sum',\n\n defaultValue: null,\n },\n\n scale: undefined,\n\n // Animation duration, in ms\n animationDuration: OPTIONS_DEFAULT_ANIMATION_DURATION,\n\n // Theme mode: dark/light\n theme: OPTIONS_DEFAULT_THEME,\n\n // Internally used options, do not edit not set\n x: {\n domainHorizontalLabelWidth: 0,\n domainVerticalLabelHeight: 0,\n },\n };\n }\n\n /**\n * Set a new value for an option, only if unchanged\n * @param {string} key Name of the option\n * @param {any} value Value of the option\n * @return {boolean} Whether the option have been changed\n */\n set(key: string, value: any): boolean {\n if (!has(this.options, key) || isEqual(get(this.options, key), value)) {\n return false;\n }\n\n set(\n this.options,\n key,\n has(this.preProcessors, key) ?\n get(this.preProcessors, key)(value) :\n value,\n );\n\n return true;\n }\n\n init(opts?: CalHeatmap.DeepPartial): void {\n this.options = {\n // eslint-disable-next-line arrow-body-style\n ...mergeWith(this.options, opts, (_, srcValue) => {\n return Array.isArray(srcValue) ? srcValue : undefined;\n }),\n };\n\n const { options } = this;\n\n Object.keys(this.preProcessors).forEach((key) => {\n set(options, key, get(this.preProcessors, key)(get(options, key)));\n });\n\n if (typeof options.scale === 'undefined') {\n this.initScale();\n }\n\n options.x.domainVerticalLabelHeight = options.domain.label.height;\n\n // When the label is affecting the height\n if (\n options.domain.label.position === 'top' ||\n options.domain.label.position === 'bottom'\n ) {\n options.x.domainHorizontalLabelWidth = 0;\n } else {\n options.x.domainVerticalLabelHeight = 0;\n options.x.domainHorizontalLabelWidth = options.domain.label.width;\n }\n\n if (\n options.domain.label.text === null ||\n options.domain.label.text === ''\n ) {\n options.x.domainVerticalLabelHeight = 0;\n options.x.domainHorizontalLabelWidth = 0;\n }\n }\n\n initScale() {\n this.options.scale = {\n color: {\n scheme: SCALE_BASE_COLOR_SCHEME,\n type: SCALE_BASE_COLOR_TYPE,\n domain: SCALE_BASE_COLOR_DOMAIN,\n },\n };\n }\n}\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') !== null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') !== null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.test('\\n') && re.flags === 's');\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) !== 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () {\n execCalled = true;\n return null;\n };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n// eslint-disable-next-line redos/no-vulnerable -- safe\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw new $TypeError('RegExp#exec called on incompatible receiver');\n};\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n var fullUnicode;\n if (global) {\n fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n\n var results = [];\n var result;\n while (true) {\n result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n var replacement;\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","import {\n json, csv, dsv, text,\n} from 'd3-fetch';\n\nimport type { DataOptions, DataRecord } from './options/Options';\nimport type { Timestamp } from './index';\nimport type CalHeatmap from './CalHeatmap';\n\nexport default class DataFetcher {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n /**\n * Fetch and interpret data from the datasource\n *\n * @param {string|object} source\n * @param {number} startTimestamp\n * @param {number} endTimestamp\n *\n * @return {Promize} A promise, that will return the final data when resolved\n */\n async getDatas(\n source: DataOptions['source'],\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): Promise {\n if (typeof source === 'string' && source.length > 0) {\n return this.#fetch(source, startTimestamp, endTimestamp);\n }\n\n let d: DataRecord[] = [];\n if (Array.isArray(source)) {\n d = source;\n }\n\n return new Promise((resolve) => {\n resolve(d);\n });\n }\n\n parseURI(\n str: string,\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): string {\n let newUri = str.replace(/\\{\\{start=(.*?)\\}\\}/g, (_, format) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.date(startTimestamp).format(format));\n newUri = newUri.replace(/\\{\\{end=(.*?)\\}\\}/g, (_, format) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.date(endTimestamp).format(format));\n\n return newUri;\n }\n\n #fetch(\n source: DataOptions['source'],\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): Promise {\n const { type, requestInit } = this.calendar.options.options.data;\n\n const url = this.parseURI(source as string, startTimestamp, endTimestamp);\n\n switch (type) {\n case 'json':\n return json(url, requestInit);\n case 'csv':\n return csv(url, requestInit);\n case 'tsv':\n return dsv('\\t', url, requestInit);\n case 'txt':\n return text(url, requestInit);\n default:\n return new Promise((resolve) => {\n resolve([]);\n });\n }\n }\n}\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,\"millisecond\"),o=this.diff(a,e,!0);return o<0?r(this).startOf(\"week\").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_dayOfYear=t()}(this,(function(){\"use strict\";return function(e,t,n){t.prototype.dayOfYear=function(e){var t=Math.round((n(this).startOf(\"day\")-n(this).startOf(\"year\"))/864e5)+1;return null==e?t:this.add(e-t,\"day\")}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_weekday=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.weekday=function(e){var t=this.$locale().weekStart||0,i=this.$W,n=(i0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i4&&(o+=7),n.add(o,e));return r.diff(u,\"week\")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return\"isoweek\"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf(\"day\"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf(\"day\"):n.bind(this)(e,t)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isLeapYear=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_advancedFormat=t()}(this,(function(){\"use strict\";return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||\"YYYY-MM-DDTHH:mm:ssZ\").replace(/\\[([^\\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case\"Q\":return Math.ceil((t.$M+1)/3);case\"Do\":return r.ordinal(t.$D);case\"gggg\":return t.weekYear();case\"GGGG\":return t.isoWeekYear();case\"wo\":return r.ordinal(t.week(),\"W\");case\"w\":case\"ww\":return s.s(t.week(),\"w\"===e?1:2,\"0\");case\"W\":case\"WW\":return s.s(t.isoWeek(),\"W\"===e?1:2,\"0\");case\"k\":case\"kk\":return s.s(String(0===t.$H?24:t.$H),\"k\"===e?1:2,\"0\");case\"X\":return Math.floor(t.$d.getTime()/1e3);case\"x\":return t.$d.getTime();case\"z\":return\"[\"+t.offsetName()+\"]\";case\"zzz\":return\"[\"+t.offsetName(\"long\")+\"]\";default:return e}}));return n.bind(this)(a)}}}));","!function(t,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_utc=i()}(this,(function(){\"use strict\";var t=\"minute\",i=/[+-]\\d\\d(?::?\\d\\d)?/g,e=/([+-]|\\d\\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t)};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else r.call(this)};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if(\"string\"==typeof s&&(s=function(t){void 0===t&&(t=\"\");var s=t.match(i);if(!s)return null;var f=(\"\"+s[0]).match(e)||[\"-\",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:\"+\"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?\"YYYY-MM-DDTHH:mm:ss[Z]\":\"\");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return\"s\"===t&&this.$offset?n(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)}}}));","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_timezone=e()}(this,(function(){\"use strict\";var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||\"short\",o=t+\"|\"+i,r=e[o];return r||(r=new Intl.DateTimeFormat(\"en-US\",{hour12:!1,timeZone:t,year:\"numeric\",month:\"2-digit\",day:\"2-digit\",hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u=0&&(r[c]=parseInt(m,10))}var d=r[3],l=24===d?0:d,h=r[0]+\"-\"+r[1]+\"-\"+r[2]+\" \"+l+\":\"+r[4]+\":\"+r[5]+\":000\",v=+e;return(o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString(\"en-US\",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set(\"millisecond\",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,\"minute\")}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return\"timezonename\"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if(\"string\"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return[i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t}}}));","!function(n,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(n=\"undefined\"!=typeof globalThis?globalThis:n||self).dayjs_plugin_localeData=e()}(this,(function(){\"use strict\";return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return{months:function(e){return e?e.format(\"MMMM\"):u(n,\"months\")},monthsShort:function(e){return e?e.format(\"MMM\"):u(n,\"monthsShort\",\"months\",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format(\"dddd\"):u(n,\"weekdays\")},weekdaysMin:function(e){return e?e.format(\"dd\"):u(n,\"weekdaysMin\",\"weekdays\",2)},weekdaysShort:function(e){return e?e.format(\"ddd\"):u(n,\"weekdaysShort\",\"weekdays\",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return{firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),\"months\")},t.monthsShort=function(){return u(i(),\"monthsShort\",\"months\",3)},t.weekdays=function(n){return u(i(),\"weekdays\",null,null,n)},t.weekdaysShort=function(n){return u(i(),\"weekdaysShort\",\"weekdays\",3,n)},t.weekdaysMin=function(n){return u(i(),\"weekdaysMin\",\"weekdays\",2,n)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_localizedFormat=t()}(this,(function(){\"use strict\";var e={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t=\"YYYY-MM-DDTHH:mm:ssZ\");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)}}}));","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_updateLocale=n()}(this,(function(){\"use strict\";return function(e,n,t){t.updateLocale=function(e,n){var o=t.Ls[e];if(o)return(n?Object.keys(n):[]).forEach((function(e){o[e]=n[e]})),o}}}));","import dayjs from 'dayjs';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport dayOfYear from 'dayjs/plugin/dayOfYear';\nimport weekday from 'dayjs/plugin/weekday';\nimport minMax from 'dayjs/plugin/minMax';\nimport isoWeeksInYear from 'dayjs/plugin/isoWeeksInYear';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport isLeapYear from 'dayjs/plugin/isLeapYear';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\nimport localeData from 'dayjs/plugin/localeData';\nimport localizedFormat from 'dayjs/plugin/localizedFormat';\nimport updateLocale from 'dayjs/plugin/updateLocale';\n\nimport type { ManipulateType, PluginFunc, Ls } from 'dayjs';\nimport type { OptionsType } from '../options/Options';\nimport type { Timestamp, DomainType } from '../index';\n\ndayjs.extend(weekOfYear);\ndayjs.extend(isoWeeksInYear);\ndayjs.extend(isoWeek);\ndayjs.extend(isLeapYear);\ndayjs.extend(dayOfYear);\ndayjs.extend(weekday);\ndayjs.extend(minMax);\ndayjs.extend(advancedFormat);\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(localeData);\ndayjs.extend(localizedFormat);\ndayjs.extend(updateLocale);\n\nconst DEFAULT_LOCALE = 'en';\n\nexport default class DateHelper {\n locale: OptionsType['date']['locale'];\n\n timezone: string;\n\n constructor() {\n this.locale = DEFAULT_LOCALE;\n this.timezone = dayjs.tz.guess();\n if (typeof window === 'object') {\n (window as any).dayjs ||= dayjs;\n }\n }\n\n async setup({ options }: { options: OptionsType }) {\n this.timezone = options.date.timezone || dayjs.tz.guess();\n const userLocale = options.date.locale;\n\n if (typeof userLocale === 'string' && userLocale !== DEFAULT_LOCALE) {\n let locale;\n if (typeof window === 'object') {\n locale =\n (window as any)[`dayjs_locale_${userLocale}`] ||\n (await this.loadBrowserLocale(userLocale));\n } else {\n locale = await this.loadNodeLocale(userLocale);\n }\n dayjs.locale(userLocale);\n this.locale = locale;\n }\n\n if (typeof userLocale === 'object') {\n if (userLocale.hasOwnProperty('name')) {\n dayjs.locale(userLocale.name, userLocale);\n this.locale = userLocale;\n } else {\n this.locale = dayjs.updateLocale(DEFAULT_LOCALE, userLocale);\n }\n }\n }\n\n // eslint-disable-next-line class-methods-use-this\n extend(dayjsPlugin: PluginFunc): dayjs.Dayjs {\n return dayjs.extend(dayjsPlugin);\n }\n\n /**\n * Return the week number, relative to its month\n *\n * @param {number|Date} d Date or timestamp in milliseconds\n * @returns {number} The week number, relative to the month [0-5]\n */\n getMonthWeekNumber(d: Timestamp | dayjs.Dayjs): number {\n const dayjsDate = this.date(d);\n const date = dayjsDate.startOf('day');\n const endOfWeek = dayjsDate.startOf('month').endOf('week');\n\n if (date <= endOfWeek) {\n return 1;\n }\n return Math.ceil(date.diff(endOfWeek, 'weeks', true)) + 1;\n }\n\n /**\n * Return the number of weeks in the given month\n *\n * As there is no fixed standard to specify which month a partial week should\n * belongs to, the ISO week date standard is used, where:\n * - the first week of the month should have at least 4 days\n *\n * @see https://en.wikipedia.org/wiki/ISO_week_date\n *\n * @param {Timestamp | dayjs.Dayjs} d Datejs object or timestamp\n * @return {number} The number of weeks\n */\n getWeeksCountInMonth(d: Timestamp | dayjs.Dayjs): number {\n const pivotDate = this.date(d);\n\n return (\n this.getLastWeekOfMonth(pivotDate).diff(\n this.getFirstWeekOfMonth(pivotDate),\n 'week',\n ) + 1\n );\n }\n\n /**\n * Return the start of the first week of the month\n *\n * @see getWeeksCountInMonth() about standard warning\n * @return {dayjs.Dayjs} A dayjs object representing the start of the\n * first week\n */\n getFirstWeekOfMonth(d: Timestamp | dayjs.Dayjs): dayjs.Dayjs {\n const startOfMonth = this.date(d).startOf('month');\n let startOfFirstWeek = startOfMonth.startOf('week');\n if (startOfMonth.weekday() > 4) {\n startOfFirstWeek = startOfFirstWeek.add(1, 'week');\n }\n\n return startOfFirstWeek;\n }\n\n /**\n * Return the end of the last week of the month\n *\n * @see getWeeksCountInMonth() about standard warning\n * @return {dayjs.Dayjs} A dayjs object representing the end of the last week\n */\n getLastWeekOfMonth(d: Timestamp | dayjs.Dayjs): dayjs.Dayjs {\n const endOfMonth = this.date(d).endOf('month');\n let endOfLastWeek = endOfMonth.endOf('week');\n if (endOfMonth.weekday() < 4) {\n endOfLastWeek = endOfLastWeek.subtract(1, 'week');\n }\n\n return endOfLastWeek;\n }\n\n date(d: Timestamp | Date | dayjs.Dayjs | string = new Date()): dayjs.Dayjs {\n if (dayjs.isDayjs(d)) {\n return d;\n }\n\n return dayjs(d)\n .tz(this.timezone)\n .utcOffset(0)\n .locale(this.locale as (typeof Ls)[0] | string);\n }\n\n format(\n timestamp: Timestamp,\n formatter: null | string | Function,\n ...args: any\n ): string | null {\n if (typeof formatter === 'function') {\n return formatter(timestamp, ...args);\n }\n\n if (typeof formatter === 'string') {\n return this.date(timestamp).format(formatter);\n }\n\n return null;\n }\n\n /**\n * Return an array of time interval\n *\n * @param {number|Date} date A random date included in the wanted interval\n * @param {number|Date} range Length of the wanted interval, or a stop date.\n * @param {boolean} range Whether the end date should be excluded\n * from the result\n * @returns {Array} Array of unix timestamp, in milliseconds\n */\n intervals(\n interval: DomainType,\n date: Timestamp | Date | dayjs.Dayjs,\n range: number | Date | dayjs.Dayjs,\n excludeEnd: boolean = true,\n ): Timestamp[] {\n let start = this.date(date);\n let end: dayjs.Dayjs;\n if (typeof range === 'number') {\n end = start.add(range, interval as ManipulateType);\n } else if (dayjs.isDayjs(range)) {\n end = range;\n } else {\n end = this.date(range);\n }\n\n start = start.startOf(interval as ManipulateType);\n\n end = end.startOf(interval as ManipulateType);\n let pivot = dayjs.min(start, end)!;\n end = dayjs.max(start, end)!;\n const result: Timestamp[] = [];\n\n if (!excludeEnd) {\n end = end.add(1, 'second');\n }\n\n do {\n result.push(+pivot);\n pivot = pivot.add(1, interval as ManipulateType);\n } while (pivot < end);\n\n return result;\n }\n\n // this function will work cross-browser for loading scripts asynchronously\n // eslint-disable-next-line class-methods-use-this\n loadBrowserLocale(userLocale: string): Promise {\n return new Promise((resolve, reject) => {\n const s = document.createElement('script');\n s.type = 'text/javascript';\n s.async = true;\n s.src = `https://cdn.jsdelivr.net/npm/dayjs@1/locale/${userLocale}.js`;\n s.onerror = (err) => {\n reject(err);\n };\n s.onload = () => {\n resolve((window as any)[`dayjs_locale_${userLocale}`]);\n };\n document.head.appendChild(s);\n });\n }\n\n // eslint-disable-next-line class-methods-use-this\n loadNodeLocale(userLocale: string): Promise {\n return import(`dayjs/locale/${userLocale}.js`);\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\nvar stringIndexOf = uncurryThis(''.indexOf);\n\n// `String.prototype.includes` method\n// https://tc39.es/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~stringIndexOf(\n toString(requireObjectCoercible(this)),\n toString(notARegExp(searchString)),\n arguments.length > 1 ? arguments[1] : undefined\n );\n }\n});\n","import type TemplateCollection from '../TemplateCollection';\nimport type { DomainOptions, SubDomainOptions, DataOptions } from './Options';\nimport type { DomainType } from '../index';\n\nconst ALLOWED_DATA_TYPES = ['json', 'csv', 'tsv', 'txt'];\n\n/**\n * Ensure that critical options are valid\n *\n * @throw {Error} on critical invalid options\n * @return {boolean} Returns true when there is not critical errors\n */\nexport default function validate(\n templateCollection: TemplateCollection,\n {\n domain,\n subDomain,\n data,\n }: {\n domain: Partial;\n subDomain: Partial;\n data: Partial;\n },\n): boolean {\n const domainType = domain.type as DomainType;\n const subDomainType = subDomain.type as string;\n\n if (!templateCollection.has(domainType)) {\n throw new Error(`'${domainType}' is not a valid domain type'`);\n }\n\n if (!templateCollection.has(subDomainType)) {\n throw new Error(`'${subDomainType}' is not a valid subDomain type'`);\n }\n\n if (data.type && !ALLOWED_DATA_TYPES.includes(data.type)) {\n throw new Error(`The data type '${data.type}' is not valid data type`);\n }\n\n if (\n !(templateCollection.get(subDomainType).allowedDomainType || []).includes(\n domainType,\n )\n ) {\n throw new Error(\n `The subDomain.type '${subDomainType}' can not be used together ` +\n `with the domain type ${domainType}`,\n );\n }\n\n return true;\n}\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Set` constructor\n// https://tc39.es/ecma262/#sec-set-objects\ncollection('Set', function (init) {\n return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","import isEqual from 'lodash-es/isEqual';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport {\n PluginDefinition,\n PluginOptions,\n IPluginContructor,\n IPlugin,\n} from '../index';\n\ntype PluginSetting = {\n options?: PluginOptions;\n dirty: boolean;\n};\n\nfunction createPlugin(\n Creator: IPluginContructor,\n calendar: CalHeatmap,\n): IPlugin {\n return new Creator(calendar);\n}\n\nfunction extractPluginName(\n PluginClass: IPluginContructor,\n options?: PluginOptions,\n): string {\n return `${new PluginClass().name}${options?.key || ''}`;\n}\n\nexport default class PluginManager {\n calendar: CalHeatmap;\n\n settings: Map;\n\n plugins: Map;\n\n pendingPaint: Set;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.settings = new Map();\n this.plugins = new Map();\n this.pendingPaint = new Set();\n }\n\n add(plugins: PluginDefinition[]): void {\n plugins.forEach(([PluginClass, pluginOptions]) => {\n const name = extractPluginName(PluginClass, pluginOptions);\n\n const existingPlugin = this.plugins.get(name);\n\n if (\n existingPlugin &&\n this.settings.get(name) &&\n isEqual(this.settings.get(name)!.options, pluginOptions)\n ) {\n return;\n }\n\n this.settings.set(name, {\n options: pluginOptions,\n dirty: true,\n });\n\n if (!this.plugins.has(name)) {\n this.plugins.set(name, createPlugin(PluginClass, this.calendar));\n }\n\n this.pendingPaint.add(this.plugins.get(name)!);\n });\n }\n\n setupAll(): void {\n this.plugins.forEach((pluginInstance, name) => {\n const settings = this.settings.get(name);\n\n if (typeof settings !== 'undefined') {\n if (settings.dirty) {\n pluginInstance.setup(settings.options);\n settings.dirty = false;\n\n this.settings.set(name, settings);\n }\n }\n });\n }\n\n paintAll(): Promise[] {\n return Array.from(this.pendingPaint.values()).map((p) => p.paint());\n }\n\n destroyAll(): Promise[] {\n return this.allPlugins().map((p) => p.destroy());\n }\n\n getFromPosition(position: PluginOptions['position']): IPlugin[] {\n return this.allPlugins().filter(\n (plugin) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n plugin.options?.position === position,\n );\n }\n\n getHeightFromPosition(position: PluginOptions['position']): number {\n return this.getFromPosition(position)\n .map((d) => d.options.dimensions!.height)\n .reduce((a, b) => a + b, 0);\n }\n\n getWidthFromPosition(position: PluginOptions['position']): number {\n return this.getFromPosition(position)\n .map((d) => d.options.dimensions!.width)\n .reduce((a, b) => a + b, 0);\n }\n\n allPlugins(): IPlugin[] {\n return Array.from(this.plugins.values());\n }\n}\n","import minuteTemplate from './minute';\nimport hourTemplate from './hour';\nimport dayTemplate from './day';\nimport xDayTemplate from './xDay';\nimport ghDayTemplate from './ghDay';\nimport weekTemplate from './week';\nimport monthTemplate from './month';\nimport yearTemplate from './year';\n\nexport default [\n minuteTemplate,\n hourTemplate,\n dayTemplate,\n xDayTemplate,\n ghDayTemplate,\n weekTemplate,\n monthTemplate,\n yearTemplate,\n];\n","import type { Template, DomainType } from '../index';\n\nconst minuteTemplate: Template = (DateHelper) => {\n const COLUMNS_COUNT = 10;\n const ROWS_COUNT = 6;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['day', 'hour'];\n\n return {\n name: 'minute',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => COLUMNS_COUNT,\n columnsCount: () => ROWS_COUNT,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'minute',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts, index: number) => ({\n t: ts,\n x: Math.floor(index / COLUMNS_COUNT),\n y: index % COLUMNS_COUNT,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('minute').valueOf(),\n };\n};\n\nexport default minuteTemplate;\n","import type { DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst hourTemplate: Template = (\n DateHelper,\n { domain }: { domain: DomainOptions },\n) => {\n const TOTAL_ITEMS = 24;\n const ROWS_COUNT = 6;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['month', 'week', 'day'];\n\n return {\n name: 'hour',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => ROWS_COUNT,\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'week':\n return (TOTAL_ITEMS / ROWS_COUNT) * 7;\n case 'month':\n return (\n (TOTAL_ITEMS / ROWS_COUNT) *\n (domain.dynamicDimension ? DateHelper.date(ts).daysInMonth() : 31)\n );\n case 'day':\n default:\n return TOTAL_ITEMS / ROWS_COUNT;\n }\n },\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'hour',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n const hour = date.hour();\n const monthDate = date.date();\n let baseX = Math.floor(hour / ROWS_COUNT);\n const columnOffset = TOTAL_ITEMS / ROWS_COUNT;\n\n if (domain.type === 'month') {\n baseX += (monthDate - 1) * columnOffset;\n }\n if (domain.type === 'week') {\n baseX += +date.format('d') * columnOffset;\n }\n\n return {\n t: ts,\n x: baseX,\n y: Math.floor(hour % ROWS_COUNT),\n };\n }),\n extractUnit: (ts) => DateHelper.date(ts).startOf('hour').valueOf(),\n };\n};\n\nexport default hourTemplate;\n","import type { OptionsType, DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (\n DateHelper,\n {\n domain,\n verticalOrientation,\n }: {\n domain: DomainOptions;\n verticalOrientation: OptionsType['verticalOrientation'];\n },\n) => {\n const ROWS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month', 'week'];\n\n return {\n name: 'day',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => (domain.type === 'week' ? 1 : ROWS_COUNT),\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'month':\n return Math.ceil(\n domain.dynamicDimension && !verticalOrientation ?\n DateHelper.getMonthWeekNumber(\n DateHelper.date(ts).endOf('month'),\n ) :\n 6, // In rare case, when the first week contains less than 3 days\n );\n case 'year':\n return Math.ceil(\n domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').dayOfYear() / ROWS_COUNT :\n 54,\n );\n case 'week':\n default:\n return ROWS_COUNT;\n }\n },\n mapping: (startTimestamp, endTimestamp) => {\n let weekNumber = 0;\n let x = -1;\n\n return DateHelper.intervals(\n 'day',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n\n switch (domain.type) {\n case 'month':\n x = DateHelper.getMonthWeekNumber(ts) - 1;\n break;\n case 'year':\n if (weekNumber !== date.week()) {\n weekNumber = date.week();\n x += 1;\n }\n break;\n case 'week':\n x = date.weekday();\n break;\n default:\n }\n\n return {\n t: ts,\n x,\n y: domain.type === 'week' ? 0 : date.weekday(),\n };\n });\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { OptionsType, DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (\n DateHelper,\n {\n domain,\n verticalOrientation,\n }: {\n domain: DomainOptions;\n verticalOrientation: OptionsType['verticalOrientation'];\n },\n) => {\n const COLUMNS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month', 'week'];\n\n return {\n name: 'xDay',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: (ts) => {\n switch (domain.type) {\n case 'month':\n return Math.ceil(\n domain.dynamicDimension && !verticalOrientation ?\n DateHelper.getMonthWeekNumber(\n DateHelper.date(ts).endOf('month'),\n ) :\n 6, // In rare case, when the first week contains less than 3 days\n );\n case 'year':\n return Math.ceil(\n domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').dayOfYear() / COLUMNS_COUNT :\n 54,\n );\n case 'week':\n default:\n return COLUMNS_COUNT;\n }\n },\n columnsCount: () => {\n if (domain.type === 'week') {\n return 1;\n }\n return COLUMNS_COUNT;\n },\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'day',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n const endWeekNumber = date.endOf('year').week();\n let x = 0;\n\n switch (domain.type) {\n case 'month':\n x = DateHelper.getMonthWeekNumber(ts) - 1;\n break;\n case 'year':\n if (endWeekNumber === 1 && date.week() === endWeekNumber) {\n x = date.subtract(1, 'week').week() + 1;\n }\n\n x = date.week() - 1;\n break;\n case 'week':\n x = date.weekday();\n break;\n default:\n }\n\n return {\n t: ts,\n y: x,\n x: domain.type === 'week' ? 0 : date.weekday(),\n };\n }),\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (DateHelper) => {\n const ROWS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['month'];\n\n return {\n name: 'ghDay',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => ROWS_COUNT,\n columnsCount: (ts) => DateHelper.getWeeksCountInMonth(ts),\n mapping: (startTimestamp, endTimestamp) => {\n const clampStart = DateHelper.getFirstWeekOfMonth(startTimestamp);\n const clampEnd = DateHelper.getFirstWeekOfMonth(endTimestamp);\n\n let x = -1;\n const pivotDay = clampStart.weekday();\n\n return DateHelper.intervals('day', clampStart, clampEnd).map((ts) => {\n const weekday = DateHelper.date(ts).weekday();\n if (weekday === pivotDay) {\n x += 1;\n }\n\n return {\n t: ts,\n x,\n y: weekday,\n };\n });\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst weekTemplate: Template = (\n DateHelper,\n { domain }: { domain: DomainOptions },\n) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month'];\n\n return {\n name: 'week',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'year':\n return domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').isoWeeksInYear() :\n 53;\n case 'month':\n return domain.dynamicDimension ?\n DateHelper.getWeeksCountInMonth(ts) :\n 5;\n default:\n return 1;\n }\n },\n mapping: (startTimestamp, endTimestamp) => {\n const clampStart = DateHelper.getFirstWeekOfMonth(startTimestamp);\n const clampEnd = DateHelper.getFirstWeekOfMonth(endTimestamp);\n\n return DateHelper.intervals('week', clampStart, clampEnd).map(\n (ts, i) => ({\n t: ts,\n x: i,\n y: 0,\n }),\n );\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('week').valueOf(),\n };\n};\n\nexport default weekTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst monthTemplate: Template = (DateHelper) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year'];\n\n return {\n name: 'month',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: () => 12,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'month',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => ({\n t: ts,\n x: DateHelper.date(ts).month(),\n y: 0,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('month').valueOf(),\n };\n};\n\nexport default monthTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst yearTemplate: Template = (DateHelper) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = [];\n\n return {\n name: 'year',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: () => 1,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'year',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts, index) => ({\n t: ts,\n x: index,\n y: 0,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('year').valueOf(),\n };\n};\n\nexport default yearTemplate;\n","import castArray from 'lodash-es/castArray';\n\nimport DefaultTemplates from './templates/index';\nimport type Options from './options/Options';\nimport type { Template, TemplateResult } from './index';\nimport type DateHelper from './helpers/DateHelper';\n\nexport default class TemplateCollection {\n dateHelper: DateHelper;\n\n options: Options;\n\n settings: Map;\n\n // Whether the default templates has been initiated\n initiated: boolean;\n\n constructor(dateHelper: DateHelper, options: Options) {\n this.settings = new Map();\n this.dateHelper = dateHelper;\n this.options = options;\n this.initiated = false;\n }\n\n get(subDomainType: string): TemplateResult {\n return this.settings.get(subDomainType)!;\n }\n\n has(subDomainType: string): boolean {\n return this.settings.has(subDomainType);\n }\n\n init() {\n if (!this.initiated) {\n this.initiated = true;\n this.add(DefaultTemplates);\n }\n }\n\n add(templates: Template | Template[]) {\n this.init();\n\n const tplWithParent: string[] = [];\n castArray(templates).forEach((f) => {\n const template = f(this.dateHelper, this.options.options);\n this.settings.set(template.name, template);\n\n if (template.hasOwnProperty('parent')) {\n tplWithParent.push(template.name);\n }\n });\n\n tplWithParent.forEach((name) => {\n const parentTemplate = this.settings.get(\n this.settings.get(name)!.parent!,\n );\n\n if (!parentTemplate) {\n return;\n }\n\n this.settings.set(name, {\n ...parentTemplate,\n ...this.settings.get(name),\n });\n });\n }\n}\n","import EventEmmiter from 'eventemitter3';\nimport castArray from 'lodash-es/castArray';\nimport type { PluginFunc } from 'dayjs';\nimport type dayjs from 'dayjs';\n\nimport Navigator from './calendar/Navigator';\nimport CalendarPainter from './calendar/CalendarPainter';\nimport Populator from './calendar/Populator';\nimport Options from './options/Options';\nimport DataFetcher from './DataFetcher';\nimport DomainCollection from './calendar/DomainCollection';\nimport DateHelper from './helpers/DateHelper';\nimport validate from './options/OptionsValidator';\nimport PluginManager from './plugins/PluginManager';\nimport VERSION from './version';\n\nimport './cal-heatmap.scss';\n\nimport TemplateCollection from './TemplateCollection';\n\nimport type { OptionsType } from './options/Options';\nimport type {\n Template,\n Dimensions,\n PluginDefinition,\n Timestamp,\n} from './index';\n\nimport { ScrollDirection } from './constant';\n\nexport default class CalHeatmap {\n static VERSION = VERSION;\n\n options: Options;\n\n calendarPainter: CalendarPainter;\n\n populator: Populator;\n\n navigator: Navigator;\n\n eventEmitter: EventEmmiter;\n\n dataFetcher: DataFetcher;\n\n domainCollection!: DomainCollection;\n\n templateCollection: TemplateCollection;\n\n dateHelper: DateHelper;\n\n pluginManager: PluginManager;\n\n constructor() {\n // Default options\n this.options = new Options();\n\n // Init the helpers with the default options\n this.dateHelper = new DateHelper();\n this.templateCollection = new TemplateCollection(\n this.dateHelper,\n this.options,\n );\n this.dataFetcher = new DataFetcher(this);\n this.navigator = new Navigator(this);\n this.populator = new Populator(this);\n\n this.calendarPainter = new CalendarPainter(this);\n this.eventEmitter = new EventEmmiter();\n this.pluginManager = new PluginManager(this);\n }\n\n createDomainCollection(\n startDate: Timestamp | Date,\n range: number | Date,\n excludeEnd: boolean = true,\n ): DomainCollection {\n return new DomainCollection(\n this.dateHelper,\n this.options.options.domain.type,\n startDate,\n range,\n excludeEnd,\n );\n }\n\n // =========================================================================\n // PUBLIC API\n // =========================================================================\n\n /**\n * Setup and paint the calendar with the given options\n *\n * @param {Object} options The Options object\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n async paint(\n options?: CalHeatmap.DeepPartial,\n plugins?: PluginDefinition[] | PluginDefinition,\n ): Promise {\n this.options.init(options);\n await this.dateHelper.setup(this.options);\n\n this.templateCollection.init();\n\n try {\n validate(this.templateCollection, this.options.options);\n } catch (error) {\n return Promise.reject(error);\n }\n\n if (plugins) {\n this.pluginManager.add(castArray(plugins as any) as PluginDefinition[]);\n }\n\n this.calendarPainter.setup();\n\n // Record all the valid domains\n // Each domain value is a timestamp in milliseconds\n this.domainCollection = new DomainCollection(this.dateHelper);\n this.navigator.loadNewDomains(\n this.createDomainCollection(\n this.options.options.date.start,\n this.options.options.range,\n ),\n );\n\n return Promise.allSettled([this.calendarPainter.paint(), this.fill()]);\n }\n\n /**\n * Add a new subDomainTemplate\n *\n * @since 4.0.0\n * @param {SubDomainTemplate[] | SubDomainTemplate} templates\n * A single, or an array of SubDomainTemplate object\n * @return void\n */\n addTemplates(templates: Template | Template[]): void {\n this.templateCollection.add(templates);\n }\n\n /**\n * Shift the calendar by n domains forward\n *\n * @param {number} n Number of domain intervals to shift forward\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n next(n: number = 1): Promise {\n const loadDirection = this.navigator.loadNewDomains(\n this.createDomainCollection(this.domainCollection.max, n + 1).slice(n),\n ScrollDirection.SCROLL_FORWARD,\n );\n\n return Promise.allSettled([\n this.calendarPainter.paint(loadDirection),\n this.fill(),\n ]);\n }\n\n /**\n * Shift the calendar by n domains backward\n *\n * @param {number} n Number of domain intervals to shift backward\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n previous(n: number = 1): Promise {\n const loadDirection = this.navigator.loadNewDomains(\n this.createDomainCollection(this.domainCollection.min, -n),\n ScrollDirection.SCROLL_BACKWARD,\n );\n\n return Promise.allSettled([\n this.calendarPainter.paint(loadDirection),\n this.fill(),\n ]);\n }\n\n /**\n * Jump directly to a specific date\n *\n * JumpTo will scroll the calendar until the wanted domain with the specified\n * date is visible. Unless you set reset to true, the wanted domain\n * will not necessarily be the first domain of the calendar.\n *\n * @param {Date} date Jump to the domain containing that date\n * @param {boolean} reset Whether the wanted domain\n * should be the first domain of the calendar\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n jumpTo(date: Date, reset: boolean = false): Promise {\n return Promise.allSettled([\n this.calendarPainter.paint(this.navigator.jumpTo(date, reset)),\n this.fill(),\n ]);\n }\n\n /**\n * Fill the calendar with the given data\n *\n * @param {Object|string} dataSource The calendar's datasource,\n * same type as `options.data.source`\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n fill(dataSource = this.options.options.data.source): Promise {\n const { options } = this.options;\n const template = this.templateCollection;\n const endDate = this.dateHelper.intervals(\n options.domain.type,\n this.domainCollection.max,\n 2,\n )[1];\n\n const dataPromise = this.dataFetcher.getDatas(\n dataSource,\n this.domainCollection.min,\n endDate,\n );\n\n return new Promise((resolve, reject) => {\n dataPromise.then(\n (data: any) => {\n this.domainCollection.fill(\n data,\n options.data,\n template.get(options.subDomain.type)!.extractUnit,\n );\n this.populator.populate();\n resolve(null);\n },\n (error) => {\n reject(error);\n },\n );\n });\n }\n\n /**\n * Listener for all events\n *\n * @since 4.0.0\n * @param {string} eventName Name of the event to listen to\n * @param {function} Callback function to execute on event trigger\n * @return void\n */\n on(name: string, fn: (...args: any[]) => any): void {\n this.eventEmitter.on(name, fn);\n }\n\n dimensions(): Dimensions {\n return this.calendarPainter.dimensions;\n }\n\n /**\n * Destroy the calendar\n *\n * @since 3.3.6\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n destroy(): Promise {\n return this.calendarPainter.destroy();\n }\n\n extendDayjs(plugin: PluginFunc): dayjs.Dayjs {\n return this.dateHelper.extend(plugin);\n }\n}\n","const VERSION = '4.2.4';\nexport default VERSION;\n"],"names":["check","it","Math","global","globalThis","window","self","this","Function","shared$4","exports","require$$0","defineProperty","Object","defineGlobalProperty","key","value","configurable","writable","error","require$$1","SHARED","sharedStore","store","sharedModule","undefined","push","version","mode","copyright","license","source","match","fails","exec","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","hasOwnProperty_1","hasOwn","uncurryThis","id","postfix","random","toString","uid","engineUserAgent","navigator","String","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","$String","require$$2","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","shared","require$$3","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","toStringTagSupport","documentAll","document","all","documentAll_1","IS_HTMLDDA","isCallable","objectDefineProperty","descriptors","get","isObject","EXISTS","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","isSymbol","$Symbol","tryToString","aCallable","getMethod","V","P","func","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","DESCRIPTORS","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","getOwnPropertyDescriptor","ENUMERABLE","CONFIGURABLE","WRITABLE","f","O","Attributes","current","enumerable","makeBuiltIn$3","getDescriptor","functionName","PROPER","functionToString","inspectSource","set","has","WeakMap","weakMapBasicDetection","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","classofRaw","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","classof","tag","tryGet","callee","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","descriptor","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","objectGetOwnPropertyNames","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","target","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","defineBuiltInAccessor","SPECIES","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionUncurryThisClause","functionBindContext","that","html","arraySlice","engineIsIos","require$$8","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","require$$12","speciesConstructor","defaultConstructor","S","require$$14","require$$15","hostReportErrors","b","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","objectKeys","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","addToUnscopables","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","allSettled","status","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","stringMultibyte","codeAt","STRING_ITERATOR","point","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","fill","argumentsLength","end","endPos","isArray","createProperty","propertyKey","arrayMethodHasSpeciesSupport","array","foo","Boolean","nativeSlice","HAS_SPECIES_SUPPORT","$Array","__awaiter","thisArg","_arguments","generator","fulfilled","e","rejected","__classPrivateFieldGet","receiver","start","k","fin","prefix","Events","EE","context","once","addListener","emitter","listener","evt","_events","_eventsCount","clearEvent","EventEmitter","eventNames","events","listeners","handlers","l","ee","listenerCount","a1","a2","a3","a4","a5","len","removeListener","j","on","removeAllListeners","off","prefixed","module","isArray$3","castArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","forEach","map","filter","some","every","find","findIndex","filterReject","$map","$assign","assign","objectAssign","A","B","alphabet","chr","T","internalMetadata","objectGetOwnPropertyNamesExternal","arraySliceSimple","$getOwnPropertyNames","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","collection","common","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","getConstructor","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","ScrollDirection","Position","collectionWeak","define","init","SCALE_BASE_OPACITY_COLOR","SCALE_BASE_COLOR_DOMAIN","Navigator","calendar","_classCallCheck","maxDomainReached","minDomainReached","_createClass","newDomainCollection","_this","direction","SCROLL_NONE","templatesClt","templateCollection","minDate","date","extractUnit","maxDate","domainCollection","_Navigator_instances","_Navigator_isDomainBoundaryReached","clamp","range","SCROLL_FORWARD","merge","domainKey","subDomainEndDate","at","dateHelper","intervals","pop","subDomain","mapping","d","v","defaultValue","_Navigator_setDomainsBoundaryReached","SCROLL_BACKWARD","eventEmitter","reset","_this$calendar","Date","loadNewDomains","createDomainCollection","WeakSet","lowerBound","upperBound","reached","doesNotExceedSafeInteger","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","arg","E","arrayMethodIsStrict","nativeJoin","separator","collectionStrong","last","previous","getEntry","removed","prev","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","mergeSort","comparefn","middle","insertionSort","element","left","right","llength","rlength","lindex","rindex","arraySort","firefox","engineFfVersion","engineIsIeOrEdge","webkit","engineWebkitVersion","deletePropertyOrThrow","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","sort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STRICT_METHOD","STABLE_SORT","code","fromCharCode","itemsLength","items","arrayLength","y","getSortCompare","$forEach","arrayForEach","isVertical","horizontalPadding","padding","LEFT","RIGHT","verticalPadding","TOP","BOTTOM","DomainCoordinates","domainPainter","Map","scrollDirection","_this$calendar$option","verticalOrientation","dimensions","width","height","exitingTotal","scrollFactor","reverse","yankedDomains","coor","w","_DomainCoordinates_instances","_DomainCoordinates_getWidth","h","_DomainCoordinates_getHeight","pre_x","pre_y","inner_width","gutter","inner_height","_this$calendar$option2","columnsCount","subDomainWidth","domainHorizontalLabelWidth","_this$calendar$option3","rowsCount","subDomainHeight","domainVerticalLabelHeight","DEFAULT_SELECTOR","DomainPainter","coordinates","root","rootNode","animationDuration","t","transition","duration","update","promises","selectAll","append","attr","enterSelection","updateSelection","exitSelection","remove","classname","helper","hour","format","week","month","year","$includes","$filter","callWithSafeIterationClosing","arrayLike","IS_CONSTRUCTOR","mapfn","DOMAIN_FORMAT","xDay","ghDay","day","minute","DomainCollection","interval","excludeEnd","ts","_DomainCollection_instances","_DomainCollection_refreshKeys","callback","newCollection","limit","createValueCallback","_this2","keyToRemove","_this3","fromBeginning","_ref","subDomainKeyExtractor","_this4","groupY","groupedRecords","groupRecords","records","_DomainCollection_setSubDomainValues","_this5","results","validSubDomainTimestamp","timestamp","extractTimestamp","groupFn","cleanedValues","reduce","_toConsumableArray","datum","extractorFn","_this6","groupValues","_DomainCollection_extractValues","parseInt","DomainLabelPainter","label","text","textAlign","_DomainLabelPainter_instances","_DomainLabelPainter_textVerticalAlign","nodes","selection","_DomainLabelPainter_domainRotate","rotate","_this$calendar$option4","offset","_DomainLabelPainter_getDomainInsideWidth","_this$calendar$option5","_this$calendar$option6","_this$calendar$option7","_DomainLabelPainter_getDomainInsideHeight","_this$calendar$option8","calendarPainter","domainsContainerPainter","_this$calendar$option9","_this$calendar$option10","_this$calendar$option11","labelWidth","domainWidth","domainHeight","s","whitespaces","ltrim","RegExp","rtrim","stringTrim","trim","$trim","forcedStringTrimMethod","SubDomainPainter","containerClassname","subDomainSvgGroup","_SubDomainPainter_instances","_SubDomainPainter_setPositions","radius","subDomainsCollection","abs","insert","_SubDomainPainter_classname","ev","_SubDomainPainter_appendText","_options$domain","highlight","unitFn","_len","otherClasses","_key","elem","_SubDomainPainter_getCoordinates","axis","BASE_SELECTOR","TRANSITION_CLASSNAME","DomainsContainerPainter","subDomainPainter","domainLabelPainter","transitionsQueueCount","_DomainsContainerPainter_instances","_DomainsContainerPainter_startAnimation","paint","_DomainsContainerPainter_recomputeDimensions","_DomainsContainerPainter_endAnimation","_a","topHeight","pluginManager","getHeightFromPosition","leftWidth","getWidthFromPosition","select","parentNode","classed","domainsDimensions","PluginPainter","paintAll","setPluginsPosition","top","getFromPosition","bottom","topOffset","plugin","leftOffset","CalendarPainter","pluginPainter","itemSelector","theme","setup","setupAll","navigationDir","transitions","updatePosition","_CalendarPainter_instances","_CalendarPainter_resize","destroyAll","destroy","insideHeight","_CalendarPainter_getWidth","insideWidth","newWidth","newHeight","freeGlobal$1","freeSelf","root$1","freeGlobal","Symbol$2","objectProto","nativeObjectToString","symToStringTag","toStringTag","nullTag","undefinedTag","baseGetTag","isOwn","unmasked","getRawTag","objectToString","asyncTag","funcTag","genTag","proxyTag","isFunction","nativeKeys","MATCH","isRegExp","notARegexp","correctIsRegexpLogic","regexp","error1","error2","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","search","IE_BUG","TO_ENTRIES","IE_WORKAROUND","$entries","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","re","parse","fallback","timeIntervals","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","Error","maybeUtcInterval","TypedArray","Uint8Array","constant","coerceNumbers","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","arrayify","isScaleOptions","option","maybeInterval","isInteger","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","orderof","descending","color","opacity","registry","sqrt4_3","sqrt","symbolHexagon","draw","rx","PI","ry","hy","moveTo","lineTo","closePath","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","ordinalScheme","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","scale","channels","nice","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","h25","quantile","h50","median","inferLogDomain","inferQuantileDomain","createScaleD","transform","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","inferHint","stroke","inferSymbolHint","isNone","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","candidate","normalizeScale","projection","typeProjection","asOrdinalType","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","exposeScale","percent","bandwidth","normalizedScale","scaleOptions","scaleType","applyScaleStyle","_scale","keyname","styles","baseColor","scaleStyle","_ref2","_slicedToArray","prop","Populator","_calendar$options$opt","colorScale","defaultColor","hcl","eq","other","assocIndexOf","ListCache","__data__","coreJsData$1","maskSrcKey","coreJsData","funcToString","toSource","reIsHostCtor","funcProto","reIsNative","baseIsNative","getNative","getValue","Map$2","nativeCreate$1","Hash","getMapData","MapCache","nativeCreate","hash","Stack","pairs","LARGE_ARRAY_SIZE","defineProperty$1","baseAssignValue","assignMergeValue","fromRight","baseFor","iteratee","keysFunc","baseFor$1","freeExports","nodeType","freeModule","Buffer","allocUnsafe","Uint8Array$2","cloneTypedArray","typedArray","isDeep","arrayBuffer","byteLength","byteOffset","baseCreate$1","overArg","getPrototype$1","isPrototype","Ctor","isObjectLike","baseIsArguments","isArguments","isArguments$1","MAX_SAFE_INTEGER","isLength","isArrayLike","isBuffer$1","isBuffer","objectTag","objectCtorString","typedArrayTags","freeProcess","nodeUtil","types","require","binding","nodeIsTypedArray","isTypedArray","isTypedArray$1","safeGet","assignValue","objValue","reIsUint","isIndex","arrayLikeKeys","inherited","isArr","isArg","isBuff","isType","skipIndexes","baseTimes","baseKeysIn","nativeKeysIn","isProto","keysIn","toPlainObject","customizer","isNew","newValue","copyObject","baseMergeDeep","srcIndex","mergeFunc","stack","srcValue","stacked","isCommon","isTyped","copyArray","copy","cloneBuffer","getPrototype","isPlainObject","baseCreate","initCloneObject","baseMerge","identity","nativeMax","baseSetToString","baseSetToString$1","nativeNow","setToString","count","lastCalled","stamp","shortOut","setToString$1","baseRest","otherArgs","overRest","assigner","mergeWith","sources","guard","isIterateeCall","mergeWith$1","SetCache","arraySome","predicate","COMPARE_PARTIAL_FLAG","COMPARE_UNORDERED_FLAG","equalArrays","bitmask","equalFunc","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","boolTag","dateTag","errorTag","mapTag","numberTag","regexpTag","setTag","stringTag","symbolTag","arrayBufferTag","dataViewTag","symbolProto","symbolValueOf","nativeGetSymbols","getSymbols","resIndex","arrayFilter","getSymbols$1","nativeKeys$1","baseKeys","getAllKeys","symbolsFunc","arrayPush","baseGetAllKeys","DataView$1","Promise$2","Set$2","WeakMap$1","promiseTag","weakMapTag","dataViewCtorString","DataView","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ctorString","getTag$1","argsTag","arrayTag","baseIsEqualDeep","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","convert","equalByTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","equalObjects","baseIsEqual","isEqual","baseHas","reIsDeepProp","reIsPlainProp","FUNC_ERROR_TEXT","memoize","resolver","memoized","cache","Cache","rePropName","reEscapeChar","stringToPath","memoizeCapped","quote","subString","stringToPath$1","INFINITY","symbolToString","baseToString","arrayMap","castPath","isKey","toKey","path","hasFunc","hasPath","baseGet","lastIndex","nested","baseSet","re1","re2","OptionsPreProcessors","isString","Options","processors","preProcessors","dynamicDimension","locale","timezone","requestInit","opts","initScale","$RegExp","UNSUPPORTED_Y","MISSED_STICKY","sticky","BROKEN_CARET","regexpStickyHelpers","regexpUnsupportedDotAll","dotAll","flags","regexpUnsupportedNcg","groups","regexpFlags","hasIndices","ignoreCase","multiline","unicode","unicodeSets","stickyHelpers","UNSUPPORTED_DOT_ALL","UNSUPPORTED_NCG","nativeReplace","nativeExec","patchedExec","UPDATES_LAST_INDEX_WRONG","NPCG_INCLUDED","reCopy","group","str","raw","charsAdded","strCopy","regexpExec","RegExpPrototype","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","fixRegExpWellKnownSymbolLogic","SHAM","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","uncurriedNativeRegExpMethod","nativeMethod","arg2","forceStringMethod","$exec","advanceStringIndex","getSubstitution","matched","captures","namedCaptures","tailPos","m","ch","capture","regExpExec","R","REPLACE","require$$16","stringIndexOf","REPLACE_KEEPS_$0","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_SUPPORTS_NAMED_GROUPS","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","res","functionalReplace","fullUnicode","accumulatedResult","nextSourcePosition","replacerArgs","DataFetcher","startTimestamp","endTimestamp","_context","abrupt","_DataFetcher_instances","_DataFetcher_fetch","_callee","newUri","url","parseURI","json","csv","dsv","FUNCTION_NAME_EXISTS","nameRE","dayjs_min","u","o","M","weekdays","months","ordinal","z","utcOffset","clone","p","D","ms","Q","g","$L","utc","$u","$x","$offset","$d","substring","UTC","$y","getFullYear","$M","getMonth","$D","getDate","$W","getDay","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","isSame","startOf","endOf","isAfter","isBefore","$g","unix","getTime","toDate","$locale","weekStart","$set","daysInMonth","subtract","invalidDate","meridiem","monthsShort","weekdaysMin","weekdaysShort","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","extend","$i","isDayjs","en","Ls","yearStart","weeks","dayOfYear","weekday","isoWeeksInYear","isLeapYear","isoWeekday","isoWeekYear","isoWeek","weekYear","offsetName","local","getUTCFullYear","getUTCMonth","getUTCDate","getUTCDay","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","$localOffset","isUTC","timeZoneName","Intl","DateTimeFormat","hour12","timeZone","formatToParts","tz","toLocaleString","$timezone","guess","resolvedOptions","setDefault","formats","toUpperCase","firstDayOfWeek","longDateFormat","localeData","LTS","L","LL","LLL","LLLL","updateLocale","dayjs","weekOfYear","minMax","advancedFormat","localizedFormat","DEFAULT_LOCALE","DateHelper","_typeof","userLocale","loadBrowserLocale","sent","loadNodeLocale","dayjsPlugin","dayjsDate","endOfWeek","pivotDate","getLastWeekOfMonth","getFirstWeekOfMonth","startOfMonth","startOfFirstWeek","endOfMonth","endOfLastWeek","formatter","async","onerror","err","onload","import","ALLOWED_DATA_TYPES","validate","domainType","subDomainType","allowedDomainType","PluginManager","settings","plugins","pendingPaint","Creator","PluginClass","pluginOptions","extractPluginName","dirty","pluginInstance","allPlugins","TOTAL_ITEMS","monthDate","baseX","getMonthWeekNumber","weekNumber","endWeekNumber","getWeeksCountInMonth","clampStart","clampEnd","pivotDay","TemplateCollection","initiated","DefaultTemplates","templates","tplWithParent","template","parentTemplate","CalHeatmap","dataFetcher","populator","EventEmmiter","startDate","loadDirection","jumpTo","dataSource","endDate","dataPromise","getDatas","populate","VERSION"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,159,161,162,163,164,165,166,167,168,169,170,171,172,173,174,178,179,180,181,182,185,186,187,188,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,355,356,358,359,360,361,362,363,364,365,366,367,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,385,387]} \ No newline at end of file +{"version":3,"file":"cal-heatmap.min.js","sources":["../node_modules/core-js/internals/global.js","../node_modules/core-js/internals/define-global-property.js","../node_modules/core-js/internals/shared-store.js","../node_modules/core-js/internals/shared.js","../node_modules/core-js/internals/engine-v8-version.js","../node_modules/core-js/internals/fails.js","../node_modules/core-js/internals/function-bind-native.js","../node_modules/core-js/internals/function-uncurry-this.js","../node_modules/core-js/internals/is-null-or-undefined.js","../node_modules/core-js/internals/require-object-coercible.js","../node_modules/core-js/internals/to-object.js","../node_modules/core-js/internals/has-own-property.js","../node_modules/core-js/internals/uid.js","../node_modules/core-js/internals/engine-user-agent.js","../node_modules/core-js/internals/symbol-constructor-detection.js","../node_modules/core-js/internals/use-symbol-as-uid.js","../node_modules/core-js/internals/well-known-symbol.js","../node_modules/core-js/internals/to-string-tag-support.js","../node_modules/core-js/internals/document-all.js","../node_modules/core-js/internals/is-callable.js","../node_modules/core-js/internals/descriptors.js","../node_modules/core-js/internals/is-object.js","../node_modules/core-js/internals/document-create-element.js","../node_modules/core-js/internals/ie8-dom-define.js","../node_modules/core-js/internals/v8-prototype-define-bug.js","../node_modules/core-js/internals/an-object.js","../node_modules/core-js/internals/function-call.js","../node_modules/core-js/internals/get-built-in.js","../node_modules/core-js/internals/object-is-prototype-of.js","../node_modules/core-js/internals/is-symbol.js","../node_modules/core-js/internals/try-to-string.js","../node_modules/core-js/internals/a-callable.js","../node_modules/core-js/internals/get-method.js","../node_modules/core-js/internals/ordinary-to-primitive.js","../node_modules/core-js/internals/to-primitive.js","../node_modules/core-js/internals/to-property-key.js","../node_modules/core-js/internals/object-define-property.js","../node_modules/core-js/internals/function-name.js","../node_modules/core-js/internals/inspect-source.js","../node_modules/core-js/internals/internal-state.js","../node_modules/core-js/internals/weak-map-basic-detection.js","../node_modules/core-js/internals/create-property-descriptor.js","../node_modules/core-js/internals/create-non-enumerable-property.js","../node_modules/core-js/internals/shared-key.js","../node_modules/core-js/internals/hidden-keys.js","../node_modules/core-js/internals/make-built-in.js","../node_modules/core-js/internals/define-built-in.js","../node_modules/core-js/internals/classof-raw.js","../node_modules/core-js/internals/classof.js","../node_modules/core-js/internals/object-to-string.js","../node_modules/core-js/modules/es.object.to-string.js","../node_modules/core-js/internals/object-property-is-enumerable.js","../node_modules/core-js/internals/indexed-object.js","../node_modules/core-js/internals/to-indexed-object.js","../node_modules/core-js/internals/object-get-own-property-descriptor.js","../node_modules/core-js/internals/math-trunc.js","../node_modules/core-js/internals/to-integer-or-infinity.js","../node_modules/core-js/internals/to-absolute-index.js","../node_modules/core-js/internals/to-length.js","../node_modules/core-js/internals/length-of-array-like.js","../node_modules/core-js/internals/array-includes.js","../node_modules/core-js/internals/object-keys-internal.js","../node_modules/core-js/internals/enum-bug-keys.js","../node_modules/core-js/internals/object-get-own-property-names.js","../node_modules/core-js/internals/object-get-own-property-symbols.js","../node_modules/core-js/internals/own-keys.js","../node_modules/core-js/internals/copy-constructor-properties.js","../node_modules/core-js/internals/is-forced.js","../node_modules/core-js/internals/export.js","../node_modules/core-js/internals/engine-is-node.js","../node_modules/core-js/internals/function-uncurry-this-accessor.js","../node_modules/core-js/internals/a-possible-prototype.js","../node_modules/core-js/internals/object-set-prototype-of.js","../node_modules/core-js/internals/set-to-string-tag.js","../node_modules/core-js/internals/define-built-in-accessor.js","../node_modules/core-js/internals/set-species.js","../node_modules/core-js/internals/an-instance.js","../node_modules/core-js/internals/is-constructor.js","../node_modules/core-js/internals/task.js","../node_modules/core-js/internals/a-constructor.js","../node_modules/core-js/internals/species-constructor.js","../node_modules/core-js/internals/function-apply.js","../node_modules/core-js/internals/function-uncurry-this-clause.js","../node_modules/core-js/internals/function-bind-context.js","../node_modules/core-js/internals/html.js","../node_modules/core-js/internals/array-slice.js","../node_modules/core-js/internals/validate-arguments-length.js","../node_modules/core-js/internals/engine-is-ios.js","../node_modules/core-js/internals/queue.js","../node_modules/core-js/internals/microtask.js","../node_modules/core-js/internals/engine-is-ios-pebble.js","../node_modules/core-js/internals/engine-is-webos-webkit.js","../node_modules/core-js/internals/perform.js","../node_modules/core-js/internals/promise-native-constructor.js","../node_modules/core-js/internals/engine-is-deno.js","../node_modules/core-js/internals/engine-is-browser.js","../node_modules/core-js/internals/promise-constructor-detection.js","../node_modules/core-js/internals/new-promise-capability.js","../node_modules/core-js/modules/es.promise.constructor.js","../node_modules/core-js/internals/host-report-errors.js","../node_modules/core-js/internals/iterators.js","../node_modules/core-js/internals/is-array-iterator-method.js","../node_modules/core-js/internals/get-iterator-method.js","../node_modules/core-js/internals/get-iterator.js","../node_modules/core-js/internals/iterator-close.js","../node_modules/core-js/internals/iterate.js","../node_modules/core-js/internals/check-correctness-of-iteration.js","../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../node_modules/core-js/modules/es.promise.all.js","../node_modules/core-js/modules/es.promise.catch.js","../node_modules/core-js/modules/es.promise.race.js","../node_modules/core-js/modules/es.promise.reject.js","../node_modules/core-js/internals/promise-resolve.js","../node_modules/core-js/modules/es.promise.resolve.js","../node_modules/core-js/internals/object-keys.js","../node_modules/core-js/internals/object-define-properties.js","../node_modules/core-js/internals/object-create.js","../node_modules/core-js/internals/add-to-unscopables.js","../node_modules/core-js/internals/iterators-core.js","../node_modules/core-js/internals/correct-prototype-getter.js","../node_modules/core-js/internals/object-get-prototype-of.js","../node_modules/core-js/internals/iterator-create-constructor.js","../node_modules/core-js/internals/iterator-define.js","../node_modules/core-js/internals/create-iter-result-object.js","../node_modules/core-js/modules/es.array.iterator.js","../node_modules/core-js/modules/es.promise.all-settled.js","../node_modules/core-js/internals/to-string.js","../node_modules/core-js/internals/string-multibyte.js","../node_modules/core-js/modules/es.string.iterator.js","../node_modules/core-js/internals/dom-iterables.js","../node_modules/core-js/internals/dom-token-list-prototype.js","../node_modules/core-js/modules/web.dom-collections.iterator.js","../node_modules/core-js/internals/array-fill.js","../node_modules/core-js/modules/es.array.fill.js","../node_modules/core-js/internals/is-array.js","../node_modules/core-js/internals/create-property.js","../node_modules/core-js/internals/array-method-has-species-support.js","../node_modules/core-js/modules/es.array.slice.js","../node_modules/tslib/tslib.es6.js","../node_modules/eventemitter3/index.js","../node_modules/lodash-es/isArray.js","../node_modules/lodash-es/castArray.js","../node_modules/core-js/internals/array-species-constructor.js","../node_modules/core-js/internals/array-species-create.js","../node_modules/core-js/internals/array-iteration.js","../node_modules/core-js/modules/es.array.map.js","../node_modules/core-js/internals/object-assign.js","../node_modules/core-js/modules/es.object.assign.js","../node_modules/core-js/internals/array-slice-simple.js","../node_modules/core-js/internals/object-get-own-property-names-external.js","../node_modules/core-js/internals/array-buffer-non-extensible.js","../node_modules/core-js/internals/object-is-extensible.js","../node_modules/core-js/internals/freezing.js","../node_modules/core-js/internals/internal-metadata.js","../node_modules/core-js/internals/inherit-if-required.js","../node_modules/core-js/internals/collection.js","../node_modules/core-js/internals/define-built-ins.js","../node_modules/core-js/internals/collection-weak.js","../../src/constant.ts","../node_modules/core-js/modules/es.weak-set.constructor.js","../../src/calendar/Navigator.ts","../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../node_modules/core-js/modules/es.array.concat.js","../node_modules/core-js/internals/array-method-is-strict.js","../node_modules/core-js/modules/es.array.join.js","../node_modules/core-js/internals/collection-strong.js","../node_modules/core-js/modules/es.map.constructor.js","../node_modules/core-js/internals/delete-property-or-throw.js","../node_modules/core-js/internals/array-sort.js","../node_modules/core-js/internals/engine-ff-version.js","../node_modules/core-js/internals/engine-is-ie-or-edge.js","../node_modules/core-js/internals/engine-webkit-version.js","../node_modules/core-js/modules/es.array.sort.js","../node_modules/core-js/internals/array-for-each.js","../node_modules/core-js/modules/web.dom-collections.for-each.js","../../src/helpers/PositionHelper.ts","../../src/domain/DomainCoordinates.ts","../../src/domain/DomainPainter.ts","../node_modules/core-js/modules/es.array.includes.js","../node_modules/core-js/modules/es.array.filter.js","../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../node_modules/core-js/internals/array-from.js","../node_modules/core-js/modules/es.array.from.js","../../src/calendar/DomainCollection.ts","../../src/domain/DomainLabelPainter.ts","../node_modules/core-js/internals/whitespaces.js","../node_modules/core-js/internals/string-trim.js","../node_modules/core-js/internals/string-trim-forced.js","../node_modules/core-js/modules/es.string.trim.js","../../src/subDomain/SubDomainPainter.ts","../../src/domain/DomainsContainerPainter.ts","../../src/plugins/PluginPainter.ts","../../src/calendar/CalendarPainter.ts","../node_modules/lodash-es/_freeGlobal.js","../node_modules/lodash-es/_root.js","../node_modules/lodash-es/_Symbol.js","../node_modules/lodash-es/_getRawTag.js","../node_modules/lodash-es/_objectToString.js","../node_modules/lodash-es/_baseGetTag.js","../node_modules/lodash-es/isObject.js","../node_modules/lodash-es/isFunction.js","../node_modules/core-js/modules/es.object.keys.js","../node_modules/core-js/internals/is-regexp.js","../node_modules/core-js/modules/es.string.starts-with.js","../node_modules/core-js/internals/not-a-regexp.js","../node_modules/core-js/internals/correct-is-regexp-logic.js","../node_modules/core-js/internals/object-to-array.js","../node_modules/core-js/modules/es.object.entries.js","../node_modules/@observablehq/plot/src/defined.js","../node_modules/isoformat/src/parse.js","../node_modules/@observablehq/plot/src/time.js","../node_modules/@observablehq/plot/src/options.js","../node_modules/@observablehq/plot/src/scales/index.js","../node_modules/@observablehq/plot/src/symbol.js","../node_modules/@observablehq/plot/src/warnings.js","../node_modules/@observablehq/plot/src/scales/schemes.js","../node_modules/@observablehq/plot/src/scales/quantitative.js","../node_modules/@observablehq/plot/src/scales/diverging.js","../node_modules/@observablehq/plot/src/scales/temporal.js","../node_modules/@observablehq/plot/src/scales/ordinal.js","../node_modules/@observablehq/plot/src/scales.js","../../src/scale.ts","../../src/calendar/Populator.ts","../node_modules/lodash-es/eq.js","../node_modules/lodash-es/_assocIndexOf.js","../node_modules/lodash-es/_listCacheDelete.js","../node_modules/lodash-es/_ListCache.js","../node_modules/lodash-es/_listCacheClear.js","../node_modules/lodash-es/_listCacheGet.js","../node_modules/lodash-es/_listCacheHas.js","../node_modules/lodash-es/_listCacheSet.js","../node_modules/lodash-es/_coreJsData.js","../node_modules/lodash-es/_isMasked.js","../node_modules/lodash-es/_toSource.js","../node_modules/lodash-es/_baseIsNative.js","../node_modules/lodash-es/_getNative.js","../node_modules/lodash-es/_getValue.js","../node_modules/lodash-es/_Map.js","../node_modules/lodash-es/_nativeCreate.js","../node_modules/lodash-es/_hashGet.js","../node_modules/lodash-es/_hashHas.js","../node_modules/lodash-es/_Hash.js","../node_modules/lodash-es/_getMapData.js","../node_modules/lodash-es/_isKeyable.js","../node_modules/lodash-es/_MapCache.js","../node_modules/lodash-es/_hashClear.js","../node_modules/lodash-es/_hashDelete.js","../node_modules/lodash-es/_hashSet.js","../node_modules/lodash-es/_mapCacheClear.js","../node_modules/lodash-es/_mapCacheDelete.js","../node_modules/lodash-es/_mapCacheGet.js","../node_modules/lodash-es/_mapCacheHas.js","../node_modules/lodash-es/_mapCacheSet.js","../node_modules/lodash-es/_Stack.js","../node_modules/lodash-es/_stackClear.js","../node_modules/lodash-es/_stackDelete.js","../node_modules/lodash-es/_stackGet.js","../node_modules/lodash-es/_stackHas.js","../node_modules/lodash-es/_stackSet.js","../node_modules/lodash-es/_defineProperty.js","../node_modules/lodash-es/_baseAssignValue.js","../node_modules/lodash-es/_assignMergeValue.js","../node_modules/lodash-es/_baseFor.js","../node_modules/lodash-es/_createBaseFor.js","../node_modules/lodash-es/_cloneBuffer.js","../node_modules/lodash-es/_Uint8Array.js","../node_modules/lodash-es/_cloneTypedArray.js","../node_modules/lodash-es/_cloneArrayBuffer.js","../node_modules/lodash-es/_baseCreate.js","../node_modules/lodash-es/_overArg.js","../node_modules/lodash-es/_getPrototype.js","../node_modules/lodash-es/_isPrototype.js","../node_modules/lodash-es/isObjectLike.js","../node_modules/lodash-es/_baseIsArguments.js","../node_modules/lodash-es/isArguments.js","../node_modules/lodash-es/isLength.js","../node_modules/lodash-es/isArrayLike.js","../node_modules/lodash-es/isBuffer.js","../node_modules/lodash-es/stubFalse.js","../node_modules/lodash-es/isPlainObject.js","../node_modules/lodash-es/_baseIsTypedArray.js","../node_modules/lodash-es/_nodeUtil.js","../node_modules/lodash-es/_baseUnary.js","../node_modules/lodash-es/isTypedArray.js","../node_modules/lodash-es/_safeGet.js","../node_modules/lodash-es/_assignValue.js","../node_modules/lodash-es/_isIndex.js","../node_modules/lodash-es/_arrayLikeKeys.js","../node_modules/lodash-es/_baseTimes.js","../node_modules/lodash-es/_baseKeysIn.js","../node_modules/lodash-es/_nativeKeysIn.js","../node_modules/lodash-es/keysIn.js","../node_modules/lodash-es/toPlainObject.js","../node_modules/lodash-es/_copyObject.js","../node_modules/lodash-es/_baseMergeDeep.js","../node_modules/lodash-es/isArrayLikeObject.js","../node_modules/lodash-es/_copyArray.js","../node_modules/lodash-es/_initCloneObject.js","../node_modules/lodash-es/_baseMerge.js","../node_modules/lodash-es/identity.js","../node_modules/lodash-es/_overRest.js","../node_modules/lodash-es/_baseSetToString.js","../node_modules/lodash-es/constant.js","../node_modules/lodash-es/_shortOut.js","../node_modules/lodash-es/_setToString.js","../node_modules/lodash-es/_baseRest.js","../node_modules/lodash-es/_apply.js","../node_modules/lodash-es/mergeWith.js","../node_modules/lodash-es/_createAssigner.js","../node_modules/lodash-es/_isIterateeCall.js","../node_modules/lodash-es/_SetCache.js","../node_modules/lodash-es/_arraySome.js","../node_modules/lodash-es/_setCacheAdd.js","../node_modules/lodash-es/_setCacheHas.js","../node_modules/lodash-es/_equalArrays.js","../node_modules/lodash-es/_cacheHas.js","../node_modules/lodash-es/_mapToArray.js","../node_modules/lodash-es/_setToArray.js","../node_modules/lodash-es/_equalByTag.js","../node_modules/lodash-es/_getSymbols.js","../node_modules/lodash-es/_arrayFilter.js","../node_modules/lodash-es/stubArray.js","../node_modules/lodash-es/_nativeKeys.js","../node_modules/lodash-es/_baseKeys.js","../node_modules/lodash-es/keys.js","../node_modules/lodash-es/_getAllKeys.js","../node_modules/lodash-es/_baseGetAllKeys.js","../node_modules/lodash-es/_arrayPush.js","../node_modules/lodash-es/_equalObjects.js","../node_modules/lodash-es/_DataView.js","../node_modules/lodash-es/_Promise.js","../node_modules/lodash-es/_Set.js","../node_modules/lodash-es/_WeakMap.js","../node_modules/lodash-es/_getTag.js","../node_modules/lodash-es/_baseIsEqualDeep.js","../node_modules/lodash-es/_baseIsEqual.js","../node_modules/lodash-es/isEqual.js","../node_modules/lodash-es/_baseHas.js","../node_modules/lodash-es/isSymbol.js","../node_modules/lodash-es/_isKey.js","../node_modules/lodash-es/memoize.js","../node_modules/lodash-es/_stringToPath.js","../node_modules/lodash-es/_memoizeCapped.js","../node_modules/lodash-es/_baseToString.js","../node_modules/lodash-es/_arrayMap.js","../node_modules/lodash-es/_castPath.js","../node_modules/lodash-es/toString.js","../node_modules/lodash-es/_toKey.js","../node_modules/lodash-es/has.js","../node_modules/lodash-es/_hasPath.js","../node_modules/lodash-es/get.js","../node_modules/lodash-es/_baseGet.js","../node_modules/lodash-es/set.js","../node_modules/lodash-es/_baseSet.js","../../src/options/OptionsPreProcessors.ts","../node_modules/core-js/internals/regexp-exec.js","../node_modules/lodash-es/isString.js","../../src/options/Options.ts","../node_modules/core-js/internals/regexp-flags.js","../node_modules/core-js/internals/regexp-sticky-helpers.js","../node_modules/core-js/internals/regexp-unsupported-dot-all.js","../node_modules/core-js/internals/regexp-unsupported-ncg.js","../node_modules/core-js/modules/es.regexp.exec.js","../node_modules/core-js/internals/fix-regexp-well-known-symbol-logic.js","../node_modules/core-js/internals/advance-string-index.js","../node_modules/core-js/internals/get-substitution.js","../node_modules/core-js/internals/regexp-exec-abstract.js","../node_modules/core-js/modules/es.string.replace.js","../../src/DataFetcher.ts","../node_modules/core-js/modules/es.function.name.js","../node_modules/dayjs/dayjs.min.js","../node_modules/dayjs/plugin/weekOfYear.js","../node_modules/dayjs/plugin/dayOfYear.js","../node_modules/dayjs/plugin/weekday.js","../node_modules/dayjs/plugin/minMax.js","../node_modules/dayjs/plugin/isoWeeksInYear.js","../node_modules/dayjs/plugin/isoWeek.js","../node_modules/dayjs/plugin/isLeapYear.js","../node_modules/dayjs/plugin/advancedFormat.js","../node_modules/dayjs/plugin/utc.js","../node_modules/dayjs/plugin/timezone.js","../node_modules/dayjs/plugin/localeData.js","../node_modules/dayjs/plugin/localizedFormat.js","../node_modules/dayjs/plugin/updateLocale.js","../../src/helpers/DateHelper.ts","../node_modules/core-js/modules/es.string.includes.js","../../src/options/OptionsValidator.ts","../node_modules/core-js/modules/es.set.constructor.js","../../src/plugins/PluginManager.ts","../../src/templates/index.ts","../../src/templates/minute.ts","../../src/templates/hour.ts","../../src/templates/day.ts","../../src/templates/xDay.ts","../../src/templates/ghDay.ts","../../src/templates/week.ts","../../src/templates/month.ts","../../src/templates/year.ts","../../src/TemplateCollection.ts","../../src/CalHeatmap.ts","../../src/version.ts"],"sourcesContent":["'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar toObject = require('../internals/to-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.fill` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.fill\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = lengthOfArrayLike(O);\n var argumentsLength = arguments.length;\n var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length);\n var end = argumentsLength > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fill = require('../internals/array-fill');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// `Array.prototype.fill` method\n// https://tc39.es/ecma262/#sec-array.prototype.fill\n$({ target: 'Array', proto: true }, {\n fill: fill\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('fill');\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","'use strict';\n\nvar has = Object.prototype.hasOwnProperty\n , prefix = '~';\n\n/**\n * Constructor to create a storage for our `EE` objects.\n * An `Events` instance is a plain object whose properties are event names.\n *\n * @constructor\n * @private\n */\nfunction Events() {}\n\n//\n// We try to not inherit from `Object.prototype`. In some engines creating an\n// instance in this way is faster than calling `Object.create(null)` directly.\n// If `Object.create(null)` is not supported we prefix the event names with a\n// character to make sure that the built-in object properties are not\n// overridden or used as an attack vector.\n//\nif (Object.create) {\n Events.prototype = Object.create(null);\n\n //\n // This hack is needed because the `__proto__` property is still inherited in\n // some old browsers like Android 4, iPhone 5.1, Opera 11 and Safari 5.\n //\n if (!new Events().__proto__) prefix = false;\n}\n\n/**\n * Representation of a single event listener.\n *\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} [once=false] Specify if the listener is a one-time listener.\n * @constructor\n * @private\n */\nfunction EE(fn, context, once) {\n this.fn = fn;\n this.context = context;\n this.once = once || false;\n}\n\n/**\n * Add a listener for a given event.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} context The context to invoke the listener with.\n * @param {Boolean} once Specify if the listener is a one-time listener.\n * @returns {EventEmitter}\n * @private\n */\nfunction addListener(emitter, event, fn, context, once) {\n if (typeof fn !== 'function') {\n throw new TypeError('The listener must be a function');\n }\n\n var listener = new EE(fn, context || emitter, once)\n , evt = prefix ? prefix + event : event;\n\n if (!emitter._events[evt]) emitter._events[evt] = listener, emitter._eventsCount++;\n else if (!emitter._events[evt].fn) emitter._events[evt].push(listener);\n else emitter._events[evt] = [emitter._events[evt], listener];\n\n return emitter;\n}\n\n/**\n * Clear event by name.\n *\n * @param {EventEmitter} emitter Reference to the `EventEmitter` instance.\n * @param {(String|Symbol)} evt The Event name.\n * @private\n */\nfunction clearEvent(emitter, evt) {\n if (--emitter._eventsCount === 0) emitter._events = new Events();\n else delete emitter._events[evt];\n}\n\n/**\n * Minimal `EventEmitter` interface that is molded against the Node.js\n * `EventEmitter` interface.\n *\n * @constructor\n * @public\n */\nfunction EventEmitter() {\n this._events = new Events();\n this._eventsCount = 0;\n}\n\n/**\n * Return an array listing the events for which the emitter has registered\n * listeners.\n *\n * @returns {Array}\n * @public\n */\nEventEmitter.prototype.eventNames = function eventNames() {\n var names = []\n , events\n , name;\n\n if (this._eventsCount === 0) return names;\n\n for (name in (events = this._events)) {\n if (has.call(events, name)) names.push(prefix ? name.slice(1) : name);\n }\n\n if (Object.getOwnPropertySymbols) {\n return names.concat(Object.getOwnPropertySymbols(events));\n }\n\n return names;\n};\n\n/**\n * Return the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Array} The registered listeners.\n * @public\n */\nEventEmitter.prototype.listeners = function listeners(event) {\n var evt = prefix ? prefix + event : event\n , handlers = this._events[evt];\n\n if (!handlers) return [];\n if (handlers.fn) return [handlers.fn];\n\n for (var i = 0, l = handlers.length, ee = new Array(l); i < l; i++) {\n ee[i] = handlers[i].fn;\n }\n\n return ee;\n};\n\n/**\n * Return the number of listeners listening to a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Number} The number of listeners.\n * @public\n */\nEventEmitter.prototype.listenerCount = function listenerCount(event) {\n var evt = prefix ? prefix + event : event\n , listeners = this._events[evt];\n\n if (!listeners) return 0;\n if (listeners.fn) return 1;\n return listeners.length;\n};\n\n/**\n * Calls each of the listeners registered for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @returns {Boolean} `true` if the event had listeners, else `false`.\n * @public\n */\nEventEmitter.prototype.emit = function emit(event, a1, a2, a3, a4, a5) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return false;\n\n var listeners = this._events[evt]\n , len = arguments.length\n , args\n , i;\n\n if (listeners.fn) {\n if (listeners.once) this.removeListener(event, listeners.fn, undefined, true);\n\n switch (len) {\n case 1: return listeners.fn.call(listeners.context), true;\n case 2: return listeners.fn.call(listeners.context, a1), true;\n case 3: return listeners.fn.call(listeners.context, a1, a2), true;\n case 4: return listeners.fn.call(listeners.context, a1, a2, a3), true;\n case 5: return listeners.fn.call(listeners.context, a1, a2, a3, a4), true;\n case 6: return listeners.fn.call(listeners.context, a1, a2, a3, a4, a5), true;\n }\n\n for (i = 1, args = new Array(len -1); i < len; i++) {\n args[i - 1] = arguments[i];\n }\n\n listeners.fn.apply(listeners.context, args);\n } else {\n var length = listeners.length\n , j;\n\n for (i = 0; i < length; i++) {\n if (listeners[i].once) this.removeListener(event, listeners[i].fn, undefined, true);\n\n switch (len) {\n case 1: listeners[i].fn.call(listeners[i].context); break;\n case 2: listeners[i].fn.call(listeners[i].context, a1); break;\n case 3: listeners[i].fn.call(listeners[i].context, a1, a2); break;\n case 4: listeners[i].fn.call(listeners[i].context, a1, a2, a3); break;\n default:\n if (!args) for (j = 1, args = new Array(len -1); j < len; j++) {\n args[j - 1] = arguments[j];\n }\n\n listeners[i].fn.apply(listeners[i].context, args);\n }\n }\n }\n\n return true;\n};\n\n/**\n * Add a listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.on = function on(event, fn, context) {\n return addListener(this, event, fn, context, false);\n};\n\n/**\n * Add a one-time listener for a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn The listener function.\n * @param {*} [context=this] The context to invoke the listener with.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.once = function once(event, fn, context) {\n return addListener(this, event, fn, context, true);\n};\n\n/**\n * Remove the listeners of a given event.\n *\n * @param {(String|Symbol)} event The event name.\n * @param {Function} fn Only remove the listeners that match this function.\n * @param {*} context Only remove the listeners that have this context.\n * @param {Boolean} once Only remove one-time listeners.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeListener = function removeListener(event, fn, context, once) {\n var evt = prefix ? prefix + event : event;\n\n if (!this._events[evt]) return this;\n if (!fn) {\n clearEvent(this, evt);\n return this;\n }\n\n var listeners = this._events[evt];\n\n if (listeners.fn) {\n if (\n listeners.fn === fn &&\n (!once || listeners.once) &&\n (!context || listeners.context === context)\n ) {\n clearEvent(this, evt);\n }\n } else {\n for (var i = 0, events = [], length = listeners.length; i < length; i++) {\n if (\n listeners[i].fn !== fn ||\n (once && !listeners[i].once) ||\n (context && listeners[i].context !== context)\n ) {\n events.push(listeners[i]);\n }\n }\n\n //\n // Reset the array, or remove it completely if we have no more listeners.\n //\n if (events.length) this._events[evt] = events.length === 1 ? events[0] : events;\n else clearEvent(this, evt);\n }\n\n return this;\n};\n\n/**\n * Remove all listeners, or those of the specified event.\n *\n * @param {(String|Symbol)} [event] The event name.\n * @returns {EventEmitter} `this`.\n * @public\n */\nEventEmitter.prototype.removeAllListeners = function removeAllListeners(event) {\n var evt;\n\n if (event) {\n evt = prefix ? prefix + event : event;\n if (this._events[evt]) clearEvent(this, evt);\n } else {\n this._events = new Events();\n this._eventsCount = 0;\n }\n\n return this;\n};\n\n//\n// Alias methods names because people roll like that.\n//\nEventEmitter.prototype.off = EventEmitter.prototype.removeListener;\nEventEmitter.prototype.addListener = EventEmitter.prototype.on;\n\n//\n// Expose the prefix.\n//\nEventEmitter.prefixed = prefix;\n\n//\n// Allow `EventEmitter` to be imported as module namespace.\n//\nEventEmitter.EventEmitter = EventEmitter;\n\n//\n// Expose the module.\n//\nif ('undefined' !== typeof module) {\n module.exports = EventEmitter;\n}\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nexport default isArray;\n","import isArray from './isArray.js';\n\n/**\n * Casts `value` as an array if it's not one.\n *\n * @static\n * @memberOf _\n * @since 4.4.0\n * @category Lang\n * @param {*} value The value to inspect.\n * @returns {Array} Returns the cast array.\n * @example\n *\n * _.castArray(1);\n * // => [1]\n *\n * _.castArray({ 'a': 1 });\n * // => [{ 'a': 1 }]\n *\n * _.castArray('abc');\n * // => ['abc']\n *\n * _.castArray(null);\n * // => [null]\n *\n * _.castArray(undefined);\n * // => [undefined]\n *\n * _.castArray();\n * // => []\n *\n * var array = [1, 2, 3];\n * console.log(_.castArray(array) === array);\n * // => true\n */\nfunction castArray() {\n if (!arguments.length) {\n return [];\n }\n var value = arguments[0];\n return isArray(value) ? value : [value];\n}\n\nexport default castArray;\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","import { ScrollDirection } from '../constant';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type DomainCollection from './DomainCollection';\nimport type { Timestamp } from '../index';\n\nexport default class Navigator {\n calendar: CalHeatmap;\n\n minDomainReached: boolean;\n\n maxDomainReached: boolean;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.maxDomainReached = false;\n this.minDomainReached = false;\n }\n\n loadNewDomains(\n newDomainCollection: DomainCollection,\n direction: ScrollDirection = ScrollDirection.SCROLL_NONE,\n ): ScrollDirection {\n const { options } = this.calendar.options;\n const templatesClt = this.calendar.templateCollection;\n const minDate = options.date.min ?\n templatesClt.get(options.domain.type)!.extractUnit(+options.date.min) :\n undefined;\n const maxDate = options.date.max ?\n templatesClt.get(options.domain.type)!.extractUnit(+options.date.max) :\n undefined;\n const { domainCollection } = this.calendar;\n\n if (\n this.#isDomainBoundaryReached(\n newDomainCollection,\n minDate,\n maxDate,\n direction,\n )\n ) {\n return ScrollDirection.SCROLL_NONE;\n }\n\n if (direction !== ScrollDirection.SCROLL_NONE) {\n newDomainCollection\n .clamp(minDate, maxDate)\n .slice(options.range, direction === ScrollDirection.SCROLL_FORWARD);\n }\n\n domainCollection.merge(\n newDomainCollection,\n options.range,\n (domainKey: Timestamp, index: number) => {\n let subDomainEndDate = null;\n if (newDomainCollection.at(index + 1)) {\n subDomainEndDate = newDomainCollection.at(index + 1);\n } else {\n subDomainEndDate = this.calendar.dateHelper\n .intervals(options.domain.type, domainKey, 2)\n .pop();\n }\n return templatesClt\n .get(options.subDomain.type)!\n .mapping(domainKey, subDomainEndDate!)\n .map((d) => ({ ...d, v: options.data.defaultValue }));\n },\n );\n\n this.#setDomainsBoundaryReached(\n domainCollection.min,\n domainCollection.max,\n minDate,\n maxDate,\n );\n\n if (direction === ScrollDirection.SCROLL_BACKWARD) {\n this.calendar.eventEmitter.emit('domainsLoaded', [domainCollection.min]);\n } else if (direction === ScrollDirection.SCROLL_FORWARD) {\n this.calendar.eventEmitter.emit('domainsLoaded', [domainCollection.max]);\n }\n\n return direction;\n }\n\n jumpTo(date: Date, reset: boolean): ScrollDirection {\n const { domainCollection, options } = this.calendar;\n const minDate = new Date(domainCollection.min!);\n const maxDate = new Date(domainCollection.max!);\n\n if (date < minDate) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(date, minDate, false),\n ScrollDirection.SCROLL_BACKWARD,\n );\n }\n if (reset) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(date, options.options.range),\n minDate < date ?\n ScrollDirection.SCROLL_FORWARD :\n ScrollDirection.SCROLL_BACKWARD,\n );\n }\n\n if (date > maxDate) {\n return this.loadNewDomains(\n this.calendar.createDomainCollection(maxDate, date, false),\n ScrollDirection.SCROLL_FORWARD,\n );\n }\n\n return ScrollDirection.SCROLL_NONE;\n }\n\n #isDomainBoundaryReached(\n newDomainCollection: DomainCollection,\n minDate?: Timestamp,\n maxDate?: Timestamp,\n direction?: ScrollDirection,\n ): boolean {\n if (\n maxDate &&\n newDomainCollection.max! >= maxDate &&\n this.maxDomainReached &&\n direction === ScrollDirection.SCROLL_FORWARD\n ) {\n return true;\n }\n\n if (\n minDate &&\n newDomainCollection.min! <= minDate &&\n this.minDomainReached &&\n direction === ScrollDirection.SCROLL_BACKWARD\n ) {\n return true;\n }\n\n return false;\n }\n\n #setDomainsBoundaryReached(\n lowerBound: Timestamp,\n upperBound: Timestamp,\n min?: Timestamp,\n max?: Timestamp,\n ): void {\n if (min) {\n const reached = lowerBound <= min;\n this.calendar.eventEmitter.emit(\n reached ? 'minDateReached' : 'minDateNotReached',\n );\n this.minDomainReached = reached;\n }\n if (max) {\n const reached = upperBound >= max;\n this.calendar.eventEmitter.emit(\n reached ? 'maxDateReached' : 'maxDateNotReached',\n );\n this.maxDomainReached = reached;\n }\n }\n}\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key === key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first === entry) state.first = next;\n if (state.last === entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind === 'keys') return createIterResultObject(entry.key, false);\n if (kind === 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","'use strict';\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","'use strict';\nvar UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar nativeSort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = lengthOfArrayLike(items);\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","import { Position } from '../constant';\nimport type { Padding } from '../options/Options';\n\nexport function isHorizontal(position: string): boolean {\n return position === 'left' || position === 'right';\n}\n\nexport function isVertical(position: string): boolean {\n return position === 'top' || position === 'bottom';\n}\n\nexport function horizontalPadding(padding: Padding): number {\n return padding[Position.LEFT] + padding[Position.RIGHT];\n}\n\nexport function verticalPadding(padding: Padding): number {\n return padding[Position.TOP] + padding[Position.BOTTOM];\n}\n","import { ScrollDirection } from '../constant';\nimport { horizontalPadding, verticalPadding } from '../helpers/PositionHelper';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type DomainPainter from './DomainPainter';\nimport type DomainCollection from '../calendar/DomainCollection';\nimport type { SubDomain, Dimensions, Timestamp } from '../index';\n\ntype SubDomainWithCoordinates = Required & {\n pre_x: number;\n pre_y: number;\n width: number;\n height: number;\n inner_width: number;\n inner_height: number;\n};\n\nexport default class DomainCoordinates {\n calendar: CalHeatmap;\n\n domainPainter: DomainPainter;\n\n collection: Map;\n\n scrollDirection: ScrollDirection;\n\n constructor(calendar: CalHeatmap, domainPainter: DomainPainter) {\n this.calendar = calendar;\n this.domainPainter = domainPainter;\n this.collection = new Map();\n this.scrollDirection = ScrollDirection.SCROLL_FORWARD;\n }\n\n get(domainKey: Timestamp): SubDomainWithCoordinates | undefined {\n return this.collection.get(domainKey);\n }\n\n update(collection: DomainCollection, scrollDirection: ScrollDirection) {\n const { verticalOrientation, domain } = this.calendar.options.options;\n\n this.scrollDirection = scrollDirection;\n const dimensions: Dimensions = {\n width: 0,\n height: 0,\n };\n let exitingTotal = 0;\n let scrollFactor =\n scrollDirection === ScrollDirection.SCROLL_FORWARD ? -1 : 1;\n const { keys } = collection;\n if (this.calendar.options.options.domain.sort === 'desc') {\n keys.reverse();\n scrollFactor *= -1;\n }\n\n collection.yankedDomains.forEach((domainKey: Timestamp) => {\n exitingTotal +=\n this.collection.get(domainKey)![\n verticalOrientation ? 'height' : 'width'\n ];\n });\n collection.yankedDomains.forEach((domainKey: Timestamp) => {\n const coor = this.collection.get(domainKey)!;\n this.collection.set(domainKey, {\n ...coor,\n x: verticalOrientation ? coor.x : coor.x + exitingTotal * scrollFactor,\n y: verticalOrientation ? coor.y + exitingTotal * scrollFactor : coor.y,\n });\n });\n\n keys.forEach((domainKey: Timestamp) => {\n const w = this.#getWidth(domainKey);\n const h = this.#getHeight(domainKey);\n if (verticalOrientation) {\n dimensions.height += h;\n dimensions.width = Math.max(w, dimensions.width);\n } else {\n dimensions.width += w;\n dimensions.height = Math.max(h, dimensions.height);\n }\n\n const x = dimensions.width - w;\n const y = dimensions.height - h;\n\n this.collection.set(domainKey, {\n ...this.collection.get(domainKey)!,\n x: verticalOrientation ? 0 : x,\n y: verticalOrientation ? y : 0,\n pre_x: verticalOrientation ? x : x - exitingTotal * scrollFactor,\n pre_y: verticalOrientation ? y - exitingTotal * scrollFactor : y,\n width: w,\n height: h,\n inner_width: w - (verticalOrientation ? 0 : domain.gutter),\n inner_height: h - (!verticalOrientation ? 0 : domain.gutter),\n });\n });\n\n return dimensions;\n }\n\n /**\n * Return the full width of the domain block\n * @param {number} d Domain start timestamp\n * @return {number} The full width of the domain,\n * including all padding and gutter\n * Used to compute the x position of the domains on the x axis\n */\n #getWidth(d: Timestamp): number {\n const {\n domain, subDomain, x, verticalOrientation,\n } =\n this.calendar.options.options;\n const columnsCount = this.calendar.templateCollection\n .get(subDomain.type)!\n .columnsCount(d);\n\n const subDomainWidth =\n (subDomain.width + subDomain.gutter) * columnsCount - subDomain.gutter;\n\n return (\n horizontalPadding(domain.padding) +\n x.domainHorizontalLabelWidth +\n (verticalOrientation ? 0 : domain.gutter) +\n subDomainWidth\n );\n }\n\n /**\n * Return the full height of the domain block\n * @param {number} d Domain start timestamp\n * @return {number} The full height of the domain,\n * including all paddings and gutter.\n * Used to compute the y position of the domains on the y axis\n */\n #getHeight(d: Timestamp): number {\n const {\n domain, subDomain, x, verticalOrientation,\n } =\n this.calendar.options.options;\n const rowsCount = this.calendar.templateCollection\n .get(subDomain.type)!\n .rowsCount(d);\n\n const subDomainHeight =\n (subDomain.height + subDomain.gutter) * rowsCount - subDomain.gutter;\n\n return (\n verticalPadding(domain.padding) +\n subDomainHeight +\n (verticalOrientation ? domain.gutter : 0) +\n x.domainVerticalLabelHeight\n );\n }\n}\n","import DomainCoordinates from './DomainCoordinates';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { ScrollDirection } from '../constant';\nimport type { Dimensions, Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '.ch-domain';\n\nexport default class DomainPainter {\n calendar: CalHeatmap;\n\n coordinates: DomainCoordinates;\n\n root: any;\n\n dimensions: Dimensions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.coordinates = new DomainCoordinates(calendar, this);\n this.root = null;\n\n // Dimensions of the internal area containing all the domains\n // Excluding all surrounding margins\n this.dimensions = {\n width: 0,\n height: 0,\n };\n }\n\n paint(scrollDirection: ScrollDirection, rootNode: any): Promise[] {\n const { animationDuration } = this.calendar.options.options;\n const t = rootNode.transition().duration(animationDuration);\n const coor = this.coordinates;\n\n this.dimensions = coor.update(\n this.calendar.domainCollection,\n scrollDirection,\n );\n\n const promises: Promise[] = [];\n\n this.root = rootNode\n .selectAll(DEFAULT_SELECTOR)\n .data(this.calendar.domainCollection.keys, (d: Timestamp) => d)\n .join(\n (enter: any) => enter\n .append('svg')\n .attr('x', (d: Timestamp) => coor.get(d)!.pre_x)\n .attr('y', (d: Timestamp) => coor.get(d)!.pre_y)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .attr('class', (d: Timestamp) => this.#getClassName(d))\n .call((enterSelection: any) => enterSelection\n .append('rect')\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .call((enterSelection: any) => promises.push(\n enterSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .end(),\n )),\n (update: any) => update\n .call((updateSelection: any) => promises.push(\n updateSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .end(),\n ))\n .call((updateSelection: any) => promises.push(\n updateSelection\n .selectAll(`${DEFAULT_SELECTOR}-bg`)\n .transition(t)\n .attr('width', (d: Timestamp) => coor.get(d)!.inner_width)\n .attr('height', (d: Timestamp) => coor.get(d)!.inner_height)\n .end(),\n )),\n (exit: any) => exit.call((exitSelection: any) => promises.push(\n exitSelection\n .transition(t)\n .attr('x', (d: Timestamp) => coor.get(d)!.x)\n .attr('y', (d: Timestamp) => coor.get(d)!.y)\n .remove()\n .end(),\n )),\n );\n\n return promises;\n }\n\n #getClassName(d: Timestamp): string {\n let classname = DEFAULT_SELECTOR.slice(1);\n const helper = this.calendar.dateHelper.date(d);\n\n switch (this.calendar.options.options.domain.type) {\n case 'hour':\n classname += ` h_${helper.hour()}`;\n break;\n case 'day':\n classname += ` d_${helper.date()} dy_${helper.format('d') + 1}`;\n break;\n case 'week':\n classname += ` w_${helper.week()}`;\n break;\n case 'month':\n classname += ` m_${helper.month() + 1}`;\n break;\n case 'year':\n classname += ` y_${helper.year()}`;\n break;\n default:\n }\n return classname;\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n // eslint-disable-next-line es/no-array-prototype-includes -- detection\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","import castArray from 'lodash-es/castArray';\n\nimport type { SubDomain } from '../index';\nimport type {\n DataOptions,\n DataGroupType,\n DataRecord,\n} from '../options/Options';\nimport { DomainType, Timestamp } from '../index';\nimport type DateHelper from '../helpers/DateHelper';\n\nexport const DOMAIN_FORMAT: Record = {\n year: 'YYYY',\n month: 'MMMM',\n week: 'wo [week] YYYY',\n xDay: 'Do MMM',\n ghDay: 'Do MMM',\n day: 'Do MMM',\n hour: 'HH:00',\n minute: 'HH:mm',\n};\n\ntype GroupedRecords = Map;\ntype ValueType = string | number | null;\n\nexport default class DomainCollection {\n collection: Map;\n\n dateHelper: DateHelper;\n\n min: Timestamp;\n\n max: Timestamp;\n\n keys: Timestamp[];\n\n yankedDomains: Timestamp[];\n\n constructor(\n dateHelper: DateHelper,\n interval?: DomainType,\n start?: Date | Timestamp,\n range?: Date | Timestamp,\n excludeEnd: boolean = false,\n ) {\n this.collection = new Map();\n this.dateHelper = dateHelper;\n\n if (interval && start && range) {\n const ts = this.dateHelper\n .intervals(interval, start, range, excludeEnd)\n .map((d: Timestamp) => castArray(d));\n\n // @ts-ignore\n this.collection = new Map(ts);\n }\n\n this.min = 0;\n this.max = 0;\n this.keys = [];\n this.yankedDomains = [];\n\n if (this.collection.size > 0) {\n this.#refreshKeys();\n }\n }\n\n has(key: Timestamp): boolean {\n return this.collection.has(key);\n }\n\n get(key: Timestamp) {\n return this.collection.get(key);\n }\n\n forEach(callback: any) {\n return this.collection.forEach(callback);\n }\n\n at(index: number): Timestamp {\n return this.keys[index];\n }\n\n clamp(minDate?: Timestamp, maxDate?: Timestamp): DomainCollection {\n if (minDate && this.min! < minDate) {\n this.keys\n .filter((key) => key < minDate)\n .forEach((d) => this.collection.delete(d));\n }\n\n if (maxDate && this.max! > maxDate) {\n this.keys\n .filter((key) => key > maxDate)\n .forEach((d) => this.collection.delete(d));\n }\n\n this.#refreshKeys();\n\n return this;\n }\n\n merge(\n newCollection: DomainCollection,\n limit: number,\n createValueCallback: Function,\n ): void {\n this.yankedDomains = [];\n\n newCollection.keys.forEach((domainKey, index) => {\n if (this.has(domainKey)) {\n return;\n }\n\n if (this.collection.size >= limit) {\n let keyToRemove = this.max;\n\n if (domainKey > this.max!) {\n keyToRemove = this.min;\n }\n\n if (keyToRemove && this.collection.delete(keyToRemove)) {\n this.yankedDomains.push(keyToRemove);\n }\n }\n this.collection.set(domainKey, createValueCallback(domainKey, index));\n this.#refreshKeys();\n });\n this.yankedDomains = this.yankedDomains.sort((a, b) => a - b);\n }\n\n slice(limit: number = 0, fromBeginning: boolean = true): DomainCollection {\n if (this.keys.length > limit) {\n const keysToDelete = fromBeginning ?\n this.keys.slice(0, -limit) :\n this.keys.slice(limit);\n\n keysToDelete.forEach((key) => {\n this.collection.delete(key);\n });\n\n this.#refreshKeys();\n }\n\n return this;\n }\n\n fill(\n data: DataRecord[],\n {\n x,\n y,\n groupY,\n defaultValue,\n }: {\n x: DataOptions['x'];\n y: DataOptions['y'];\n groupY: DataOptions['groupY'];\n defaultValue: DataOptions['defaultValue'];\n },\n subDomainKeyExtractor: Function,\n ): void {\n const groupedRecords: GroupedRecords = this.groupRecords(\n data,\n x,\n subDomainKeyExtractor,\n );\n\n this.keys.forEach((domainKey) => {\n const records = groupedRecords.get(domainKey) || {};\n this.#setSubDomainValues(domainKey, records, y, groupY, defaultValue);\n });\n }\n\n #setSubDomainValues(\n domainKey: Timestamp,\n records: { [key: string]: DataRecord[] },\n y: DataOptions['y'],\n groupY: DataOptions['groupY'],\n defaultValue: DataOptions['defaultValue'],\n ): void {\n this.get(domainKey)!.forEach((subDomain: SubDomain, index: number) => {\n let value: ValueType = defaultValue;\n if (records.hasOwnProperty(subDomain.t)) {\n value = this.groupValues(\n this.#extractValues(records[subDomain.t], y),\n groupY,\n );\n }\n\n this.get(domainKey)![index].v = value;\n });\n }\n\n groupRecords(\n data: DataRecord[],\n x: DataOptions['x'],\n subDomainKeyExtractor: Function,\n ): GroupedRecords {\n const results: GroupedRecords = new Map();\n const validSubDomainTimestamp: Map = new Map();\n this.keys.forEach((domainKey) => {\n this.get(domainKey)!.forEach((subDomain: SubDomain) => {\n validSubDomainTimestamp.set(subDomain.t, domainKey);\n });\n });\n\n data.forEach((d) => {\n const timestamp = this.extractTimestamp(d, x, subDomainKeyExtractor);\n\n if (validSubDomainTimestamp.has(timestamp)) {\n const domainKey = validSubDomainTimestamp.get(timestamp)!;\n const records = results.get(domainKey) || {};\n records[timestamp] ||= [];\n records[timestamp].push(d);\n\n results.set(domainKey, records);\n }\n });\n\n return results;\n }\n\n // eslint-disable-next-line class-methods-use-this\n #extractValues(data: DataRecord[], y: string | Function): ValueType[] {\n return data.map((d): ValueType => (typeof y === 'function' ? y(d) : d[y]));\n }\n\n // eslint-disable-next-line class-methods-use-this\n groupValues(\n values: ValueType[],\n groupFn: DataGroupType | ((values: ValueType[]) => ValueType),\n ): ValueType {\n const cleanedValues = values.filter((n) => n !== null);\n\n if (typeof groupFn === 'string') {\n if (cleanedValues.every((n) => typeof n === 'number')) {\n switch (groupFn) {\n case 'sum':\n return (cleanedValues as number[]).reduce((a, b) => a + b, 0);\n case 'count':\n return cleanedValues.length;\n case 'min':\n return Math.min(...(cleanedValues as number[])) || null;\n case 'max':\n return Math.max(...(cleanedValues as number[])) || null;\n case 'average':\n return cleanedValues.length > 0 ?\n (cleanedValues as number[]).reduce((a, b) => a + b, 0) /\n cleanedValues.length :\n null;\n default:\n return null;\n }\n }\n\n switch (groupFn) {\n case 'count':\n return cleanedValues.length;\n default:\n return null;\n }\n } else if (typeof groupFn === 'function') {\n return groupFn(cleanedValues);\n }\n\n return null;\n }\n\n // eslint-disable-next-line class-methods-use-this\n extractTimestamp(\n datum: DataRecord,\n x: string | Function,\n extractorFn: Function,\n ): Timestamp {\n let timestamp: string | Timestamp =\n typeof x === 'function' ? x(datum) : datum[x];\n\n if (typeof timestamp === 'string') {\n timestamp = +new Date(timestamp);\n }\n\n return extractorFn(timestamp);\n }\n\n #refreshKeys(): Timestamp[] {\n this.keys = Array.from(this.collection.keys())\n .map((d: any) => parseInt(d, 10))\n .sort((a, b) => a - b);\n\n const { keys } = this;\n // eslint-disable-next-line prefer-destructuring\n this.min = keys[0];\n this.max = keys[keys.length - 1];\n\n return this.keys;\n }\n}\n","import { Position } from '../constant';\nimport {\n isVertical,\n verticalPadding,\n horizontalPadding,\n} from '../helpers/PositionHelper';\nimport { DOMAIN_FORMAT } from '../calendar/DomainCollection';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '.ch-domain-text';\n\nexport default class DomainLabelPainter {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n paint(root: any): void {\n const { label, type } = this.calendar.options.options.domain;\n const { dateHelper } = this.calendar;\n let format = label.text;\n if (format === null || format === '') {\n return;\n }\n\n if (typeof format === 'undefined') {\n format = DOMAIN_FORMAT[type];\n }\n\n root\n .selectAll(DEFAULT_SELECTOR)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('text')\n .attr('class', DEFAULT_SELECTOR.slice(1))\n .attr('x', (d: Timestamp) => this.#getX(d))\n .attr('y', (d: Timestamp) => this.#getY(d))\n .attr('text-anchor', label.textAlign)\n .attr('dominant-baseline', () => this.#textVerticalAlign())\n .text((d: Timestamp, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n dateHelper.format(d, format!, nodes[i]))\n .call((selection: any) => this.#domainRotate(selection)),\n (update: any) => {\n update\n .attr('x', (d: Timestamp) => this.#getX(d))\n .attr('y', (d: Timestamp) => this.#getY(d))\n .attr('text-anchor', label.textAlign)\n .attr('dominant-baseline', () => this.#textVerticalAlign())\n .text((d: Timestamp, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n dateHelper.format(d, format!, nodes[i]))\n .call((selection: any) => this.#domainRotate(selection));\n },\n );\n }\n\n #textVerticalAlign(): string {\n const { position, rotate } = this.calendar.options.options.domain.label;\n\n if (isVertical(position)) {\n return 'middle';\n }\n\n if (\n (rotate === 'left' && position === 'left') ||\n (rotate === 'right' && position === 'right')\n ) {\n return 'bottom';\n }\n\n return 'hanging';\n }\n\n #getX(d: Timestamp): number {\n const {\n padding,\n label: { position, textAlign, offset },\n } = this.calendar.options.options.domain;\n const { domainHorizontalLabelWidth } = this.calendar.options.options.x;\n\n let x = padding[Position.LEFT];\n\n if (position === 'right') {\n x += this.#getDomainInsideWidth(d);\n }\n\n if (textAlign === 'middle') {\n if (['top', 'bottom'].includes(position)) {\n x += this.#getDomainInsideWidth(d) / 2;\n } else {\n x += domainHorizontalLabelWidth / 2;\n }\n }\n\n if (textAlign === 'end') {\n if (isVertical(position)) {\n x += this.#getDomainInsideWidth(d);\n } else {\n x += domainHorizontalLabelWidth;\n }\n }\n\n return x + offset.x;\n }\n\n #getY(d: Timestamp): number {\n const {\n domain: {\n label: { position, offset },\n padding,\n },\n x,\n } = this.calendar.options.options;\n\n let y = padding[Position.TOP] + x.domainVerticalLabelHeight / 2;\n\n if (position === 'bottom') {\n y += this.#getDomainInsideHeight(d);\n }\n\n return y + offset.y;\n }\n\n #getDomainInsideWidth(d: Timestamp): number {\n const {\n domain: { padding },\n x: { domainHorizontalLabelWidth },\n } = this.calendar.options.options;\n const { coordinates } =\n this.calendar.calendarPainter.domainsContainerPainter.domainPainter;\n\n return (\n coordinates.get(d)!.inner_width -\n domainHorizontalLabelWidth -\n horizontalPadding(padding)\n );\n }\n\n #getDomainInsideHeight(d: Timestamp): number {\n const {\n x: { domainVerticalLabelHeight },\n domain: { padding },\n } = this.calendar.options.options;\n const { coordinates } =\n this.calendar.calendarPainter.domainsContainerPainter.domainPainter;\n\n return (\n coordinates.get(d)!.inner_height -\n domainVerticalLabelHeight -\n verticalPadding(padding)\n );\n }\n\n #domainRotate(selection: any) {\n const {\n domain: {\n label: { rotate, textAlign, position },\n },\n x,\n } = this.calendar.options.options;\n const labelWidth = x.domainHorizontalLabelWidth;\n\n switch (rotate) {\n // Rotating the text clockwise\n case 'right':\n selection.attr('transform', (d: Timestamp) => {\n const domainWidth = this.#getDomainInsideWidth(d);\n const domainHeight = this.#getDomainInsideHeight(d);\n const s = [\n `rotate(90, ${position === 'right' ? domainWidth : labelWidth}, 0)`,\n ];\n\n switch (position) {\n case 'right':\n if (textAlign === 'middle') {\n s.push(`translate(${domainHeight / 2 - labelWidth / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(${domainHeight - labelWidth})`);\n }\n break;\n case 'left':\n if (textAlign === 'start') {\n s.push(`translate(${labelWidth})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(${labelWidth / 2 + domainHeight / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(${domainHeight})`);\n }\n break;\n default:\n }\n\n return s.join(',');\n });\n break;\n // Rotating the text anticlockwise\n case 'left':\n selection.attr('transform', (d: Timestamp) => {\n const domainWidth = this.#getDomainInsideWidth(d);\n const domainHeight = this.#getDomainInsideHeight(d);\n const s = [\n `rotate(270, ${\n position === 'right' ? domainWidth : labelWidth\n }, 0)`,\n ];\n\n switch (position) {\n case 'right':\n if (textAlign === 'start') {\n s.push(`translate(-${domainHeight})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(-${domainHeight / 2 + labelWidth / 2})`);\n } else if (textAlign === 'end') {\n s.push(`translate(-${labelWidth})`);\n }\n break;\n case 'left':\n if (textAlign === 'start') {\n s.push(`translate(${labelWidth - domainHeight})`);\n } else if (textAlign === 'middle') {\n s.push(`translate(${labelWidth / 2 - domainHeight / 2})`);\n }\n break;\n default:\n }\n\n return s.join(',');\n });\n break;\n default:\n }\n }\n}\n","'use strict';\n// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { Position } from '../constant';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp, SubDomain } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-subdomain';\nconst HIGHLIGHT_CLASSNAME = 'highlight';\n\nexport default class SubDomainPainter {\n calendar: CalHeatmap;\n\n root: any;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n }\n\n paint(root: any): void {\n this.root = root || this.root;\n const containerClassname = `${DEFAULT_SELECTOR}-container`;\n\n const subDomainSvgGroup = this.root\n .selectAll(containerClassname)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('svg')\n .call((selection: any) => this.#setPositions(selection))\n .attr('class', containerClassname.slice(1)),\n\n (update: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n update.call((selection: any) => this.#setPositions(selection)),\n );\n\n const {\n subDomain: {\n radius, width, height, sort,\n },\n } = this.calendar.options.options;\n const evt = this.calendar.eventEmitter;\n\n subDomainSvgGroup\n .selectAll('g')\n .data((d: Timestamp) => {\n const subDomainsCollection: SubDomain[] =\n this.calendar.domainCollection.get(d)!;\n if (sort === 'desc') {\n const max = Math.max(\n ...subDomainsCollection.map((s: SubDomain) => s.x),\n );\n subDomainsCollection.forEach((s: SubDomain, i: number) => {\n subDomainsCollection[i].x = Math.abs(s.x - max);\n });\n }\n\n return subDomainsCollection;\n })\n .join(\n (enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .insert('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .on('click', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('click', ev, d.t, d.v))\n .on('mouseover', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseover', ev, d.t, d.v))\n .on('mouseout', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseout', ev, d.t, d.v))\n .attr('rx', radius > 0 ? radius : null)\n .attr('ry', radius > 0 ? radius : null))\n .call((selection: any) => this.#appendText(selection)),\n (update: any) => update\n .selectAll('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .attr('rx', radius)\n .attr('ry', radius),\n );\n }\n\n /**\n * Set the subDomain group X and Y position\n * @param {d3-selection} selection A d3-selection object\n */\n #setPositions(selection: any): void {\n const { options } = this.calendar.options;\n const {\n padding,\n label: { position },\n } = options.domain;\n\n selection\n .attr('x', () => {\n let pos = padding[Position.LEFT];\n if (position === 'left') {\n pos += options.x.domainHorizontalLabelWidth;\n }\n return pos;\n })\n .attr('y', () => {\n let pos = padding[Position.TOP];\n if (position === 'top') {\n pos += options.x.domainVerticalLabelHeight;\n }\n return pos;\n });\n }\n\n /**\n * Return a classname if the specified date should be highlighted\n *\n * @param {number} timestamp Unix timestamp of the current subDomain\n * @return {String} the highlight class\n */\n #classname(timestamp: Timestamp, ...otherClasses: string[]): string {\n const {\n date: { highlight },\n subDomain: { type },\n } = this.calendar.options.options;\n let classname = '';\n\n if (highlight.length > 0) {\n highlight.forEach((d) => {\n const unitFn = this.calendar.templateCollection.get(type).extractUnit;\n\n if (unitFn(+d) === unitFn(timestamp)) {\n classname = HIGHLIGHT_CLASSNAME;\n }\n });\n }\n\n return [classname, ...otherClasses].join(' ').trim();\n }\n\n #appendText(elem: any) {\n const { width, height, label } = this.calendar.options.options.subDomain;\n\n if (!label) {\n return null;\n }\n\n return elem\n .append('text')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-text`))\n .attr('x', (d: SubDomain) => this.#getX(d) + width / 2)\n .attr('y', (d: SubDomain) => this.#getY(d) + height / 2)\n .attr('text-anchor', 'middle')\n .attr('dominant-baseline', 'central')\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.format(d.t, label, d.v, nodes[i]));\n }\n\n #getCoordinates(axis: 'x' | 'y', d: SubDomain): number {\n const { subDomain } = this.calendar.options.options;\n return (\n d[axis] *\n (subDomain[axis === 'x' ? 'width' : 'height'] + subDomain.gutter)\n );\n }\n\n #getX(d: SubDomain): number {\n return this.#getCoordinates('x', d);\n }\n\n #getY(d: SubDomain): number {\n return this.#getCoordinates('y', d);\n }\n}\n","import { select } from 'd3-selection';\nimport DomainPainter from './DomainPainter';\nimport DomainLabelPainter from './DomainLabelPainter';\nimport SubDomainPainter from '../subDomain/SubDomainPainter';\nimport { ScrollDirection } from '../constant';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Dimensions } from '../index';\n\nconst BASE_SELECTOR = '.ch-domain-container';\nconst TRANSITION_CLASSNAME = 'in-transition';\n\nclass DomainsContainerPainter {\n calendar: CalHeatmap;\n\n domainPainter: DomainPainter;\n\n domainLabelPainter: DomainLabelPainter;\n\n subDomainPainter: SubDomainPainter;\n\n dimensions: Dimensions;\n\n root: any;\n\n transitionsQueueCount: number;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n\n this.domainPainter = new DomainPainter(calendar);\n this.subDomainPainter = new SubDomainPainter(calendar);\n this.domainLabelPainter = new DomainLabelPainter(calendar);\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.transitionsQueueCount = 0;\n }\n\n setup() {\n this.root = this.calendar.calendarPainter.root\n .attr('x', 0)\n .attr('y', 0)\n .append('svg')\n .attr('class', BASE_SELECTOR.slice(1))\n .append('svg')\n .attr('class', `${BASE_SELECTOR.slice(1)}-animation-wrapper`);\n }\n\n paint(scrollDirection: ScrollDirection): Promise[] {\n this.#startAnimation();\n\n const result = this.domainPainter.paint(scrollDirection, this.root);\n this.subDomainPainter.paint(this.domainPainter.root);\n this.domainLabelPainter.paint(this.domainPainter.root);\n\n this.#recomputeDimensions();\n\n Promise.allSettled(result).then(() => {\n this.#endAnimation();\n });\n\n return result;\n }\n\n updatePosition() {\n if (!this.root?.node()) {\n return Promise.resolve();\n }\n\n const { animationDuration } = this.calendar.options.options;\n const topHeight = this.calendar.pluginManager.getHeightFromPosition('top');\n const leftWidth = this.calendar.pluginManager.getWidthFromPosition('left');\n\n return [\n select(this.root.node().parentNode)\n .transition()\n .duration(animationDuration)\n .call((selection: any) => {\n selection.attr('x', leftWidth).attr('y', topHeight);\n })\n .end(),\n ];\n }\n\n width(): Dimensions['width'] {\n return this.dimensions.width;\n }\n\n height(): Dimensions['height'] {\n return this.dimensions.height;\n }\n\n destroy(): Promise {\n this.#startAnimation();\n\n return Promise.resolve();\n }\n\n #startAnimation() {\n if (this.root?.node()) {\n this.transitionsQueueCount += 1;\n select(this.root.node().parentNode).classed(TRANSITION_CLASSNAME, true);\n }\n }\n\n #endAnimation() {\n if (this.root?.node()) {\n this.transitionsQueueCount -= 1;\n\n if (this.transitionsQueueCount === 0) {\n select(this.root.node().parentNode).classed(\n TRANSITION_CLASSNAME,\n false,\n );\n }\n }\n }\n\n #recomputeDimensions(): void {\n const {\n animationDuration,\n verticalOrientation,\n domain: { gutter },\n } = this.calendar.options.options;\n const { dimensions: domainsDimensions } = this.domainPainter;\n\n this.dimensions = {\n width: domainsDimensions.width - (verticalOrientation ? 0 : gutter),\n height: domainsDimensions.height - (!verticalOrientation ? 0 : gutter),\n };\n\n this.root\n .transition()\n .duration(animationDuration)\n .attr('width', this.dimensions.width)\n .attr('height', this.dimensions.height);\n }\n}\n\nexport default DomainsContainerPainter;\n","import type CalHeatmap from '../CalHeatmap';\n\nclass PluginPainter {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n paint(): Promise[] {\n let promises: Promise[] = [];\n\n promises = promises.concat(this.calendar.pluginManager.paintAll());\n promises = promises.concat(this.setPluginsPosition());\n\n return promises;\n }\n\n setPluginsPosition(): Promise[] {\n const { pluginManager } = this.calendar;\n const { animationDuration } = this.calendar.options.options;\n const { domainsContainerPainter } = this.calendar.calendarPainter;\n\n const top = pluginManager.getFromPosition('top');\n const right = pluginManager.getFromPosition('right');\n const bottom = pluginManager.getFromPosition('bottom');\n const left = pluginManager.getFromPosition('left');\n\n const topHeight = pluginManager.getHeightFromPosition('top');\n const leftWidth = pluginManager.getWidthFromPosition('left');\n\n const promises: Promise[] = [];\n\n let topOffset = 0;\n top.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('y', topOffset)\n .attr('x', leftWidth)\n .end(),\n );\n topOffset += plugin.options.dimensions!.height;\n });\n\n let leftOffset = 0;\n left.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftOffset)\n .attr('y', topHeight)\n .end(),\n );\n leftOffset += plugin.options.dimensions!.width;\n });\n\n bottom.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftWidth)\n .attr('y', topHeight + domainsContainerPainter.height())\n .end(),\n );\n });\n\n leftOffset += domainsContainerPainter.width();\n\n right.forEach((plugin) => {\n promises.push(\n plugin.root\n .transition()\n .duration(animationDuration)\n .attr('x', leftOffset)\n .attr('y', topHeight)\n .end(),\n );\n leftOffset += plugin.options.dimensions!.width;\n });\n\n return promises;\n }\n\n insideWidth() {\n return (\n this.calendar.pluginManager.getWidthFromPosition('left') +\n this.calendar.pluginManager.getWidthFromPosition('right')\n );\n }\n\n insideHeight() {\n return (\n this.calendar.pluginManager.getHeightFromPosition('top') +\n this.calendar.pluginManager.getHeightFromPosition('bottom')\n );\n }\n}\n\nexport default PluginPainter;\n","import { select } from 'd3-selection';\n\nimport DomainsContainerPainter from '../domain/DomainsContainerPainter';\nimport PluginPainter from '../plugins/PluginPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport { ScrollDirection } from '../constant';\nimport type { Dimensions } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-container';\n\nexport default class CalendarPainter {\n calendar: CalHeatmap;\n\n dimensions: Dimensions;\n\n root: any;\n\n domainsContainerPainter: DomainsContainerPainter;\n\n pluginPainter: PluginPainter;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.root = null;\n this.domainsContainerPainter = new DomainsContainerPainter(calendar);\n this.pluginPainter = new PluginPainter(calendar);\n }\n\n setup(): boolean {\n const { itemSelector, theme } = this.calendar.options.options;\n\n if (!this.root) {\n this.root = select(itemSelector)\n .append('svg')\n .attr('data-theme', theme)\n .attr('class', DEFAULT_SELECTOR.slice(1));\n this.domainsContainerPainter.setup();\n }\n\n this.calendar.pluginManager.setupAll();\n\n return true;\n }\n\n paint(navigationDir: ScrollDirection = ScrollDirection.SCROLL_NONE) {\n const transitions = this.domainsContainerPainter\n .paint(navigationDir)\n .concat(this.pluginPainter.paint())\n .concat(this.domainsContainerPainter.updatePosition());\n\n this.#resize();\n\n return Promise.allSettled(transitions);\n }\n\n #getHeight(): Dimensions['height'] {\n return (\n this.domainsContainerPainter.height() + this.pluginPainter.insideHeight()\n );\n }\n\n #getWidth(): Dimensions['width'] {\n return (\n this.domainsContainerPainter.width() + this.pluginPainter.insideWidth()\n );\n }\n\n #resize(): void {\n const { options } = this.calendar.options;\n\n const newWidth = this.#getWidth();\n const newHeight = this.#getHeight();\n\n this.root\n .transition()\n .duration(options.animationDuration)\n .attr('width', newWidth)\n .attr('height', newHeight);\n\n if (\n newWidth !== this.dimensions.width ||\n newHeight !== this.dimensions.height\n ) {\n this.calendar.eventEmitter.emit(\n 'resize',\n newWidth,\n newHeight,\n this.dimensions.width,\n this.dimensions.height,\n );\n }\n\n this.dimensions = {\n width: newWidth,\n height: newHeight,\n };\n }\n\n destroy(): Promise {\n const result: Promise[] = this.calendar.pluginManager\n .destroyAll()\n .concat(this.domainsContainerPainter.destroy());\n\n if (!this.root) {\n return Promise.allSettled(result);\n }\n\n result.push(\n this.root\n .transition()\n .duration(this.calendar.options.options.animationDuration)\n .attr('width', 0)\n .attr('height', 0)\n .remove()\n .end(),\n );\n\n return Promise.allSettled(result);\n }\n}\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nexport default freeGlobal;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nexport default root;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nexport default Symbol;\n","import Symbol from './_Symbol.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nexport default getRawTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nexport default objectToString;\n","import Symbol from './_Symbol.js';\nimport getRawTag from './_getRawTag.js';\nimport objectToString from './_objectToString.js';\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nexport default baseGetTag;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isObject from './isObject.js';\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nexport default isFunction;\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-startswith -- safe\nvar nativeStartsWith = uncurryThis(''.startsWith);\nvar stringSlice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = toString(searchString);\n return nativeStartsWith\n ? nativeStartsWith(that, search, index)\n : stringSlice(that, index, index + search.length) === search;\n }\n});\n","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw new $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// in some IE versions, `propertyIsEnumerable` returns incorrect result on integer keys\n// of `null` prototype objects\nvar IE_BUG = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-create -- safe\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n});\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","// @ts-ignore\nimport { scale } from '@observablehq/plot';\nimport { OptionsType } from './options/Options';\nimport { SCALE_BASE_OPACITY_COLOR } from './constant';\n\nimport type { SubDomain } from './index';\n\ntype ValueType = string | number | undefined;\n\nexport function normalizedScale(scaleOptions: OptionsType['scale']): any {\n try {\n const scaleType = Object.keys(scaleOptions!)[0];\n\n return scale({\n [scaleType]: {\n ...scaleOptions![scaleType as 'color' | 'opacity'],\n clamp: true,\n },\n });\n } catch (error) {\n return null;\n }\n}\n\nfunction scaleStyle(_scale: any, scaleOptions: OptionsType['scale']) {\n const styles: { fill?: Function; 'fill-opacity'?: Function } = {};\n\n if (scaleOptions!.hasOwnProperty('opacity')) {\n styles.fill = () =>\n // eslint-disable-next-line implicit-arrow-linebreak\n scaleOptions!.opacity!.baseColor || SCALE_BASE_OPACITY_COLOR;\n styles['fill-opacity'] = (d: ValueType) => _scale?.apply(d);\n } else {\n styles.fill = (d: ValueType) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n (typeof d === 'string' && d?.startsWith('#') ? d : _scale?.apply(d));\n }\n\n return styles;\n}\n\nexport function applyScaleStyle(\n elem: any,\n _scale: any,\n scaleOptions: OptionsType['scale'],\n keyname?: string,\n) {\n Object.entries(scaleStyle(_scale, scaleOptions)).forEach(([prop, val]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n elem.style(prop, (d: SubDomain | string) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n val(keyname ? (d as SubDomain)[keyname as keyof SubDomain] : d)));\n}\n","import isFunction from 'lodash-es/isFunction';\nimport { hcl } from 'd3-color';\nimport { normalizedScale, applyScaleStyle } from '../scale';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { SubDomain, Timestamp } from '../index';\n\nexport default class Populator {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n populate(): void {\n const { calendar } = this;\n const { scale, subDomain } = calendar.options.options;\n const colorScale = normalizedScale(scale);\n\n calendar.calendarPainter\n .root!.selectAll('.ch-domain')\n .selectAll('svg')\n .selectAll('g')\n .data((d: Timestamp) => calendar.domainCollection.get(d) || [])\n .call((element: any) => {\n applyScaleStyle(element.select('rect'), colorScale, scale!, 'v');\n })\n .call((element: any) => {\n element\n .select('text')\n .attr('style', (d: SubDomain) => {\n const defaultColor =\n hcl(colorScale?.apply(d.v)).l > 60 ? '#000' : '#fff';\n let color = subDomain.color || (d.v ? defaultColor : null);\n\n if (isFunction(color)) {\n color = color(d.t, d.v, colorScale?.apply(d.v));\n }\n\n if (!color) {\n return null;\n }\n\n return `fill: ${color};`;\n })\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n calendar.dateHelper.format(d.t, subDomain.label, d.v, nodes[i]));\n })\n .call(() => {\n calendar.eventEmitter.emit('fill');\n });\n }\n}\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nexport default eq;\n","import eq from './eq.js';\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nexport default assocIndexOf;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nexport default listCacheDelete;\n","import listCacheClear from './_listCacheClear.js';\nimport listCacheDelete from './_listCacheDelete.js';\nimport listCacheGet from './_listCacheGet.js';\nimport listCacheHas from './_listCacheHas.js';\nimport listCacheSet from './_listCacheSet.js';\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nexport default ListCache;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nexport default listCacheClear;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nexport default listCacheGet;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nexport default listCacheHas;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nexport default listCacheSet;\n","import root from './_root.js';\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nexport default coreJsData;\n","import coreJsData from './_coreJsData.js';\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nexport default isMasked;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nexport default toSource;\n","import isFunction from './isFunction.js';\nimport isMasked from './_isMasked.js';\nimport isObject from './isObject.js';\nimport toSource from './_toSource.js';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nexport default baseIsNative;\n","import baseIsNative from './_baseIsNative.js';\nimport getValue from './_getValue.js';\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nexport default getNative;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nexport default getValue;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nexport default Map;\n","import getNative from './_getNative.js';\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nexport default nativeCreate;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nexport default hashGet;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nexport default hashHas;\n","import hashClear from './_hashClear.js';\nimport hashDelete from './_hashDelete.js';\nimport hashGet from './_hashGet.js';\nimport hashHas from './_hashHas.js';\nimport hashSet from './_hashSet.js';\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nexport default Hash;\n","import isKeyable from './_isKeyable.js';\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nexport default getMapData;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nexport default isKeyable;\n","import mapCacheClear from './_mapCacheClear.js';\nimport mapCacheDelete from './_mapCacheDelete.js';\nimport mapCacheGet from './_mapCacheGet.js';\nimport mapCacheHas from './_mapCacheHas.js';\nimport mapCacheSet from './_mapCacheSet.js';\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nexport default MapCache;\n","import nativeCreate from './_nativeCreate.js';\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nexport default hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default hashDelete;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nexport default hashSet;\n","import Hash from './_Hash.js';\nimport ListCache from './_ListCache.js';\nimport Map from './_Map.js';\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nexport default mapCacheClear;\n","import getMapData from './_getMapData.js';\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default mapCacheDelete;\n","import getMapData from './_getMapData.js';\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nexport default mapCacheGet;\n","import getMapData from './_getMapData.js';\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nexport default mapCacheHas;\n","import getMapData from './_getMapData.js';\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nexport default mapCacheSet;\n","import ListCache from './_ListCache.js';\nimport stackClear from './_stackClear.js';\nimport stackDelete from './_stackDelete.js';\nimport stackGet from './_stackGet.js';\nimport stackHas from './_stackHas.js';\nimport stackSet from './_stackSet.js';\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nexport default Stack;\n","import ListCache from './_ListCache.js';\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nexport default stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nexport default stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nexport default stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nexport default stackHas;\n","import ListCache from './_ListCache.js';\nimport Map from './_Map.js';\nimport MapCache from './_MapCache.js';\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nexport default stackSet;\n","import getNative from './_getNative.js';\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nexport default defineProperty;\n","import defineProperty from './_defineProperty.js';\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nexport default baseAssignValue;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignMergeValue;\n","import createBaseFor from './_createBaseFor.js';\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nexport default baseFor;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nexport default createBaseFor;\n","import root from './_root.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nexport default cloneBuffer;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nexport default Uint8Array;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nexport default cloneTypedArray;\n","import Uint8Array from './_Uint8Array.js';\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nexport default cloneArrayBuffer;\n","import isObject from './isObject.js';\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nexport default baseCreate;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nexport default overArg;\n","import overArg from './_overArg.js';\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nexport default getPrototype;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nexport default isPrototype;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nexport default isObjectLike;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nexport default baseIsArguments;\n","import baseIsArguments from './_baseIsArguments.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nexport default isArguments;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nexport default isLength;\n","import isFunction from './isFunction.js';\nimport isLength from './isLength.js';\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nexport default isArrayLike;\n","import root from './_root.js';\nimport stubFalse from './stubFalse.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nexport default isBuffer;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nexport default stubFalse;\n","import baseGetTag from './_baseGetTag.js';\nimport getPrototype from './_getPrototype.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nexport default isPlainObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isLength from './isLength.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nexport default baseIsTypedArray;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nexport default nodeUtil;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nexport default baseUnary;\n","import baseIsTypedArray from './_baseIsTypedArray.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nexport default isTypedArray;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nexport default safeGet;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignValue;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nexport default isIndex;\n","import baseTimes from './_baseTimes.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isIndex from './_isIndex.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default arrayLikeKeys;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nexport default baseTimes;\n","import isObject from './isObject.js';\nimport isPrototype from './_isPrototype.js';\nimport nativeKeysIn from './_nativeKeysIn.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeysIn;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default nativeKeysIn;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeysIn from './_baseKeysIn.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nexport default keysIn;\n","import copyObject from './_copyObject.js';\nimport keysIn from './keysIn.js';\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nexport default toPlainObject;\n","import assignValue from './_assignValue.js';\nimport baseAssignValue from './_baseAssignValue.js';\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nexport default copyObject;\n","import assignMergeValue from './_assignMergeValue.js';\nimport cloneBuffer from './_cloneBuffer.js';\nimport cloneTypedArray from './_cloneTypedArray.js';\nimport copyArray from './_copyArray.js';\nimport initCloneObject from './_initCloneObject.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isArrayLikeObject from './isArrayLikeObject.js';\nimport isBuffer from './isBuffer.js';\nimport isFunction from './isFunction.js';\nimport isObject from './isObject.js';\nimport isPlainObject from './isPlainObject.js';\nimport isTypedArray from './isTypedArray.js';\nimport safeGet from './_safeGet.js';\nimport toPlainObject from './toPlainObject.js';\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\nexport default baseMergeDeep;\n","import isArrayLike from './isArrayLike.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nexport default isArrayLikeObject;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nexport default copyArray;\n","import baseCreate from './_baseCreate.js';\nimport getPrototype from './_getPrototype.js';\nimport isPrototype from './_isPrototype.js';\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nexport default initCloneObject;\n","import Stack from './_Stack.js';\nimport assignMergeValue from './_assignMergeValue.js';\nimport baseFor from './_baseFor.js';\nimport baseMergeDeep from './_baseMergeDeep.js';\nimport isObject from './isObject.js';\nimport keysIn from './keysIn.js';\nimport safeGet from './_safeGet.js';\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\nexport default baseMerge;\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nexport default identity;\n","import apply from './_apply.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nexport default overRest;\n","import constant from './constant.js';\nimport defineProperty from './_defineProperty.js';\nimport identity from './identity.js';\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nexport default baseSetToString;\n","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nexport default constant;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nexport default shortOut;\n","import baseSetToString from './_baseSetToString.js';\nimport shortOut from './_shortOut.js';\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nexport default setToString;\n","import identity from './identity.js';\nimport overRest from './_overRest.js';\nimport setToString from './_setToString.js';\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\nexport default baseRest;\n","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nexport default apply;\n","import baseMerge from './_baseMerge.js';\nimport createAssigner from './_createAssigner.js';\n\n/**\n * This method is like `_.merge` except that it accepts `customizer` which\n * is invoked to produce the merged values of the destination and source\n * properties. If `customizer` returns `undefined`, merging is handled by the\n * method instead. The `customizer` is invoked with six arguments:\n * (objValue, srcValue, key, object, source, stack).\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} sources The source objects.\n * @param {Function} customizer The function to customize assigned values.\n * @returns {Object} Returns `object`.\n * @example\n *\n * function customizer(objValue, srcValue) {\n * if (_.isArray(objValue)) {\n * return objValue.concat(srcValue);\n * }\n * }\n *\n * var object = { 'a': [1], 'b': [2] };\n * var other = { 'a': [3], 'b': [4] };\n *\n * _.mergeWith(object, other, customizer);\n * // => { 'a': [1, 3], 'b': [2, 4] }\n */\nvar mergeWith = createAssigner(function(object, source, srcIndex, customizer) {\n baseMerge(object, source, srcIndex, customizer);\n});\n\nexport default mergeWith;\n","import baseRest from './_baseRest.js';\nimport isIterateeCall from './_isIterateeCall.js';\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nexport default createAssigner;\n","import eq from './eq.js';\nimport isArrayLike from './isArrayLike.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nexport default isIterateeCall;\n","import MapCache from './_MapCache.js';\nimport setCacheAdd from './_setCacheAdd.js';\nimport setCacheHas from './_setCacheHas.js';\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nexport default SetCache;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nexport default arraySome;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nexport default setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nexport default setCacheHas;\n","import SetCache from './_SetCache.js';\nimport arraySome from './_arraySome.js';\nimport cacheHas from './_cacheHas.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nexport default equalArrays;\n","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nexport default cacheHas;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nexport default mapToArray;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nexport default setToArray;\n","import Symbol from './_Symbol.js';\nimport Uint8Array from './_Uint8Array.js';\nimport eq from './eq.js';\nimport equalArrays from './_equalArrays.js';\nimport mapToArray from './_mapToArray.js';\nimport setToArray from './_setToArray.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nexport default equalByTag;\n","import arrayFilter from './_arrayFilter.js';\nimport stubArray from './stubArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nexport default getSymbols;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nexport default arrayFilter;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nexport default stubArray;\n","import overArg from './_overArg.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nexport default nativeKeys;\n","import isPrototype from './_isPrototype.js';\nimport nativeKeys from './_nativeKeys.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeys;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeys from './_baseKeys.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nexport default keys;\n","import baseGetAllKeys from './_baseGetAllKeys.js';\nimport getSymbols from './_getSymbols.js';\nimport keys from './keys.js';\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nexport default getAllKeys;\n","import arrayPush from './_arrayPush.js';\nimport isArray from './isArray.js';\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nexport default baseGetAllKeys;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nexport default arrayPush;\n","import getAllKeys from './_getAllKeys.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nexport default equalObjects;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nexport default DataView;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nexport default Promise;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nexport default Set;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nexport default WeakMap;\n","import DataView from './_DataView.js';\nimport Map from './_Map.js';\nimport Promise from './_Promise.js';\nimport Set from './_Set.js';\nimport WeakMap from './_WeakMap.js';\nimport baseGetTag from './_baseGetTag.js';\nimport toSource from './_toSource.js';\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nexport default getTag;\n","import Stack from './_Stack.js';\nimport equalArrays from './_equalArrays.js';\nimport equalByTag from './_equalByTag.js';\nimport equalObjects from './_equalObjects.js';\nimport getTag from './_getTag.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nexport default baseIsEqualDeep;\n","import baseIsEqualDeep from './_baseIsEqualDeep.js';\nimport isObjectLike from './isObjectLike.js';\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nexport default baseIsEqual;\n","import baseIsEqual from './_baseIsEqual.js';\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nexport default isEqual;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.has` without support for deep paths.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {Array|string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n */\nfunction baseHas(object, key) {\n return object != null && hasOwnProperty.call(object, key);\n}\n\nexport default baseHas;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","import isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used to match property names within property paths. */\nvar reIsDeepProp = /\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,\n reIsPlainProp = /^\\w*$/;\n\n/**\n * Checks if `value` is a property name and not a property path.\n *\n * @private\n * @param {*} value The value to check.\n * @param {Object} [object] The object to query keys on.\n * @returns {boolean} Returns `true` if `value` is a property name, else `false`.\n */\nfunction isKey(value, object) {\n if (isArray(value)) {\n return false;\n }\n var type = typeof value;\n if (type == 'number' || type == 'symbol' || type == 'boolean' ||\n value == null || isSymbol(value)) {\n return true;\n }\n return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||\n (object != null && value in Object(object));\n}\n\nexport default isKey;\n","import MapCache from './_MapCache.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nexport default memoize;\n","import memoizeCapped from './_memoizeCapped.js';\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nexport default stringToPath;\n","import memoize from './memoize.js';\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nexport default memoizeCapped;\n","import Symbol from './_Symbol.js';\nimport arrayMap from './_arrayMap.js';\nimport isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default baseToString;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nexport default arrayMap;\n","import isArray from './isArray.js';\nimport isKey from './_isKey.js';\nimport stringToPath from './_stringToPath.js';\nimport toString from './toString.js';\n\n/**\n * Casts `value` to a path array if it's not one.\n *\n * @private\n * @param {*} value The value to inspect.\n * @param {Object} [object] The object to query keys on.\n * @returns {Array} Returns the cast property path array.\n */\nfunction castPath(value, object) {\n if (isArray(value)) {\n return value;\n }\n return isKey(value, object) ? [value] : stringToPath(toString(value));\n}\n\nexport default castPath;\n","import baseToString from './_baseToString.js';\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nexport default toString;\n","import isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default toKey;\n","import baseHas from './_baseHas.js';\nimport hasPath from './_hasPath.js';\n\n/**\n * Checks if `path` is a direct property of `object`.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n * @example\n *\n * var object = { 'a': { 'b': 2 } };\n * var other = _.create({ 'a': _.create({ 'b': 2 }) });\n *\n * _.has(object, 'a');\n * // => true\n *\n * _.has(object, 'a.b');\n * // => true\n *\n * _.has(object, ['a', 'b']);\n * // => true\n *\n * _.has(other, 'a');\n * // => false\n */\nfunction has(object, path) {\n return object != null && hasPath(object, path, baseHas);\n}\n\nexport default has;\n","import castPath from './_castPath.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isIndex from './_isIndex.js';\nimport isLength from './isLength.js';\nimport toKey from './_toKey.js';\n\n/**\n * Checks if `path` exists on `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path to check.\n * @param {Function} hasFunc The function to check properties.\n * @returns {boolean} Returns `true` if `path` exists, else `false`.\n */\nfunction hasPath(object, path, hasFunc) {\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n result = false;\n\n while (++index < length) {\n var key = toKey(path[index]);\n if (!(result = object != null && hasFunc(object, key))) {\n break;\n }\n object = object[key];\n }\n if (result || ++index != length) {\n return result;\n }\n length = object == null ? 0 : object.length;\n return !!length && isLength(length) && isIndex(key, length) &&\n (isArray(object) || isArguments(object));\n}\n\nexport default hasPath;\n","import baseGet from './_baseGet.js';\n\n/**\n * Gets the value at `path` of `object`. If the resolved value is\n * `undefined`, the `defaultValue` is returned in its place.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @param {*} [defaultValue] The value returned for `undefined` resolved values.\n * @returns {*} Returns the resolved value.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.get(object, 'a[0].b.c');\n * // => 3\n *\n * _.get(object, ['a', '0', 'b', 'c']);\n * // => 3\n *\n * _.get(object, 'a.b.c', 'default');\n * // => 'default'\n */\nfunction get(object, path, defaultValue) {\n var result = object == null ? undefined : baseGet(object, path);\n return result === undefined ? defaultValue : result;\n}\n\nexport default get;\n","import castPath from './_castPath.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.get` without support for default values.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Array|string} path The path of the property to get.\n * @returns {*} Returns the resolved value.\n */\nfunction baseGet(object, path) {\n path = castPath(path, object);\n\n var index = 0,\n length = path.length;\n\n while (object != null && index < length) {\n object = object[toKey(path[index++])];\n }\n return (index && index == length) ? object : undefined;\n}\n\nexport default baseGet;\n","import baseSet from './_baseSet.js';\n\n/**\n * Sets the value at `path` of `object`. If a portion of `path` doesn't exist,\n * it's created. Arrays are created for missing index properties while objects\n * are created for all other missing properties. Use `_.setWith` to customize\n * `path` creation.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 3.7.0\n * @category Object\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = { 'a': [{ 'b': { 'c': 3 } }] };\n *\n * _.set(object, 'a[0].b.c', 4);\n * console.log(object.a[0].b.c);\n * // => 4\n *\n * _.set(object, ['x', '0', 'y', 'z'], 5);\n * console.log(object.x[0].y.z);\n * // => 5\n */\nfunction set(object, path, value) {\n return object == null ? object : baseSet(object, path, value);\n}\n\nexport default set;\n","import assignValue from './_assignValue.js';\nimport castPath from './_castPath.js';\nimport isIndex from './_isIndex.js';\nimport isObject from './isObject.js';\nimport toKey from './_toKey.js';\n\n/**\n * The base implementation of `_.set`.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {Array|string} path The path of the property to set.\n * @param {*} value The value to set.\n * @param {Function} [customizer] The function to customize path creation.\n * @returns {Object} Returns `object`.\n */\nfunction baseSet(object, path, value, customizer) {\n if (!isObject(object)) {\n return object;\n }\n path = castPath(path, object);\n\n var index = -1,\n length = path.length,\n lastIndex = length - 1,\n nested = object;\n\n while (nested != null && ++index < length) {\n var key = toKey(path[index]),\n newValue = value;\n\n if (key === '__proto__' || key === 'constructor' || key === 'prototype') {\n return object;\n }\n\n if (index != lastIndex) {\n var objValue = nested[key];\n newValue = customizer ? customizer(objValue, key, nested) : undefined;\n if (newValue === undefined) {\n newValue = isObject(objValue)\n ? objValue\n : (isIndex(path[index + 1]) ? [] : {});\n }\n }\n assignValue(nested, key, newValue);\n nested = nested[key];\n }\n return object;\n}\n\nexport default baseSet;\n","import castArray from 'lodash-es/castArray';\nimport isFunction from 'lodash-es/isFunction';\nimport isString from 'lodash-es/isString';\nimport type { SubDomainOptions } from './Options';\n\nexport default {\n range: (value: number): number => Math.max(+value, 1),\n 'date.highlight': (args: Date[] | Date): Date[] => castArray(args),\n 'subDomain.label': (\n value: SubDomainOptions['label'],\n ): string | Function | null =>\n // eslint-disable-next-line\n ((isString(value) && value !== '') || isFunction(value) ? value : null),\n};\n","'use strict';\n/* eslint-disable regexp/no-empty-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */\n/* eslint-disable regexp/no-useless-quantifier -- testing */\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toString = require('../internals/to-string');\nvar regexpFlags = require('../internals/regexp-flags');\nvar stickyHelpers = require('../internals/regexp-sticky-helpers');\nvar shared = require('../internals/shared');\nvar create = require('../internals/object-create');\nvar getInternalState = require('../internals/internal-state').get;\nvar UNSUPPORTED_DOT_ALL = require('../internals/regexp-unsupported-dot-all');\nvar UNSUPPORTED_NCG = require('../internals/regexp-unsupported-ncg');\n\nvar nativeReplace = shared('native-string-replace', String.prototype.replace);\nvar nativeExec = RegExp.prototype.exec;\nvar patchedExec = nativeExec;\nvar charAt = uncurryThis(''.charAt);\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/;\n var re2 = /b*/g;\n call(nativeExec, re1, 'a');\n call(nativeExec, re2, 'a');\n return re1.lastIndex !== 0 || re2.lastIndex !== 0;\n})();\n\nvar UNSUPPORTED_Y = stickyHelpers.BROKEN_CARET;\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPPORTED_DOT_ALL || UNSUPPORTED_NCG;\n\nif (PATCH) {\n patchedExec = function exec(string) {\n var re = this;\n var state = getInternalState(re);\n var str = toString(string);\n var raw = state.raw;\n var result, reCopy, lastIndex, match, i, object, group;\n\n if (raw) {\n raw.lastIndex = re.lastIndex;\n result = call(patchedExec, raw, str);\n re.lastIndex = raw.lastIndex;\n return result;\n }\n\n var groups = state.groups;\n var sticky = UNSUPPORTED_Y && re.sticky;\n var flags = call(regexpFlags, re);\n var source = re.source;\n var charsAdded = 0;\n var strCopy = str;\n\n if (sticky) {\n flags = replace(flags, 'y', '');\n if (indexOf(flags, 'g') === -1) {\n flags += 'g';\n }\n\n strCopy = stringSlice(str, re.lastIndex);\n // Support anchored sticky behavior.\n if (re.lastIndex > 0 && (!re.multiline || re.multiline && charAt(str, re.lastIndex - 1) !== '\\n')) {\n source = '(?: ' + source + ')';\n strCopy = ' ' + strCopy;\n charsAdded++;\n }\n // ^(? + rx + ) is needed, in combination with some str slicing, to\n // simulate the 'y' flag.\n reCopy = new RegExp('^(?:' + source + ')', flags);\n }\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + source + '$(?!\\\\s)', flags);\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex;\n\n match = call(nativeExec, sticky ? reCopy : re, strCopy);\n\n if (sticky) {\n if (match) {\n match.input = stringSlice(match.input, charsAdded);\n match[0] = stringSlice(match[0], charsAdded);\n match.index = re.lastIndex;\n re.lastIndex += match[0].length;\n } else re.lastIndex = 0;\n } else if (UPDATES_LAST_INDEX_WRONG && match) {\n re.lastIndex = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn't work for /(.?)?/\n call(nativeReplace, match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n if (match && groups) {\n match.groups = object = create(null);\n for (i = 0; i < groups.length; i++) {\n group = groups[i];\n object[group[0]] = match[group[1]];\n }\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n","import baseGetTag from './_baseGetTag.js';\nimport isArray from './isArray.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar stringTag = '[object String]';\n\n/**\n * Checks if `value` is classified as a `String` primitive or object.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a string, else `false`.\n * @example\n *\n * _.isString('abc');\n * // => true\n *\n * _.isString(1);\n * // => false\n */\nfunction isString(value) {\n return typeof value == 'string' ||\n (!isArray(value) && isObjectLike(value) && baseGetTag(value) == stringTag);\n}\n\nexport default isString;\n","import mergeWith from 'lodash-es/mergeWith';\nimport isEqual from 'lodash-es/isEqual';\nimport has from 'lodash-es/has';\nimport get from 'lodash-es/get';\nimport set from 'lodash-es/set';\nimport type { Ls } from 'dayjs';\nimport type { DomainType, Timestamp } from '../index';\nimport {\n OPTIONS_DEFAULT_DOMAIN_TYPE,\n OPTIONS_DEFAULT_SUBDOMAIN_TYPE,\n OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n OPTIONS_DEFAULT_THEME,\n OPTIONS_DEFAULT_ANIMATION_DURATION,\n OPTIONS_DEFAULT_ITEM_SELECTOR,\n OPTIONS_DEFAULT_RANGE,\n SCALE_BASE_COLOR_SCHEME,\n SCALE_BASE_COLOR_TYPE,\n SCALE_BASE_COLOR_DOMAIN,\n OPTIONS_DEFAULT_LOCALE,\n} from '../constant';\n\nimport OptionsPreProcessors from './OptionsPreProcessors';\n\ntype SortOrder = 'asc' | 'desc';\nexport type TextAlign = 'start' | 'middle' | 'end';\nexport type Padding = [number, number, number, number];\n\nexport type DomainOptions = {\n type: DomainType;\n gutter: number;\n padding: Padding;\n dynamicDimension: boolean;\n label: LabelOptions;\n sort: SortOrder;\n};\n\ntype LabelOptions = {\n text?:\n | string\n | null\n | ((timestamp: Timestamp, element: SVGElement) => string);\n position: 'top' | 'right' | 'bottom' | 'left';\n textAlign: TextAlign;\n offset: {\n x: number;\n y: number;\n };\n rotate: null | 'left' | 'right';\n width: number;\n height: number;\n};\n\nexport type SubDomainOptions = {\n type: string;\n width: number;\n height: number;\n gutter: number;\n radius: number;\n label:\n | string\n | null\n | ((timestamp: Timestamp, value: number, element: SVGElement) => string);\n color?:\n | string\n | ((\n timestamp: Timestamp,\n value: number | string | null | undefined,\n backgroundColor: string,\n ) => string);\n sort: SortOrder;\n};\n\nexport type DataGroupType = 'sum' | 'count' | 'min' | 'max' | 'average';\n\ntype DateOptions = {\n start: Date;\n min?: Date;\n max?: Date;\n highlight: Date[];\n locale: string | Partial<(typeof Ls)[0]>;\n timezone?: string;\n};\n\nexport type DataRecord = Record;\nexport type DataOptions = {\n source: string | DataRecord[];\n type: 'json' | 'csv' | 'tsv' | 'txt';\n requestInit: object;\n x: string | ((datum: DataRecord) => number);\n y: string | ((datum: DataRecord) => number);\n groupY:\n | DataGroupType\n | ((values: (string | number | null)[]) => string | number | null);\n defaultValue: null | number | string;\n};\n\ntype ScaleOptions = {\n opacity?: {\n domain: number[];\n type?: string;\n baseColor: string;\n };\n color?: {\n domain: number[];\n scheme?: string;\n range?: string[];\n interpolate?: any;\n type?: string;\n };\n};\n\nexport type OptionsType = {\n itemSelector: string;\n range: number;\n domain: DomainOptions;\n subDomain: SubDomainOptions;\n date: DateOptions;\n data: DataOptions;\n scale?: ScaleOptions;\n animationDuration: number;\n verticalOrientation: boolean;\n theme: 'light' | 'dark';\n};\n\ntype InternalOptionsType = {\n x: {\n domainHorizontalLabelWidth: number;\n domainVerticalLabelHeight: number;\n };\n};\n\nexport default class Options {\n options: OptionsType & InternalOptionsType;\n\n preProcessors: {\n [key: string]: (value: any) => any;\n };\n\n constructor(processors = OptionsPreProcessors) {\n this.preProcessors = processors;\n\n this.options = {\n // selector string of the container to append the graph to\n // Accept any string value accepted by document.querySelector or CSS3\n // or an Element object\n itemSelector: OPTIONS_DEFAULT_ITEM_SELECTOR,\n\n // Number of domain to display on the graph\n range: OPTIONS_DEFAULT_RANGE,\n\n domain: {\n type: OPTIONS_DEFAULT_DOMAIN_TYPE,\n\n // Space between each domain, in pixel\n gutter: 4,\n\n padding: [0, 0, 0, 0],\n\n // Whether to enable dynamic domain size\n // The width/height on a domain depends on the number of\n // subDomains items count\n dynamicDimension: true,\n\n // Whether to show most recent date first\n sort: 'asc',\n\n label: {\n // Formatting of the domain label\n // @default: undefined, will use the formatting\n // according to domain type\n // Accept any string accepted by dayjs.format()\n // or a function\n //\n // Refer to https://day.js.org/docs/en/display/format\n // for list of accepted string tokens used by dayjs.format()\n text: undefined,\n\n // valid: top, right, bottom, left\n position: 'bottom',\n\n // Valid are the direct svg values: start, middle, end\n textAlign: 'middle',\n\n // By default, there is no margin/padding around the label\n offset: {\n x: 0,\n y: 0,\n },\n\n rotate: null,\n\n // Used only on vertical orientation\n width: 100,\n\n // Used only on horizontal orientation\n height: 25,\n },\n },\n\n subDomain: {\n type: OPTIONS_DEFAULT_SUBDOMAIN_TYPE,\n\n // Width of each subDomain cell, in pixel\n width: OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n\n // Height of each subDomain cell, in pixel\n height: OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n\n // Space between each subDomain cell, in pixel\n gutter: OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n\n // Radius of each subDomain cell, in pixel\n radius: OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n\n // Formatting of the text inside each subDomain cell\n // @default: null, no text\n // Accept any string accepted by dayjs.format()\n // or a function\n //\n // Refer to https://day.js.org/docs/en/display/format\n // for list of accepted string tokens used by dayjs.format()\n label: null,\n\n color: undefined,\n\n sort: 'asc',\n },\n\n date: {\n // Start date of the graph\n // @default now\n start: new Date(),\n\n min: undefined,\n\n max: undefined,\n\n // List of dates to highlight\n // Valid values:\n // - []: don't highlight anything\n // - an array of Date objects: highlight the specified dates\n highlight: [],\n\n locale: OPTIONS_DEFAULT_LOCALE,\n\n timezone: undefined,\n },\n\n // Calendar orientation\n // false: display domains side by side\n // true : display domains one under the other\n verticalOrientation: false,\n\n data: {\n // Data source\n // URL, where to fetch the original datas\n source: '',\n\n // Data type\n // Default: json\n type: 'json',\n\n requestInit: {},\n\n // keyname of the time property\n x: '',\n\n // keyname of the value property\n y: '',\n\n // Grouping function of the values\n groupY: 'sum',\n\n defaultValue: null,\n },\n\n scale: undefined,\n\n // Animation duration, in ms\n animationDuration: OPTIONS_DEFAULT_ANIMATION_DURATION,\n\n // Theme mode: dark/light\n theme: OPTIONS_DEFAULT_THEME,\n\n // Internally used options, do not edit not set\n x: {\n domainHorizontalLabelWidth: 0,\n domainVerticalLabelHeight: 0,\n },\n };\n }\n\n /**\n * Set a new value for an option, only if unchanged\n * @param {string} key Name of the option\n * @param {any} value Value of the option\n * @return {boolean} Whether the option have been changed\n */\n set(key: string, value: any): boolean {\n if (!has(this.options, key) || isEqual(get(this.options, key), value)) {\n return false;\n }\n\n set(\n this.options,\n key,\n has(this.preProcessors, key) ?\n get(this.preProcessors, key)(value) :\n value,\n );\n\n return true;\n }\n\n init(opts?: CalHeatmap.DeepPartial): void {\n this.options = {\n // eslint-disable-next-line arrow-body-style\n ...mergeWith(this.options, opts, (_, srcValue) => {\n return Array.isArray(srcValue) ? srcValue : undefined;\n }),\n };\n\n const { options } = this;\n\n Object.keys(this.preProcessors).forEach((key) => {\n set(options, key, get(this.preProcessors, key)(get(options, key)));\n });\n\n if (typeof options.scale === 'undefined') {\n this.initScale();\n }\n\n options.x.domainVerticalLabelHeight = options.domain.label.height;\n\n // When the label is affecting the height\n if (\n options.domain.label.position === 'top' ||\n options.domain.label.position === 'bottom'\n ) {\n options.x.domainHorizontalLabelWidth = 0;\n } else {\n options.x.domainVerticalLabelHeight = 0;\n options.x.domainHorizontalLabelWidth = options.domain.label.width;\n }\n\n if (\n options.domain.label.text === null ||\n options.domain.label.text === ''\n ) {\n options.x.domainVerticalLabelHeight = 0;\n options.x.domainHorizontalLabelWidth = 0;\n }\n }\n\n initScale() {\n this.options.scale = {\n color: {\n scheme: SCALE_BASE_COLOR_SCHEME,\n type: SCALE_BASE_COLOR_TYPE,\n domain: SCALE_BASE_COLOR_DOMAIN,\n },\n };\n }\n}\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nvar UNSUPPORTED_Y = fails(function () {\n var re = $RegExp('a', 'y');\n re.lastIndex = 2;\n return re.exec('abcd') !== null;\n});\n\n// UC Browser bug\n// https://github.com/zloirock/core-js/issues/1008\nvar MISSED_STICKY = UNSUPPORTED_Y || fails(function () {\n return !$RegExp('a', 'y').sticky;\n});\n\nvar BROKEN_CARET = UNSUPPORTED_Y || fails(function () {\n // https://bugzilla.mozilla.org/show_bug.cgi?id=773687\n var re = $RegExp('^r', 'gy');\n re.lastIndex = 2;\n return re.exec('str') !== null;\n});\n\nmodule.exports = {\n BROKEN_CARET: BROKEN_CARET,\n MISSED_STICKY: MISSED_STICKY,\n UNSUPPORTED_Y: UNSUPPORTED_Y\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('.', 's') -> /./s and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('.', 's');\n return !(re.dotAll && re.test('\\n') && re.flags === 's');\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\n// babel-minify and Closure Compiler transpiles RegExp('(?b)', 'g') -> /(?b)/g and it causes SyntaxError\nvar $RegExp = global.RegExp;\n\nmodule.exports = fails(function () {\n var re = $RegExp('(?b)', 'g');\n return re.exec('b').groups.a !== 'b' ||\n 'b'.replace(re, '$c') !== 'bc';\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar exec = require('../internals/regexp-exec');\n\n// `RegExp.prototype.exec` method\n// https://tc39.es/ecma262/#sec-regexp.prototype.exec\n$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, {\n exec: exec\n});\n","'use strict';\n// TODO: Remove from `core-js@4` since it's moved to entry points\nrequire('../modules/es.regexp.exec');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar regexpExec = require('../internals/regexp-exec');\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar SPECIES = wellKnownSymbol('species');\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (KEY, exec, FORCED, SHAM) {\n var SYMBOL = wellKnownSymbol(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) !== 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n\n if (KEY === 'split') {\n // We can't use real regex here since it causes deoptimization\n // and serious performance degradation in V8\n // https://github.com/zloirock/core-js/issues/306\n re = {};\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n re.flags = '';\n re[SYMBOL] = /./[SYMBOL];\n }\n\n re.exec = function () {\n execCalled = true;\n return null;\n };\n\n re[SYMBOL]('');\n return !execCalled;\n });\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n FORCED\n ) {\n var uncurriedNativeRegExpMethod = uncurryThis(/./[SYMBOL]);\n var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) {\n var uncurriedNativeMethod = uncurryThis(nativeMethod);\n var $exec = regexp.exec;\n if ($exec === regexpExec || $exec === RegExpPrototype.exec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: uncurriedNativeRegExpMethod(regexp, str, arg2) };\n }\n return { done: true, value: uncurriedNativeMethod(str, regexp, arg2) };\n }\n return { done: false };\n });\n\n defineBuiltIn(String.prototype, KEY, methods[0]);\n defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);\n }\n\n if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\n\n// `AdvanceStringIndex` abstract operation\n// https://tc39.es/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? charAt(S, index).length : 1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\n// eslint-disable-next-line redos/no-vulnerable -- safe\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof-raw');\nvar regexpExec = require('../internals/regexp-exec');\n\nvar $TypeError = TypeError;\n\n// `RegExpExec` abstract operation\n// https://tc39.es/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (isCallable(exec)) {\n var result = call(exec, R, S);\n if (result !== null) anObject(result);\n return result;\n }\n if (classof(R) === 'RegExp') return call(regexpExec, R, S);\n throw new $TypeError('RegExp#exec called on incompatible receiver');\n};\n","'use strict';\nvar apply = require('../internals/function-apply');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fixRegExpWellKnownSymbolLogic = require('../internals/fix-regexp-well-known-symbol-logic');\nvar fails = require('../internals/fails');\nvar anObject = require('../internals/an-object');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar advanceStringIndex = require('../internals/advance-string-index');\nvar getMethod = require('../internals/get-method');\nvar getSubstitution = require('../internals/get-substitution');\nvar regExpExec = require('../internals/regexp-exec-abstract');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar max = Math.max;\nvar min = Math.min;\nvar concat = uncurryThis([].concat);\nvar push = uncurryThis([].push);\nvar stringIndexOf = uncurryThis(''.indexOf);\nvar stringSlice = uncurryThis(''.slice);\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// IE <= 11 replaces $0 with the whole match, as if it was $&\n// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0\nvar REPLACE_KEEPS_$0 = (function () {\n // eslint-disable-next-line regexp/prefer-escape-replacement-dollar-char -- required for testing\n return 'a'.replace(/./, '$0') === '$0';\n})();\n\n// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string\nvar REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () {\n if (/./[REPLACE]) {\n return /./[REPLACE]('a', '$0') === '';\n }\n return false;\n})();\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n // eslint-disable-next-line regexp/no-useless-dollar-replacements -- false positive\n return ''.replace(re, '$') !== '7';\n});\n\n// @@replace logic\nfixRegExpWellKnownSymbolLogic('replace', function (_, nativeReplace, maybeCallNative) {\n var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0';\n\n return [\n // `String.prototype.replace` method\n // https://tc39.es/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var replacer = isNullOrUndefined(searchValue) ? undefined : getMethod(searchValue, REPLACE);\n return replacer\n ? call(replacer, searchValue, O, replaceValue)\n : call(nativeReplace, toString(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace\n function (string, replaceValue) {\n var rx = anObject(this);\n var S = toString(string);\n\n if (\n typeof replaceValue == 'string' &&\n stringIndexOf(replaceValue, UNSAFE_SUBSTITUTE) === -1 &&\n stringIndexOf(replaceValue, '$<') === -1\n ) {\n var res = maybeCallNative(nativeReplace, rx, S, replaceValue);\n if (res.done) return res.value;\n }\n\n var functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n\n var global = rx.global;\n var fullUnicode;\n if (global) {\n fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n\n var results = [];\n var result;\n while (true) {\n result = regExpExec(rx, S);\n if (result === null) break;\n\n push(results, result);\n if (!global) break;\n\n var matchStr = toString(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n\n var matched = toString(result[0]);\n var position = max(min(toIntegerOrInfinity(result.index), S.length), 0);\n var captures = [];\n var replacement;\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) push(captures, maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = concat([matched], captures, position, S);\n if (namedCaptures !== undefined) push(replacerArgs, namedCaptures);\n replacement = toString(apply(replaceValue, undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += stringSlice(S, nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n\n return accumulatedResult + stringSlice(S, nextSourcePosition);\n }\n ];\n}, !REPLACE_SUPPORTS_NAMED_GROUPS || !REPLACE_KEEPS_$0 || REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE);\n","import {\n json, csv, dsv, text,\n} from 'd3-fetch';\n\nimport type { DataOptions, DataRecord } from './options/Options';\nimport type { Timestamp } from './index';\nimport type CalHeatmap from './CalHeatmap';\n\nexport default class DataFetcher {\n calendar: CalHeatmap;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n }\n\n /**\n * Fetch and interpret data from the datasource\n *\n * @param {string|object} source\n * @param {number} startTimestamp\n * @param {number} endTimestamp\n *\n * @return {Promize} A promise, that will return the final data when resolved\n */\n async getDatas(\n source: DataOptions['source'],\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): Promise {\n if (typeof source === 'string' && source.length > 0) {\n return this.#fetch(source, startTimestamp, endTimestamp);\n }\n\n let d: DataRecord[] = [];\n if (Array.isArray(source)) {\n d = source;\n }\n\n return new Promise((resolve) => {\n resolve(d);\n });\n }\n\n parseURI(\n str: string,\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): string {\n let newUri = str.replace(/\\{\\{start=(.*?)\\}\\}/g, (_, format) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.date(startTimestamp).format(format));\n newUri = newUri.replace(/\\{\\{end=(.*?)\\}\\}/g, (_, format) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.date(endTimestamp).format(format));\n\n return newUri;\n }\n\n #fetch(\n source: DataOptions['source'],\n startTimestamp: Timestamp,\n endTimestamp: Timestamp,\n ): Promise {\n const { type, requestInit } = this.calendar.options.options.data;\n\n const url = this.parseURI(source as string, startTimestamp, endTimestamp);\n\n switch (type) {\n case 'json':\n return json(url, requestInit);\n case 'csv':\n return csv(url, requestInit);\n case 'tsv':\n return dsv('\\t', url, requestInit);\n case 'txt':\n return text(url, requestInit);\n default:\n return new Promise((resolve) => {\n resolve([]);\n });\n }\n }\n}\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){\"use strict\";var t=1e3,e=6e4,n=36e5,r=\"millisecond\",i=\"second\",s=\"minute\",u=\"hour\",a=\"day\",o=\"week\",c=\"month\",f=\"quarter\",h=\"year\",d=\"date\",l=\"Invalid Date\",$=/^(\\d{4})[-/]?(\\d{1,2})?[-/]?(\\d{0,2})[Tt\\s]*(\\d{1,2})?:?(\\d{1,2})?:?(\\d{1,2})?[.:]?(\\d+)?$/,y=/\\[([^\\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,M={name:\"en\",weekdays:\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\"),months:\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\"),ordinal:function(t){var e=[\"th\",\"st\",\"nd\",\"rd\"],n=t%100;return\"[\"+t+(e[(n-20)%10]||e[n]||e[0])+\"]\"}},m=function(t,e,n){var r=String(t);return!r||r.length>=e?t:\"\"+Array(e+1-r.length).join(n)+t},v={s:m,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?\"+\":\"-\")+m(r,2,\"0\")+\":\"+m(i,2,\"0\")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;D[a]=e,i=a}return!r&&i&&(g=i),i||!r&&g},O=function(t,e){if(S(t))return t.clone();var n=\"object\"==typeof e?e:{};return n.date=t,n.args=arguments,new _(n)},b=v;b.l=w,b.i=S,b.w=function(t,e){return O(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var _=function(){function M(t){this.$L=w(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[p]=!0}var m=M.prototype;return m.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(b.u(e))return new Date;if(e instanceof Date)return new Date(e);if(\"string\"==typeof e&&!/Z$/i.test(e)){var r=e.match($);if(r){var i=r[2]-1||0,s=(r[7]||\"0\").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},m.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},m.$utils=function(){return b},m.isValid=function(){return!(this.$d.toString()===l)},m.isSame=function(t,e){var n=O(t);return this.startOf(e)<=n&&n<=this.endOf(e)},m.isAfter=function(t,e){return O(t)25){var f=r(this).startOf(t).add(1,t).date(n),s=r(this).endOf(e);if(f.isBefore(s))return 1}var a=r(this).startOf(t).date(n).startOf(e).subtract(1,\"millisecond\"),o=this.diff(a,e,!0);return o<0?r(this).startOf(\"week\").week():Math.ceil(o)},f.weeks=function(e){return void 0===e&&(e=null),this.week(e)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_dayOfYear=t()}(this,(function(){\"use strict\";return function(e,t,n){t.prototype.dayOfYear=function(e){var t=Math.round((n(this).startOf(\"day\")-n(this).startOf(\"year\"))/864e5)+1;return null==e?t:this.add(e-t,\"day\")}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_weekday=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.weekday=function(e){var t=this.$locale().weekStart||0,i=this.$W,n=(i0&&(n=n[0]);t=(n=n.filter((function(e){return e})))[0];for(var i=1;i4&&(o+=7),n.add(o,e));return r.diff(u,\"week\")+1},d.isoWeekday=function(e){return this.$utils().u(e)?this.day()||7:this.day(this.day()%7?e:e-7)};var n=d.startOf;d.startOf=function(e,t){var i=this.$utils(),s=!!i.u(t)||t;return\"isoweek\"===i.p(e)?s?this.date(this.date()-(this.isoWeekday()-1)).startOf(\"day\"):this.date(this.date()-1-(this.isoWeekday()-1)+7).endOf(\"day\"):n.bind(this)(e,t)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_isLeapYear=t()}(this,(function(){\"use strict\";return function(e,t){t.prototype.isLeapYear=function(){return this.$y%4==0&&this.$y%100!=0||this.$y%400==0}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_advancedFormat=t()}(this,(function(){\"use strict\";return function(e,t){var r=t.prototype,n=r.format;r.format=function(e){var t=this,r=this.$locale();if(!this.isValid())return n.bind(this)(e);var s=this.$utils(),a=(e||\"YYYY-MM-DDTHH:mm:ssZ\").replace(/\\[([^\\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,(function(e){switch(e){case\"Q\":return Math.ceil((t.$M+1)/3);case\"Do\":return r.ordinal(t.$D);case\"gggg\":return t.weekYear();case\"GGGG\":return t.isoWeekYear();case\"wo\":return r.ordinal(t.week(),\"W\");case\"w\":case\"ww\":return s.s(t.week(),\"w\"===e?1:2,\"0\");case\"W\":case\"WW\":return s.s(t.isoWeek(),\"W\"===e?1:2,\"0\");case\"k\":case\"kk\":return s.s(String(0===t.$H?24:t.$H),\"k\"===e?1:2,\"0\");case\"X\":return Math.floor(t.$d.getTime()/1e3);case\"x\":return t.$d.getTime();case\"z\":return\"[\"+t.offsetName()+\"]\";case\"zzz\":return\"[\"+t.offsetName(\"long\")+\"]\";default:return e}}));return n.bind(this)(a)}}}));","!function(t,i){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=i():\"function\"==typeof define&&define.amd?define(i):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_utc=i()}(this,(function(){\"use strict\";var t=\"minute\",i=/[+-]\\d\\d(?::?\\d\\d)?/g,e=/([+-]|\\d\\d)/g;return function(s,f,n){var u=f.prototype;n.utc=function(t){var i={date:t,utc:!0,args:arguments};return new f(i)},u.utc=function(i){var e=n(this.toDate(),{locale:this.$L,utc:!0});return i?e.add(this.utcOffset(),t):e},u.local=function(){return n(this.toDate(),{locale:this.$L,utc:!1})};var o=u.parse;u.parse=function(t){t.utc&&(this.$u=!0),this.$utils().u(t.$offset)||(this.$offset=t.$offset),o.call(this,t)};var r=u.init;u.init=function(){if(this.$u){var t=this.$d;this.$y=t.getUTCFullYear(),this.$M=t.getUTCMonth(),this.$D=t.getUTCDate(),this.$W=t.getUTCDay(),this.$H=t.getUTCHours(),this.$m=t.getUTCMinutes(),this.$s=t.getUTCSeconds(),this.$ms=t.getUTCMilliseconds()}else r.call(this)};var a=u.utcOffset;u.utcOffset=function(s,f){var n=this.$utils().u;if(n(s))return this.$u?0:n(this.$offset)?a.call(this):this.$offset;if(\"string\"==typeof s&&(s=function(t){void 0===t&&(t=\"\");var s=t.match(i);if(!s)return null;var f=(\"\"+s[0]).match(e)||[\"-\",0,0],n=f[0],u=60*+f[1]+ +f[2];return 0===u?0:\"+\"===n?u:-u}(s),null===s))return this;var u=Math.abs(s)<=16?60*s:s,o=this;if(f)return o.$offset=u,o.$u=0===s,o;if(0!==s){var r=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();(o=this.local().add(u+r,t)).$offset=u,o.$x.$localOffset=r}else o=this.utc();return o};var h=u.format;u.format=function(t){var i=t||(this.$u?\"YYYY-MM-DDTHH:mm:ss[Z]\":\"\");return h.call(this,i)},u.valueOf=function(){var t=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*t},u.isUTC=function(){return!!this.$u},u.toISOString=function(){return this.toDate().toISOString()},u.toString=function(){return this.toDate().toUTCString()};var l=u.toDate;u.toDate=function(t){return\"s\"===t&&this.$offset?n(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\")).toDate():l.call(this)};var c=u.diff;u.diff=function(t,i,e){if(t&&this.$u===t.$u)return c.call(this,t,i,e);var s=this.local(),f=n(t).local();return c.call(s,f,i,e)}}}));","!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(t=\"undefined\"!=typeof globalThis?globalThis:t||self).dayjs_plugin_timezone=e()}(this,(function(){\"use strict\";var t={year:0,month:1,day:2,hour:3,minute:4,second:5},e={};return function(n,i,o){var r,a=function(t,n,i){void 0===i&&(i={});var o=new Date(t),r=function(t,n){void 0===n&&(n={});var i=n.timeZoneName||\"short\",o=t+\"|\"+i,r=e[o];return r||(r=new Intl.DateTimeFormat(\"en-US\",{hour12:!1,timeZone:t,year:\"numeric\",month:\"2-digit\",day:\"2-digit\",hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\",timeZoneName:i}),e[o]=r),r}(n,i);return r.formatToParts(o)},u=function(e,n){for(var i=a(e,n),r=[],u=0;u=0&&(r[c]=parseInt(m,10))}var d=r[3],l=24===d?0:d,h=r[0]+\"-\"+r[1]+\"-\"+r[2]+\" \"+l+\":\"+r[4]+\":\"+r[5]+\":000\",v=+e;return(o.utc(h).valueOf()-(v-=v%1e3))/6e4},f=i.prototype;f.tz=function(t,e){void 0===t&&(t=r);var n=this.utcOffset(),i=this.toDate(),a=i.toLocaleString(\"en-US\",{timeZone:t}),u=Math.round((i-new Date(a))/1e3/60),f=o(a,{locale:this.$L}).$set(\"millisecond\",this.$ms).utcOffset(15*-Math.round(i.getTimezoneOffset()/15)-u,!0);if(e){var s=f.utcOffset();f=f.add(n-s,\"minute\")}return f.$x.$timezone=t,f},f.offsetName=function(t){var e=this.$x.$timezone||o.tz.guess(),n=a(this.valueOf(),e,{timeZoneName:t}).find((function(t){return\"timezonename\"===t.type.toLowerCase()}));return n&&n.value};var s=f.startOf;f.startOf=function(t,e){if(!this.$x||!this.$x.$timezone)return s.call(this,t,e);var n=o(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"),{locale:this.$L});return s.call(n,t,e).tz(this.$x.$timezone,!0)},o.tz=function(t,e,n){var i=n&&e,a=n||e||r,f=u(+o(),a);if(\"string\"!=typeof t)return o(t).tz(a);var s=function(t,e,n){var i=t-60*e*1e3,o=u(i,n);if(e===o)return[i,e];var r=u(i-=60*(o-e)*1e3,n);return o===r?[i,o]:[t-60*Math.min(o,r)*1e3,Math.max(o,r)]}(o.utc(t,i).valueOf(),f,a),m=s[0],c=s[1],d=o(m).utcOffset(c);return d.$x.$timezone=a,d},o.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},o.tz.setDefault=function(t){r=t}}}));","!function(n,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(n=\"undefined\"!=typeof globalThis?globalThis:n||self).dayjs_plugin_localeData=e()}(this,(function(){\"use strict\";return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return{months:function(e){return e?e.format(\"MMMM\"):u(n,\"months\")},monthsShort:function(e){return e?e.format(\"MMM\"):u(n,\"monthsShort\",\"months\",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format(\"dddd\"):u(n,\"weekdays\")},weekdaysMin:function(e){return e?e.format(\"dd\"):u(n,\"weekdaysMin\",\"weekdays\",2)},weekdaysShort:function(e){return e?e.format(\"ddd\"):u(n,\"weekdaysShort\",\"weekdays\",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return{firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),\"months\")},t.monthsShort=function(){return u(i(),\"monthsShort\",\"months\",3)},t.weekdays=function(n){return u(i(),\"weekdays\",null,null,n)},t.weekdaysShort=function(n){return u(i(),\"weekdaysShort\",\"weekdays\",3,n)},t.weekdaysMin=function(n){return u(i(),\"weekdaysMin\",\"weekdays\",2,n)}}}));","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(t):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_localizedFormat=t()}(this,(function(){\"use strict\";var e={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"};return function(t,o,n){var r=o.prototype,i=r.format;n.en.formats=e,r.format=function(t){void 0===t&&(t=\"YYYY-MM-DDTHH:mm:ssZ\");var o=this.$locale().formats,n=function(t,o){return t.replace(/(\\[[^\\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var i=r&&r.toUpperCase();return n||o[r]||e[r]||o[i].replace(/(\\[[^\\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,o){return t||o.slice(1)}))}))}(t,void 0===o?{}:o);return i.call(this,n)}}}));","!function(e,n){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=n():\"function\"==typeof define&&define.amd?define(n):(e=\"undefined\"!=typeof globalThis?globalThis:e||self).dayjs_plugin_updateLocale=n()}(this,(function(){\"use strict\";return function(e,n,t){t.updateLocale=function(e,n){var o=t.Ls[e];if(o)return(n?Object.keys(n):[]).forEach((function(e){o[e]=n[e]})),o}}}));","import dayjs from 'dayjs';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport dayOfYear from 'dayjs/plugin/dayOfYear';\nimport weekday from 'dayjs/plugin/weekday';\nimport minMax from 'dayjs/plugin/minMax';\nimport isoWeeksInYear from 'dayjs/plugin/isoWeeksInYear';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport isLeapYear from 'dayjs/plugin/isLeapYear';\nimport advancedFormat from 'dayjs/plugin/advancedFormat';\nimport utc from 'dayjs/plugin/utc';\nimport timezone from 'dayjs/plugin/timezone';\nimport localeData from 'dayjs/plugin/localeData';\nimport localizedFormat from 'dayjs/plugin/localizedFormat';\nimport updateLocale from 'dayjs/plugin/updateLocale';\n\nimport type { ManipulateType, PluginFunc, Ls } from 'dayjs';\nimport type { OptionsType } from '../options/Options';\nimport type { Timestamp, DomainType } from '../index';\n\ndayjs.extend(weekOfYear);\ndayjs.extend(isoWeeksInYear);\ndayjs.extend(isoWeek);\ndayjs.extend(isLeapYear);\ndayjs.extend(dayOfYear);\ndayjs.extend(weekday);\ndayjs.extend(minMax);\ndayjs.extend(advancedFormat);\ndayjs.extend(utc);\ndayjs.extend(timezone);\ndayjs.extend(localeData);\ndayjs.extend(localizedFormat);\ndayjs.extend(updateLocale);\n\nconst DEFAULT_LOCALE = 'en';\n\nexport default class DateHelper {\n locale: OptionsType['date']['locale'];\n\n timezone: string;\n\n constructor() {\n this.locale = DEFAULT_LOCALE;\n this.timezone = dayjs.tz.guess();\n if (typeof window === 'object') {\n (window as any).dayjs ||= dayjs;\n }\n }\n\n async setup({ options }: { options: OptionsType }) {\n this.timezone = options.date.timezone || dayjs.tz.guess();\n const userLocale = options.date.locale;\n\n if (typeof userLocale === 'string' && userLocale !== DEFAULT_LOCALE) {\n let locale;\n if (typeof window === 'object') {\n locale =\n (window as any)[`dayjs_locale_${userLocale}`] ||\n (await this.loadBrowserLocale(userLocale));\n } else {\n locale = await this.loadNodeLocale(userLocale);\n }\n dayjs.locale(userLocale);\n this.locale = locale;\n }\n\n if (typeof userLocale === 'object') {\n if (userLocale.hasOwnProperty('name')) {\n dayjs.locale(userLocale.name, userLocale);\n this.locale = userLocale;\n } else {\n this.locale = dayjs.updateLocale(DEFAULT_LOCALE, userLocale);\n }\n }\n }\n\n // eslint-disable-next-line class-methods-use-this\n extend(dayjsPlugin: PluginFunc): dayjs.Dayjs {\n return dayjs.extend(dayjsPlugin);\n }\n\n /**\n * Return the week number, relative to its month\n *\n * @param {number|Date} d Date or timestamp in milliseconds\n * @returns {number} The week number, relative to the month [0-5]\n */\n getMonthWeekNumber(d: Timestamp | dayjs.Dayjs): number {\n const dayjsDate = this.date(d);\n const date = dayjsDate.startOf('day');\n const endOfWeek = dayjsDate.startOf('month').endOf('week');\n\n if (date <= endOfWeek) {\n return 1;\n }\n return Math.ceil(date.diff(endOfWeek, 'weeks', true)) + 1;\n }\n\n /**\n * Return the number of weeks in the given month\n *\n * As there is no fixed standard to specify which month a partial week should\n * belongs to, the ISO week date standard is used, where:\n * - the first week of the month should have at least 4 days\n *\n * @see https://en.wikipedia.org/wiki/ISO_week_date\n *\n * @param {Timestamp | dayjs.Dayjs} d Datejs object or timestamp\n * @return {number} The number of weeks\n */\n getWeeksCountInMonth(d: Timestamp | dayjs.Dayjs): number {\n const pivotDate = this.date(d);\n\n return (\n this.getLastWeekOfMonth(pivotDate).diff(\n this.getFirstWeekOfMonth(pivotDate),\n 'week',\n ) + 1\n );\n }\n\n /**\n * Return the start of the first week of the month\n *\n * @see getWeeksCountInMonth() about standard warning\n * @return {dayjs.Dayjs} A dayjs object representing the start of the\n * first week\n */\n getFirstWeekOfMonth(d: Timestamp | dayjs.Dayjs): dayjs.Dayjs {\n const startOfMonth = this.date(d).startOf('month');\n let startOfFirstWeek = startOfMonth.startOf('week');\n if (startOfMonth.weekday() > 4) {\n startOfFirstWeek = startOfFirstWeek.add(1, 'week');\n }\n\n return startOfFirstWeek;\n }\n\n /**\n * Return the end of the last week of the month\n *\n * @see getWeeksCountInMonth() about standard warning\n * @return {dayjs.Dayjs} A dayjs object representing the end of the last week\n */\n getLastWeekOfMonth(d: Timestamp | dayjs.Dayjs): dayjs.Dayjs {\n const endOfMonth = this.date(d).endOf('month');\n let endOfLastWeek = endOfMonth.endOf('week');\n if (endOfMonth.weekday() < 4) {\n endOfLastWeek = endOfLastWeek.subtract(1, 'week');\n }\n\n return endOfLastWeek;\n }\n\n date(d: Timestamp | Date | dayjs.Dayjs | string = new Date()): dayjs.Dayjs {\n if (dayjs.isDayjs(d)) {\n return d;\n }\n\n return dayjs(d)\n .tz(this.timezone)\n .utcOffset(0)\n .locale(this.locale as (typeof Ls)[0] | string);\n }\n\n format(\n timestamp: Timestamp,\n formatter: null | string | Function,\n ...args: any\n ): string | null {\n if (typeof formatter === 'function') {\n return formatter(timestamp, ...args);\n }\n\n if (typeof formatter === 'string') {\n return this.date(timestamp).format(formatter);\n }\n\n return null;\n }\n\n /**\n * Return an array of time interval\n *\n * @param {number|Date} date A random date included in the wanted interval\n * @param {number|Date} range Length of the wanted interval, or a stop date.\n * @param {boolean} range Whether the end date should be excluded\n * from the result\n * @returns {Array} Array of unix timestamp, in milliseconds\n */\n intervals(\n interval: DomainType,\n date: Timestamp | Date | dayjs.Dayjs,\n range: number | Date | dayjs.Dayjs,\n excludeEnd: boolean = true,\n ): Timestamp[] {\n let start = this.date(date);\n let end: dayjs.Dayjs;\n if (typeof range === 'number') {\n end = start.add(range, interval as ManipulateType);\n } else if (dayjs.isDayjs(range)) {\n end = range;\n } else {\n end = this.date(range);\n }\n\n start = start.startOf(interval as ManipulateType);\n\n end = end.startOf(interval as ManipulateType);\n let pivot = dayjs.min(start, end)!;\n end = dayjs.max(start, end)!;\n const result: Timestamp[] = [];\n\n if (!excludeEnd) {\n end = end.add(1, 'second');\n }\n\n do {\n result.push(+pivot);\n pivot = pivot.add(1, interval as ManipulateType);\n } while (pivot < end);\n\n return result;\n }\n\n // this function will work cross-browser for loading scripts asynchronously\n // eslint-disable-next-line class-methods-use-this\n loadBrowserLocale(userLocale: string): Promise {\n return new Promise((resolve, reject) => {\n const s = document.createElement('script');\n s.type = 'text/javascript';\n s.async = true;\n s.src = `https://cdn.jsdelivr.net/npm/dayjs@1/locale/${userLocale}.js`;\n s.onerror = (err) => {\n reject(err);\n };\n s.onload = () => {\n resolve((window as any)[`dayjs_locale_${userLocale}`]);\n };\n document.head.appendChild(s);\n });\n }\n\n // eslint-disable-next-line class-methods-use-this\n loadNodeLocale(userLocale: string): Promise {\n return import(`dayjs/locale/${userLocale}.js`);\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\n\nvar stringIndexOf = uncurryThis(''.indexOf);\n\n// `String.prototype.includes` method\n// https://tc39.es/ecma262/#sec-string.prototype.includes\n$({ target: 'String', proto: true, forced: !correctIsRegExpLogic('includes') }, {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~stringIndexOf(\n toString(requireObjectCoercible(this)),\n toString(notARegExp(searchString)),\n arguments.length > 1 ? arguments[1] : undefined\n );\n }\n});\n","import type TemplateCollection from '../TemplateCollection';\nimport type { DomainOptions, SubDomainOptions, DataOptions } from './Options';\nimport type { DomainType } from '../index';\n\nconst ALLOWED_DATA_TYPES = ['json', 'csv', 'tsv', 'txt'];\n\n/**\n * Ensure that critical options are valid\n *\n * @throw {Error} on critical invalid options\n * @return {boolean} Returns true when there is not critical errors\n */\nexport default function validate(\n templateCollection: TemplateCollection,\n {\n domain,\n subDomain,\n data,\n }: {\n domain: Partial;\n subDomain: Partial;\n data: Partial;\n },\n): boolean {\n const domainType = domain.type as DomainType;\n const subDomainType = subDomain.type as string;\n\n if (!templateCollection.has(domainType)) {\n throw new Error(`'${domainType}' is not a valid domain type'`);\n }\n\n if (!templateCollection.has(subDomainType)) {\n throw new Error(`'${subDomainType}' is not a valid subDomain type'`);\n }\n\n if (data.type && !ALLOWED_DATA_TYPES.includes(data.type)) {\n throw new Error(`The data type '${data.type}' is not valid data type`);\n }\n\n if (\n !(templateCollection.get(subDomainType).allowedDomainType || []).includes(\n domainType,\n )\n ) {\n throw new Error(\n `The subDomain.type '${subDomainType}' can not be used together ` +\n `with the domain type ${domainType}`,\n );\n }\n\n return true;\n}\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Set` constructor\n// https://tc39.es/ecma262/#sec-set-objects\ncollection('Set', function (init) {\n return function Set() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","import isEqual from 'lodash-es/isEqual';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport {\n PluginDefinition,\n PluginOptions,\n IPluginContructor,\n IPlugin,\n} from '../index';\n\ntype PluginSetting = {\n options?: PluginOptions;\n dirty: boolean;\n};\n\nfunction createPlugin(\n Creator: IPluginContructor,\n calendar: CalHeatmap,\n): IPlugin {\n return new Creator(calendar);\n}\n\nfunction extractPluginName(\n PluginClass: IPluginContructor,\n options?: PluginOptions,\n): string {\n return `${new PluginClass().name}${options?.key || ''}`;\n}\n\nexport default class PluginManager {\n calendar: CalHeatmap;\n\n settings: Map;\n\n plugins: Map;\n\n pendingPaint: Set;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.settings = new Map();\n this.plugins = new Map();\n this.pendingPaint = new Set();\n }\n\n add(plugins: PluginDefinition[]): void {\n plugins.forEach(([PluginClass, pluginOptions]) => {\n const name = extractPluginName(PluginClass, pluginOptions);\n\n const existingPlugin = this.plugins.get(name);\n\n if (\n existingPlugin &&\n this.settings.get(name) &&\n isEqual(this.settings.get(name)!.options, pluginOptions)\n ) {\n return;\n }\n\n this.settings.set(name, {\n options: pluginOptions,\n dirty: true,\n });\n\n if (!this.plugins.has(name)) {\n this.plugins.set(name, createPlugin(PluginClass, this.calendar));\n }\n\n this.pendingPaint.add(this.plugins.get(name)!);\n });\n }\n\n setupAll(): void {\n this.plugins.forEach((pluginInstance, name) => {\n const settings = this.settings.get(name);\n\n if (typeof settings !== 'undefined') {\n if (settings.dirty) {\n pluginInstance.setup(settings.options);\n settings.dirty = false;\n\n this.settings.set(name, settings);\n }\n }\n });\n }\n\n paintAll(): Promise[] {\n return Array.from(this.pendingPaint.values()).map((p) => p.paint());\n }\n\n destroyAll(): Promise[] {\n return this.allPlugins().map((p) => p.destroy());\n }\n\n getFromPosition(position: PluginOptions['position']): IPlugin[] {\n return this.allPlugins().filter(\n (plugin) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n plugin.options?.position === position,\n );\n }\n\n getHeightFromPosition(position: PluginOptions['position']): number {\n return this.getFromPosition(position)\n .map((d) => d.options.dimensions!.height)\n .reduce((a, b) => a + b, 0);\n }\n\n getWidthFromPosition(position: PluginOptions['position']): number {\n return this.getFromPosition(position)\n .map((d) => d.options.dimensions!.width)\n .reduce((a, b) => a + b, 0);\n }\n\n allPlugins(): IPlugin[] {\n return Array.from(this.plugins.values());\n }\n}\n","import minuteTemplate from './minute';\nimport hourTemplate from './hour';\nimport dayTemplate from './day';\nimport xDayTemplate from './xDay';\nimport ghDayTemplate from './ghDay';\nimport weekTemplate from './week';\nimport monthTemplate from './month';\nimport yearTemplate from './year';\n\nexport default [\n minuteTemplate,\n hourTemplate,\n dayTemplate,\n xDayTemplate,\n ghDayTemplate,\n weekTemplate,\n monthTemplate,\n yearTemplate,\n];\n","import type { Template, DomainType } from '../index';\n\nconst minuteTemplate: Template = (DateHelper) => {\n const COLUMNS_COUNT = 10;\n const ROWS_COUNT = 6;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['day', 'hour'];\n\n return {\n name: 'minute',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => COLUMNS_COUNT,\n columnsCount: () => ROWS_COUNT,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'minute',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts, index: number) => ({\n t: ts,\n x: Math.floor(index / COLUMNS_COUNT),\n y: index % COLUMNS_COUNT,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('minute').valueOf(),\n };\n};\n\nexport default minuteTemplate;\n","import type { DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst hourTemplate: Template = (\n DateHelper,\n { domain }: { domain: DomainOptions },\n) => {\n const TOTAL_ITEMS = 24;\n const ROWS_COUNT = 6;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['month', 'week', 'day'];\n\n return {\n name: 'hour',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => ROWS_COUNT,\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'week':\n return (TOTAL_ITEMS / ROWS_COUNT) * 7;\n case 'month':\n return (\n (TOTAL_ITEMS / ROWS_COUNT) *\n (domain.dynamicDimension ? DateHelper.date(ts).daysInMonth() : 31)\n );\n case 'day':\n default:\n return TOTAL_ITEMS / ROWS_COUNT;\n }\n },\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'hour',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n const hour = date.hour();\n const monthDate = date.date();\n let baseX = Math.floor(hour / ROWS_COUNT);\n const columnOffset = TOTAL_ITEMS / ROWS_COUNT;\n\n if (domain.type === 'month') {\n baseX += (monthDate - 1) * columnOffset;\n }\n if (domain.type === 'week') {\n baseX += +date.format('d') * columnOffset;\n }\n\n return {\n t: ts,\n x: baseX,\n y: Math.floor(hour % ROWS_COUNT),\n };\n }),\n extractUnit: (ts) => DateHelper.date(ts).startOf('hour').valueOf(),\n };\n};\n\nexport default hourTemplate;\n","import type { OptionsType, DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (\n DateHelper,\n {\n domain,\n verticalOrientation,\n }: {\n domain: DomainOptions;\n verticalOrientation: OptionsType['verticalOrientation'];\n },\n) => {\n const ROWS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month', 'week'];\n\n return {\n name: 'day',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => (domain.type === 'week' ? 1 : ROWS_COUNT),\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'month':\n return Math.ceil(\n domain.dynamicDimension && !verticalOrientation ?\n DateHelper.getMonthWeekNumber(\n DateHelper.date(ts).endOf('month'),\n ) :\n 6, // In rare case, when the first week contains less than 3 days\n );\n case 'year':\n return Math.ceil(\n domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').dayOfYear() / ROWS_COUNT :\n 54,\n );\n case 'week':\n default:\n return ROWS_COUNT;\n }\n },\n mapping: (startTimestamp, endTimestamp) => {\n let weekNumber = 0;\n let x = -1;\n\n return DateHelper.intervals(\n 'day',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n\n switch (domain.type) {\n case 'month':\n x = DateHelper.getMonthWeekNumber(ts) - 1;\n break;\n case 'year':\n if (weekNumber !== date.week()) {\n weekNumber = date.week();\n x += 1;\n }\n break;\n case 'week':\n x = date.weekday();\n break;\n default:\n }\n\n return {\n t: ts,\n x,\n y: domain.type === 'week' ? 0 : date.weekday(),\n };\n });\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { OptionsType, DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (\n DateHelper,\n {\n domain,\n verticalOrientation,\n }: {\n domain: DomainOptions;\n verticalOrientation: OptionsType['verticalOrientation'];\n },\n) => {\n const COLUMNS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month', 'week'];\n\n return {\n name: 'xDay',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: (ts) => {\n switch (domain.type) {\n case 'month':\n return Math.ceil(\n domain.dynamicDimension && !verticalOrientation ?\n DateHelper.getMonthWeekNumber(\n DateHelper.date(ts).endOf('month'),\n ) :\n 6, // In rare case, when the first week contains less than 3 days\n );\n case 'year':\n return Math.ceil(\n domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').dayOfYear() / COLUMNS_COUNT :\n 54,\n );\n case 'week':\n default:\n return COLUMNS_COUNT;\n }\n },\n columnsCount: () => {\n if (domain.type === 'week') {\n return 1;\n }\n return COLUMNS_COUNT;\n },\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'day',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => {\n const date = DateHelper.date(ts);\n const endWeekNumber = date.endOf('year').week();\n let x = 0;\n\n switch (domain.type) {\n case 'month':\n x = DateHelper.getMonthWeekNumber(ts) - 1;\n break;\n case 'year':\n if (endWeekNumber === 1 && date.week() === endWeekNumber) {\n x = date.subtract(1, 'week').week() + 1;\n }\n\n x = date.week() - 1;\n break;\n case 'week':\n x = date.weekday();\n break;\n default:\n }\n\n return {\n t: ts,\n y: x,\n x: domain.type === 'week' ? 0 : date.weekday(),\n };\n }),\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst dayTemplate: Template = (DateHelper) => {\n const ROWS_COUNT = 7;\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['month'];\n\n return {\n name: 'ghDay',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => ROWS_COUNT,\n columnsCount: (ts) => DateHelper.getWeeksCountInMonth(ts),\n mapping: (startTimestamp, endTimestamp) => {\n const clampStart = DateHelper.getFirstWeekOfMonth(startTimestamp);\n const clampEnd = DateHelper.getFirstWeekOfMonth(endTimestamp);\n\n let x = -1;\n const pivotDay = clampStart.weekday();\n\n return DateHelper.intervals('day', clampStart, clampEnd).map((ts) => {\n const weekday = DateHelper.date(ts).weekday();\n if (weekday === pivotDay) {\n x += 1;\n }\n\n return {\n t: ts,\n x,\n y: weekday,\n };\n });\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('day').valueOf(),\n };\n};\n\nexport default dayTemplate;\n","import type { DomainOptions } from '../options/Options';\nimport type { Template, DomainType } from '../index';\n\nconst weekTemplate: Template = (\n DateHelper,\n { domain }: { domain: DomainOptions },\n) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year', 'month'];\n\n return {\n name: 'week',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: (ts) => {\n switch (domain.type) {\n case 'year':\n return domain.dynamicDimension ?\n DateHelper.date(ts).endOf('year').isoWeeksInYear() :\n 53;\n case 'month':\n return domain.dynamicDimension ?\n DateHelper.getWeeksCountInMonth(ts) :\n 5;\n default:\n return 1;\n }\n },\n mapping: (startTimestamp, endTimestamp) => {\n const clampStart = DateHelper.getFirstWeekOfMonth(startTimestamp);\n const clampEnd = DateHelper.getFirstWeekOfMonth(endTimestamp);\n\n return DateHelper.intervals('week', clampStart, clampEnd).map(\n (ts, i) => ({\n t: ts,\n x: i,\n y: 0,\n }),\n );\n },\n extractUnit: (ts) => DateHelper.date(ts).startOf('week').valueOf(),\n };\n};\n\nexport default weekTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst monthTemplate: Template = (DateHelper) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = ['year'];\n\n return {\n name: 'month',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: () => 12,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'month',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts) => ({\n t: ts,\n x: DateHelper.date(ts).month(),\n y: 0,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('month').valueOf(),\n };\n};\n\nexport default monthTemplate;\n","import type { Template, DomainType } from '../index';\n\nconst yearTemplate: Template = (DateHelper) => {\n const ALLOWED_DOMAIN_TYPE: DomainType[] = [];\n\n return {\n name: 'year',\n allowedDomainType: ALLOWED_DOMAIN_TYPE,\n rowsCount: () => 1,\n columnsCount: () => 1,\n mapping: (startTimestamp, endTimestamp) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n DateHelper.intervals(\n 'year',\n startTimestamp,\n DateHelper.date(endTimestamp),\n ).map((ts, index) => ({\n t: ts,\n x: index,\n y: 0,\n })),\n extractUnit: (ts) => DateHelper.date(ts).startOf('year').valueOf(),\n };\n};\n\nexport default yearTemplate;\n","import castArray from 'lodash-es/castArray';\n\nimport DefaultTemplates from './templates/index';\nimport type Options from './options/Options';\nimport type { Template, TemplateResult } from './index';\nimport type DateHelper from './helpers/DateHelper';\n\nexport default class TemplateCollection {\n dateHelper: DateHelper;\n\n options: Options;\n\n settings: Map;\n\n // Whether the default templates has been initiated\n initiated: boolean;\n\n constructor(dateHelper: DateHelper, options: Options) {\n this.settings = new Map();\n this.dateHelper = dateHelper;\n this.options = options;\n this.initiated = false;\n }\n\n get(subDomainType: string): TemplateResult {\n return this.settings.get(subDomainType)!;\n }\n\n has(subDomainType: string): boolean {\n return this.settings.has(subDomainType);\n }\n\n init() {\n if (!this.initiated) {\n this.initiated = true;\n this.add(DefaultTemplates);\n }\n }\n\n add(templates: Template | Template[]) {\n this.init();\n\n const tplWithParent: string[] = [];\n castArray(templates).forEach((f) => {\n const template = f(this.dateHelper, this.options.options);\n this.settings.set(template.name, template);\n\n if (template.hasOwnProperty('parent')) {\n tplWithParent.push(template.name);\n }\n });\n\n tplWithParent.forEach((name) => {\n const parentTemplate = this.settings.get(\n this.settings.get(name)!.parent!,\n );\n\n if (!parentTemplate) {\n return;\n }\n\n this.settings.set(name, {\n ...parentTemplate,\n ...this.settings.get(name),\n });\n });\n }\n}\n","import EventEmmiter from 'eventemitter3';\nimport castArray from 'lodash-es/castArray';\nimport type { PluginFunc } from 'dayjs';\nimport type dayjs from 'dayjs';\n\nimport Navigator from './calendar/Navigator';\nimport CalendarPainter from './calendar/CalendarPainter';\nimport Populator from './calendar/Populator';\nimport Options from './options/Options';\nimport DataFetcher from './DataFetcher';\nimport DomainCollection from './calendar/DomainCollection';\nimport DateHelper from './helpers/DateHelper';\nimport validate from './options/OptionsValidator';\nimport PluginManager from './plugins/PluginManager';\nimport VERSION from './version';\n\nimport './cal-heatmap.scss';\n\nimport TemplateCollection from './TemplateCollection';\n\nimport type { OptionsType } from './options/Options';\nimport type {\n Template,\n Dimensions,\n PluginDefinition,\n Timestamp,\n} from './index';\n\nimport { ScrollDirection } from './constant';\n\nexport default class CalHeatmap {\n static VERSION = VERSION;\n\n options: Options;\n\n calendarPainter: CalendarPainter;\n\n populator: Populator;\n\n navigator: Navigator;\n\n eventEmitter: EventEmmiter;\n\n dataFetcher: DataFetcher;\n\n domainCollection!: DomainCollection;\n\n templateCollection: TemplateCollection;\n\n dateHelper: DateHelper;\n\n pluginManager: PluginManager;\n\n constructor() {\n // Default options\n this.options = new Options();\n\n // Init the helpers with the default options\n this.dateHelper = new DateHelper();\n this.templateCollection = new TemplateCollection(\n this.dateHelper,\n this.options,\n );\n this.dataFetcher = new DataFetcher(this);\n this.navigator = new Navigator(this);\n this.populator = new Populator(this);\n\n this.calendarPainter = new CalendarPainter(this);\n this.eventEmitter = new EventEmmiter();\n this.pluginManager = new PluginManager(this);\n }\n\n createDomainCollection(\n startDate: Timestamp | Date,\n range: number | Date,\n excludeEnd: boolean = true,\n ): DomainCollection {\n return new DomainCollection(\n this.dateHelper,\n this.options.options.domain.type,\n startDate,\n range,\n excludeEnd,\n );\n }\n\n // =========================================================================\n // PUBLIC API\n // =========================================================================\n\n /**\n * Setup and paint the calendar with the given options\n *\n * @param {Object} options The Options object\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n async paint(\n options?: CalHeatmap.DeepPartial,\n plugins?: PluginDefinition[] | PluginDefinition,\n ): Promise {\n this.options.init(options);\n await this.dateHelper.setup(this.options);\n\n this.templateCollection.init();\n\n try {\n validate(this.templateCollection, this.options.options);\n } catch (error) {\n return Promise.reject(error);\n }\n\n if (plugins) {\n this.pluginManager.add(castArray(plugins as any) as PluginDefinition[]);\n }\n\n this.calendarPainter.setup();\n\n // Record all the valid domains\n // Each domain value is a timestamp in milliseconds\n this.domainCollection = new DomainCollection(this.dateHelper);\n this.navigator.loadNewDomains(\n this.createDomainCollection(\n this.options.options.date.start,\n this.options.options.range,\n ),\n );\n\n return Promise.allSettled([this.calendarPainter.paint(), this.fill()]);\n }\n\n /**\n * Add a new subDomainTemplate\n *\n * @since 4.0.0\n * @param {SubDomainTemplate[] | SubDomainTemplate} templates\n * A single, or an array of SubDomainTemplate object\n * @return void\n */\n addTemplates(templates: Template | Template[]): void {\n this.templateCollection.add(templates);\n }\n\n /**\n * Shift the calendar by n domains forward\n *\n * @param {number} n Number of domain intervals to shift forward\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n next(n: number = 1): Promise {\n const loadDirection = this.navigator.loadNewDomains(\n this.createDomainCollection(this.domainCollection.max, n + 1).slice(n),\n ScrollDirection.SCROLL_FORWARD,\n );\n\n return Promise.allSettled([\n this.calendarPainter.paint(loadDirection),\n this.fill(),\n ]);\n }\n\n /**\n * Shift the calendar by n domains backward\n *\n * @param {number} n Number of domain intervals to shift backward\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n previous(n: number = 1): Promise {\n const loadDirection = this.navigator.loadNewDomains(\n this.createDomainCollection(this.domainCollection.min, -n),\n ScrollDirection.SCROLL_BACKWARD,\n );\n\n return Promise.allSettled([\n this.calendarPainter.paint(loadDirection),\n this.fill(),\n ]);\n }\n\n /**\n * Jump directly to a specific date\n *\n * JumpTo will scroll the calendar until the wanted domain with the specified\n * date is visible. Unless you set reset to true, the wanted domain\n * will not necessarily be the first domain of the calendar.\n *\n * @param {Date} date Jump to the domain containing that date\n * @param {boolean} reset Whether the wanted domain\n * should be the first domain of the calendar\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n jumpTo(date: Date, reset: boolean = false): Promise {\n return Promise.allSettled([\n this.calendarPainter.paint(this.navigator.jumpTo(date, reset)),\n this.fill(),\n ]);\n }\n\n /**\n * Fill the calendar with the given data\n *\n * @param {Object|string} dataSource The calendar's datasource,\n * same type as `options.data.source`\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n fill(dataSource = this.options.options.data.source): Promise {\n const { options } = this.options;\n const template = this.templateCollection;\n const endDate = this.dateHelper.intervals(\n options.domain.type,\n this.domainCollection.max,\n 2,\n )[1];\n\n const dataPromise = this.dataFetcher.getDatas(\n dataSource,\n this.domainCollection.min,\n endDate,\n );\n\n return new Promise((resolve, reject) => {\n dataPromise.then(\n (data: any) => {\n this.domainCollection.fill(\n data,\n options.data,\n template.get(options.subDomain.type)!.extractUnit,\n );\n this.populator.populate();\n resolve(null);\n },\n (error) => {\n reject(error);\n },\n );\n });\n }\n\n /**\n * Listener for all events\n *\n * @since 4.0.0\n * @param {string} eventName Name of the event to listen to\n * @param {function} Callback function to execute on event trigger\n * @return void\n */\n on(name: string, fn: (...args: any[]) => any): void {\n this.eventEmitter.on(name, fn);\n }\n\n dimensions(): Dimensions {\n return this.calendarPainter.dimensions;\n }\n\n /**\n * Destroy the calendar\n *\n * @since 3.3.6\n * @return A Promise, which will fulfill once all the underlying asynchronous\n * tasks settle, whether resolved or rejected.\n */\n destroy(): Promise {\n return this.calendarPainter.destroy();\n }\n\n extendDayjs(plugin: PluginFunc): dayjs.Dayjs {\n return this.dateHelper.extend(plugin);\n }\n}\n","const VERSION = '4.2.4';\nexport default VERSION;\n"],"names":["check","it","Math","global","globalThis","window","self","this","Function","shared$4","exports","require$$0","defineProperty","Object","defineGlobalProperty","key","value","configurable","writable","error","require$$1","SHARED","sharedStore","store","sharedModule","undefined","push","version","mode","copyright","license","source","match","fails","exec","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","hasOwnProperty_1","hasOwn","uncurryThis","id","postfix","random","toString","uid","engineUserAgent","navigator","String","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","$String","require$$2","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","shared","require$$3","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","toStringTagSupport","documentAll","document","all","documentAll_1","IS_HTMLDDA","isCallable","objectDefineProperty","descriptors","get","isObject","EXISTS","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","isSymbol","$Symbol","tryToString","aCallable","getMethod","V","P","func","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","DESCRIPTORS","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","getOwnPropertyDescriptor","ENUMERABLE","CONFIGURABLE","WRITABLE","f","O","Attributes","current","enumerable","makeBuiltIn$3","getDescriptor","functionName","PROPER","functionToString","inspectSource","set","has","WeakMap","weakMapBasicDetection","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","classofRaw","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","classof","tag","tryGet","callee","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","descriptor","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","objectGetOwnPropertyNames","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","target","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","defineBuiltInAccessor","SPECIES","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionUncurryThisClause","functionBindContext","that","html","arraySlice","engineIsIos","require$$8","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","require$$12","speciesConstructor","defaultConstructor","S","require$$14","require$$15","hostReportErrors","b","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","objectKeys","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","addToUnscopables","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","allSettled","status","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","stringMultibyte","codeAt","STRING_ITERATOR","point","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","fill","argumentsLength","end","endPos","isArray","createProperty","propertyKey","arrayMethodHasSpeciesSupport","array","foo","Boolean","nativeSlice","HAS_SPECIES_SUPPORT","$Array","__awaiter","thisArg","_arguments","generator","fulfilled","e","rejected","__classPrivateFieldGet","receiver","start","k","fin","prefix","Events","EE","context","once","addListener","emitter","listener","evt","_events","_eventsCount","clearEvent","EventEmitter","eventNames","events","listeners","handlers","l","ee","listenerCount","a1","a2","a3","a4","a5","len","removeListener","j","on","removeAllListeners","off","prefixed","module","isArray$3","castArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","forEach","map","filter","some","every","find","findIndex","filterReject","$map","$assign","assign","objectAssign","A","B","alphabet","chr","T","internalMetadata","objectGetOwnPropertyNamesExternal","arraySliceSimple","$getOwnPropertyNames","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","collection","common","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","getConstructor","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","ScrollDirection","Position","collectionWeak","define","init","SCALE_BASE_OPACITY_COLOR","SCALE_BASE_COLOR_DOMAIN","Navigator","calendar","_classCallCheck","maxDomainReached","minDomainReached","_createClass","newDomainCollection","_this","direction","SCROLL_NONE","templatesClt","templateCollection","minDate","date","extractUnit","maxDate","domainCollection","_Navigator_instances","_Navigator_isDomainBoundaryReached","clamp","range","SCROLL_FORWARD","merge","domainKey","subDomainEndDate","at","dateHelper","intervals","pop","subDomain","mapping","d","v","defaultValue","_Navigator_setDomainsBoundaryReached","SCROLL_BACKWARD","eventEmitter","reset","_this$calendar","Date","loadNewDomains","createDomainCollection","WeakSet","lowerBound","upperBound","reached","doesNotExceedSafeInteger","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","arg","E","arrayMethodIsStrict","nativeJoin","separator","collectionStrong","last","previous","getEntry","removed","prev","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","mergeSort","comparefn","middle","insertionSort","element","left","right","llength","rlength","lindex","rindex","arraySort","firefox","engineFfVersion","engineIsIeOrEdge","webkit","engineWebkitVersion","deletePropertyOrThrow","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","sort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STRICT_METHOD","STABLE_SORT","code","fromCharCode","itemsLength","items","arrayLength","y","getSortCompare","$forEach","arrayForEach","isVertical","horizontalPadding","padding","LEFT","RIGHT","verticalPadding","TOP","BOTTOM","DomainCoordinates","domainPainter","Map","scrollDirection","_this$calendar$option","verticalOrientation","dimensions","width","height","exitingTotal","scrollFactor","reverse","yankedDomains","coor","w","_DomainCoordinates_instances","_DomainCoordinates_getWidth","h","_DomainCoordinates_getHeight","pre_x","pre_y","inner_width","gutter","inner_height","_this$calendar$option2","columnsCount","subDomainWidth","domainHorizontalLabelWidth","_this$calendar$option3","rowsCount","subDomainHeight","domainVerticalLabelHeight","DEFAULT_SELECTOR","DomainPainter","coordinates","root","rootNode","animationDuration","t","transition","duration","update","promises","selectAll","append","attr","enterSelection","updateSelection","exitSelection","remove","classname","helper","hour","format","week","month","year","$includes","$filter","callWithSafeIterationClosing","arrayLike","IS_CONSTRUCTOR","mapfn","DOMAIN_FORMAT","xDay","ghDay","day","minute","DomainCollection","interval","excludeEnd","ts","_DomainCollection_instances","_DomainCollection_refreshKeys","callback","newCollection","limit","createValueCallback","_this2","keyToRemove","_this3","fromBeginning","_ref","subDomainKeyExtractor","_this4","groupY","groupedRecords","groupRecords","records","_DomainCollection_setSubDomainValues","_this5","results","validSubDomainTimestamp","timestamp","extractTimestamp","groupFn","cleanedValues","reduce","_toConsumableArray","datum","extractorFn","_this6","groupValues","_DomainCollection_extractValues","parseInt","DomainLabelPainter","label","text","textAlign","_DomainLabelPainter_instances","_DomainLabelPainter_textVerticalAlign","nodes","selection","_DomainLabelPainter_domainRotate","rotate","_this$calendar$option4","offset","_DomainLabelPainter_getDomainInsideWidth","_this$calendar$option5","_this$calendar$option6","_this$calendar$option7","_DomainLabelPainter_getDomainInsideHeight","_this$calendar$option8","calendarPainter","domainsContainerPainter","_this$calendar$option9","_this$calendar$option10","_this$calendar$option11","labelWidth","domainWidth","domainHeight","s","whitespaces","ltrim","RegExp","rtrim","stringTrim","trim","$trim","forcedStringTrimMethod","SubDomainPainter","containerClassname","subDomainSvgGroup","_SubDomainPainter_instances","_SubDomainPainter_setPositions","radius","subDomainsCollection","abs","insert","_SubDomainPainter_classname","ev","_SubDomainPainter_appendText","_options$domain","highlight","unitFn","_len","otherClasses","_key","elem","_SubDomainPainter_getCoordinates","axis","BASE_SELECTOR","TRANSITION_CLASSNAME","DomainsContainerPainter","subDomainPainter","domainLabelPainter","transitionsQueueCount","_DomainsContainerPainter_instances","_DomainsContainerPainter_startAnimation","paint","_DomainsContainerPainter_recomputeDimensions","_DomainsContainerPainter_endAnimation","_a","topHeight","pluginManager","getHeightFromPosition","leftWidth","getWidthFromPosition","select","parentNode","classed","domainsDimensions","PluginPainter","paintAll","setPluginsPosition","top","getFromPosition","bottom","topOffset","plugin","leftOffset","CalendarPainter","pluginPainter","itemSelector","theme","setup","setupAll","navigationDir","transitions","updatePosition","_CalendarPainter_instances","_CalendarPainter_resize","destroyAll","destroy","insideHeight","_CalendarPainter_getWidth","insideWidth","newWidth","newHeight","freeGlobal$1","freeSelf","root$1","freeGlobal","Symbol$2","objectProto","nativeObjectToString","symToStringTag","toStringTag","nullTag","undefinedTag","baseGetTag","isOwn","unmasked","getRawTag","objectToString","asyncTag","funcTag","genTag","proxyTag","isFunction","nativeKeys","MATCH","isRegExp","notARegexp","correctIsRegexpLogic","regexp","error1","error2","notARegExp","correctIsRegExpLogic","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","search","IE_BUG","TO_ENTRIES","IE_WORKAROUND","$entries","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","re","parse","fallback","timeIntervals","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","Error","maybeUtcInterval","TypedArray","Uint8Array","constant","coerceNumbers","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","arrayify","isScaleOptions","option","maybeInterval","isInteger","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","orderof","descending","color","opacity","registry","sqrt4_3","sqrt","symbolHexagon","draw","rx","PI","ry","hy","moveTo","lineTo","closePath","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","ordinalScheme","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","scale","channels","nice","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","h25","quantile","h50","median","inferLogDomain","inferQuantileDomain","createScaleD","transform","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","inferHint","stroke","inferSymbolHint","isNone","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","candidate","normalizeScale","projection","typeProjection","asOrdinalType","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","exposeScale","percent","bandwidth","normalizedScale","scaleOptions","scaleType","applyScaleStyle","_scale","keyname","styles","baseColor","scaleStyle","_ref2","_slicedToArray","prop","Populator","_calendar$options$opt","colorScale","defaultColor","hcl","eq","other","assocIndexOf","ListCache","__data__","coreJsData$1","maskSrcKey","coreJsData","funcToString","toSource","reIsHostCtor","funcProto","reIsNative","baseIsNative","getNative","getValue","Map$2","nativeCreate$1","Hash","getMapData","MapCache","nativeCreate","hash","Stack","pairs","LARGE_ARRAY_SIZE","defineProperty$1","baseAssignValue","assignMergeValue","fromRight","baseFor","iteratee","keysFunc","baseFor$1","freeExports","nodeType","freeModule","Buffer","allocUnsafe","Uint8Array$2","cloneTypedArray","typedArray","isDeep","arrayBuffer","byteLength","byteOffset","baseCreate$1","overArg","getPrototype$1","isPrototype","Ctor","isObjectLike","baseIsArguments","isArguments","isArguments$1","MAX_SAFE_INTEGER","isLength","isArrayLike","isBuffer$1","isBuffer","objectTag","objectCtorString","typedArrayTags","freeProcess","nodeUtil","types","require","binding","nodeIsTypedArray","isTypedArray","isTypedArray$1","safeGet","assignValue","objValue","reIsUint","isIndex","arrayLikeKeys","inherited","isArr","isArg","isBuff","isType","skipIndexes","baseTimes","baseKeysIn","nativeKeysIn","isProto","keysIn","toPlainObject","customizer","isNew","newValue","copyObject","baseMergeDeep","srcIndex","mergeFunc","stack","srcValue","stacked","isCommon","isTyped","copyArray","copy","cloneBuffer","getPrototype","isPlainObject","baseCreate","initCloneObject","baseMerge","identity","nativeMax","baseSetToString","baseSetToString$1","nativeNow","setToString","count","lastCalled","stamp","shortOut","setToString$1","baseRest","otherArgs","overRest","assigner","mergeWith","sources","guard","isIterateeCall","mergeWith$1","SetCache","arraySome","predicate","COMPARE_PARTIAL_FLAG","COMPARE_UNORDERED_FLAG","equalArrays","bitmask","equalFunc","isPartial","arrLength","othLength","arrStacked","othStacked","seen","arrValue","othValue","compared","othIndex","mapToArray","setToArray","boolTag","dateTag","errorTag","mapTag","numberTag","regexpTag","setTag","stringTag","symbolTag","arrayBufferTag","dataViewTag","symbolProto","symbolValueOf","nativeGetSymbols","getSymbols","resIndex","arrayFilter","getSymbols$1","nativeKeys$1","baseKeys","getAllKeys","symbolsFunc","arrayPush","baseGetAllKeys","DataView$1","Promise$2","Set$2","WeakMap$1","promiseTag","weakMapTag","dataViewCtorString","DataView","mapCtorString","promiseCtorString","setCtorString","weakMapCtorString","getTag","ctorString","getTag$1","argsTag","arrayTag","baseIsEqualDeep","objIsArr","othIsArr","objTag","othTag","objIsObj","othIsObj","isSameTag","convert","equalByTag","objIsWrapped","othIsWrapped","objUnwrapped","othUnwrapped","objProps","objLength","objStacked","skipCtor","objCtor","othCtor","equalObjects","baseIsEqual","isEqual","baseHas","reIsDeepProp","reIsPlainProp","FUNC_ERROR_TEXT","memoize","resolver","memoized","cache","Cache","rePropName","reEscapeChar","stringToPath","memoizeCapped","quote","subString","stringToPath$1","INFINITY","symbolToString","baseToString","arrayMap","castPath","isKey","toKey","path","hasFunc","hasPath","baseGet","lastIndex","nested","baseSet","re1","re2","OptionsPreProcessors","isString","Options","processors","preProcessors","dynamicDimension","locale","timezone","requestInit","opts","initScale","$RegExp","UNSUPPORTED_Y","MISSED_STICKY","sticky","BROKEN_CARET","regexpStickyHelpers","regexpUnsupportedDotAll","dotAll","flags","regexpUnsupportedNcg","groups","regexpFlags","hasIndices","ignoreCase","multiline","unicode","unicodeSets","stickyHelpers","UNSUPPORTED_DOT_ALL","UNSUPPORTED_NCG","nativeReplace","nativeExec","patchedExec","UPDATES_LAST_INDEX_WRONG","NPCG_INCLUDED","reCopy","group","str","raw","charsAdded","strCopy","regexpExec","RegExpPrototype","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","fixRegExpWellKnownSymbolLogic","SHAM","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","uncurriedNativeRegExpMethod","nativeMethod","arg2","forceStringMethod","$exec","advanceStringIndex","getSubstitution","matched","captures","namedCaptures","tailPos","m","ch","capture","regExpExec","R","REPLACE","require$$16","stringIndexOf","REPLACE_KEEPS_$0","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","REPLACE_SUPPORTS_NAMED_GROUPS","maybeCallNative","UNSAFE_SUBSTITUTE","searchValue","replaceValue","replacer","res","functionalReplace","fullUnicode","accumulatedResult","nextSourcePosition","replacerArgs","DataFetcher","startTimestamp","endTimestamp","_context","abrupt","_DataFetcher_instances","_DataFetcher_fetch","_callee","newUri","url","parseURI","json","csv","dsv","FUNCTION_NAME_EXISTS","nameRE","dayjs_min","u","o","M","weekdays","months","ordinal","z","utcOffset","clone","p","D","ms","Q","g","$L","utc","$u","$x","$offset","$d","substring","UTC","$y","getFullYear","$M","getMonth","$D","getDate","$W","getDay","$H","getHours","$m","getMinutes","$s","getSeconds","$ms","getMilliseconds","$utils","isValid","isSame","startOf","endOf","isAfter","isBefore","$g","unix","getTime","toDate","$locale","weekStart","$set","daysInMonth","subtract","invalidDate","meridiem","monthsShort","weekdaysMin","weekdaysShort","getTimezoneOffset","diff","toJSON","toISOString","toUTCString","extend","$i","isDayjs","en","Ls","yearStart","weeks","dayOfYear","weekday","isoWeeksInYear","isLeapYear","isoWeekday","isoWeekYear","isoWeek","weekYear","offsetName","local","getUTCFullYear","getUTCMonth","getUTCDate","getUTCDay","getUTCHours","getUTCMinutes","getUTCSeconds","getUTCMilliseconds","$localOffset","isUTC","timeZoneName","Intl","DateTimeFormat","hour12","timeZone","formatToParts","tz","toLocaleString","$timezone","guess","resolvedOptions","setDefault","formats","toUpperCase","firstDayOfWeek","longDateFormat","localeData","LTS","L","LL","LLL","LLLL","updateLocale","dayjs","weekOfYear","minMax","advancedFormat","localizedFormat","DEFAULT_LOCALE","DateHelper","_typeof","userLocale","loadBrowserLocale","sent","loadNodeLocale","dayjsPlugin","dayjsDate","endOfWeek","pivotDate","getLastWeekOfMonth","getFirstWeekOfMonth","startOfMonth","startOfFirstWeek","endOfMonth","endOfLastWeek","formatter","async","onerror","err","onload","import","ALLOWED_DATA_TYPES","validate","domainType","subDomainType","allowedDomainType","PluginManager","settings","plugins","pendingPaint","Creator","PluginClass","pluginOptions","extractPluginName","dirty","pluginInstance","allPlugins","TOTAL_ITEMS","monthDate","baseX","getMonthWeekNumber","weekNumber","endWeekNumber","getWeeksCountInMonth","clampStart","clampEnd","pivotDay","TemplateCollection","initiated","DefaultTemplates","templates","tplWithParent","template","parentTemplate","CalHeatmap","dataFetcher","populator","EventEmmiter","startDate","loadDirection","jumpTo","dataSource","endDate","dataPromise","getDatas","populate","VERSION"],"mappings":"o1SACA,CAAA,IAAIA,EAAQ,SAAUC,GACpB,OAAOA,GAAMA,EAAGC,OAASA,MAAQD,CACnC,EAGAE,EAEEH,EAA2B,iBAAdI,YAA0BA,aACvCJ,EAAuB,iBAAVK,QAAsBA,SAEnCL,EAAqB,iBAARM,MAAoBA,OACjCN,EAAuB,iBAAVG,GAAsBA,IACnCH,EAAqB,iBAARO,GAAoBA,IAEjC,WAAe,OAAOA,IAAO,CAA7B,IAAoCC,SAAS,cAATA,GAAyBC,EAAA,CAAAC,QAAA,CAAA,GCd3DP,EAASQ,EAGTC,EAAiBC,OAAOD,eAE5BE,EAAiB,SAAUC,EAAKC,GAC9B,IACEJ,EAAeT,EAAQY,EAAK,CAAEC,MAAOA,EAAOC,cAAc,EAAMC,UAAU,GAC3E,CAAC,MAAOC,GACPhB,EAAOY,GAAOC,CACf,CAAC,OAAOA,CACX,ECVIF,EAAuBM,EAEvBC,EAAS,qBAGbC,EANaX,EAIMU,IAAWP,EAAqBO,EAAQ,CAAA,GCHvDE,EAAQH,GAEXI,UAAiB,SAAUT,EAAKC,GAC/B,OAAOO,EAAMR,KAASQ,EAAMR,QAAiBU,IAAVT,EAAsBA,EAAQ,CAAA,EACnE,GAAG,WAAY,IAAIU,KAAK,CACtBC,QAAS,SACTC,KAAyB,SACzBC,UAAW,4CACXC,QAAS,2DACTC,OAAQ,4CCHNC,EAAOL,cCPXM,EAAiB,SAAUC,GACzB,IACE,QAASA,GACV,CAAC,MAAOf,GACP,OAAO,CACR,CACH,ECJAgB,GAFYxB,GAEY,WAEtB,IAAIyB,EAAO,WAA4B,EAAEC,OAEzC,MAAsB,mBAARD,GAAsBA,EAAKE,eAAe,YAC1D,ICPIC,EAAc5B,EAEd6B,EAAoBhC,SAASiC,UAC7BC,EAAOF,EAAkBE,KACzBC,EAAsBJ,GAAeC,EAAkBH,KAAKA,KAAKK,EAAMA,GAE3EE,EAAiBL,EAAcI,EAAsB,SAAUE,GAC7D,OAAO,WACL,OAAOH,EAAKI,MAAMD,EAAIE,UAC1B,CACA,ECRAC,EAAiB,SAAU/C,GACzB,OAAOA,OACT,ECJI+C,EAAoBrC,EAEpBsC,EAAaC,UAIjBC,EAAiB,SAAUlD,GACzB,GAAI+C,EAAkB/C,GAAK,MAAM,IAAIgD,EAAW,wBAA0BhD,GAC1E,OAAOA,CACT,ECTIkD,EAAyBxC,EAEzByC,EAAUvC,OAIdwC,EAAiB,SAAUC,GACzB,OAAOF,EAAQD,EAAuBG,GACxC,ECPID,EAAWjC,EAEXkB,EAHc3B,EAGe,GAAG2B,gBAKpCiB,EAAiB1C,OAAO2C,QAAU,SAAgBvD,EAAIc,GACpD,OAAOuB,EAAee,EAASpD,GAAKc,EACtC,ECVI0C,EAAc9C,EAEd+C,EAAK,EACLC,EAAUzD,KAAK0D,SACfC,EAAWJ,EAAY,GAAII,UAE/BC,EAAiB,SAAU/C,GACzB,MAAO,gBAAqBU,IAARV,EAAoB,GAAKA,GAAO,KAAO8C,IAAWH,EAAKC,EAAS,GACtF,ECRAI,EAAqC,oBAAbC,WAA4BC,OAAOD,UAAUE,YAAc,GTA/E/D,EAASQ,EACTuD,EAAY9C,EAEZ+C,GAAUhE,EAAOgE,QACjBC,GAAOjE,EAAOiE,KACdC,GAAWF,IAAWA,GAAQE,UAAYD,IAAQA,GAAKzC,QACvD2C,GAAKD,IAAYA,GAASC,GAG1BA,KAIF3C,GAHAK,EAAQsC,GAAGC,MAAM,MAGD,GAAK,GAAKvC,EAAM,GAAK,EAAI,IAAMA,EAAM,GAAKA,EAAM,MAK7DL,GAAWuC,MACdlC,EAAQkC,EAAUlC,MAAM,iBACVA,EAAM,IAAM,MACxBA,EAAQkC,EAAUlC,MAAM,oBACbL,GAAWK,EAAM,IAIhC,IAAAwC,GAAiB7C,EUzBb8C,GAAa9D,GACbsB,GAAQb,EAGRsD,GAFSC,EAEQV,OAGrBW,KAAmB/D,OAAOgE,wBAA0B5C,IAAM,WACxD,IAAI6C,EAASC,OAAO,oBAKpB,OAAQL,GAAQI,MAAajE,OAAOiE,aAAmBC,UAEpDA,OAAOC,MAAQP,IAAcA,GAAa,EAC/C,ICdAQ,GAFoBtE,KAGdoE,OAAOC,MACkB,iBAAnBD,OAAOG,SCJfC,GAAS/D,EACToC,GAASmB,EACTb,GAAMsB,EACNC,GAAgBC,GAChBC,GAAoBC,GAEpBT,GAPSpE,EAOOoE,OAChBU,GAAwBN,GAAO,OAC/BO,GAAwBH,GAAoBR,GAAY,KAAKA,GAASA,IAAUA,GAAOY,eAAiB7B,GAE5G8B,GAAiB,SAAUC,GAKvB,OAJGrC,GAAOiC,GAAuBI,KACjCJ,GAAsBI,GAAQR,IAAiB7B,GAAOuB,GAAQc,GAC1Dd,GAAOc,GACPH,GAAsB,UAAYG,IAC/BJ,GAAsBI,EACjC,ECdIzD,GAAO,CAAA,EAEXA,GALsBzB,GAEc,gBAGd,IAEtB,IAAAmF,GAAkC,eAAjB7B,OAAO7B,ICPpB2D,GAAiC,iBAAZC,UAAwBA,SAASC,IAM1DC,GAAiB,CACfD,IAAKF,GACLI,gBAJqC,IAAfJ,SAA8CtE,IAAhBsE,ICFlDA,GAFepF,GAEYsF,IAI/BG,GANmBzF,GAMWwF,WAAa,SAAU7C,GACnD,MAA0B,mBAAZA,GAA0BA,IAAayC,EACvD,EAAI,SAAUzC,GACZ,MAA0B,mBAAZA,CAChB,ECVA+C,GAAA,CAAA,EAGAC,IAHY3F,GAGY,WAEtB,OAA+E,IAAxEE,OAAOD,eAAe,GAAI,EAAG,CAAE2F,IAAK,WAAc,OAAO,CAAI,IAAI,EAC1E,ICNIH,GAAazF,GAGboF,GAFe3E,GAEY6E,IAE/BO,GAJmBpF,GAIW+E,WAAa,SAAUlG,GACnD,MAAoB,iBAANA,EAAwB,OAAPA,EAAcmG,GAAWnG,IAAOA,IAAO8F,EACxE,EAAI,SAAU9F,GACZ,MAAoB,iBAANA,EAAwB,OAAPA,EAAcmG,GAAWnG,EAC1D,ECRIuG,GAAWpF,GAEX4E,GAHSrF,EAGSqF,SAElBS,GAASD,GAASR,KAAaQ,GAASR,GAASU,eAErDC,GAAiB,SAAU1G,GACzB,OAAOwG,GAAST,GAASU,cAAczG,GAAM,CAAA,CAC/C,ECPIyG,GAAgB/B,GAGpBiC,IALkBjG,KACNS,GAI4B,WAEtC,OAES,IAFFP,OAAOD,eAAe8F,GAAc,OAAQ,IAAK,CACtDH,IAAK,WAAc,OAAO,CAAI,IAC7BM,CACL,ICLAC,GALkBnG,IACNS,GAI0B,WAEpC,OAGiB,KAHVP,OAAOD,gBAAe,WAAY,GAAiB,YAAa,CACrEI,MAAO,GACPE,UAAU,IACTuB,SACL,ICXI+D,GAAW7F,GAEX+D,GAAUT,OACVhB,GAAaC,UAGjB6D,GAAiB,SAAUzD,GACzB,GAAIkD,GAASlD,GAAW,OAAOA,EAC/B,MAAM,IAAIL,GAAWyB,GAAQpB,GAAY,oBAC3C,ECTIf,GAAc5B,EAEd+B,GAAOlC,SAASiC,UAAUC,KAE9BsE,GAAiBzE,GAAcG,GAAKL,KAAKK,IAAQ,WAC/C,OAAOA,GAAKI,MAAMJ,GAAMK,UAC1B,ECNI5C,GAASQ,EACTyF,GAAahF,GAMjB6F,GAAiB,SAAUC,EAAWC,GACpC,OAAOpE,UAAUqE,OAAS,GALF9D,EAKgBnD,GAAO+G,GAJxCd,GAAW9C,GAAYA,OAAW7B,GAIoBtB,GAAO+G,IAAc/G,GAAO+G,GAAWC,GALtF,IAAU7D,CAM1B,ECPA+D,GAFkB1G,EAEW,CAAE,EAAC2G,eCF5BL,GAAatG,GACbyF,GAAahF,GACbkG,GAAgB3C,GAGhBvB,GAAUvC,OAEd0G,GAJwBnC,GAIa,SAAUnF,GAC7C,MAAoB,iBAANA,CAChB,EAAI,SAAUA,GACZ,IAAIuH,EAAUP,GAAW,UACzB,OAAOb,GAAWoB,IAAYF,GAAcE,EAAQ/E,UAAWW,GAAQnD,GACzE,ECZIyE,GAAUT,OAEdwD,GAAiB,SAAUnE,GACzB,IACE,OAAOoB,GAAQpB,EAChB,CAAC,MAAOnC,GACP,MAAO,QACR,CACH,ECRIiF,GAAazF,GACb8G,GAAcrG,GAEd6B,GAAaC,UAGjBwE,GAAiB,SAAUpE,GACzB,GAAI8C,GAAW9C,GAAW,OAAOA,EACjC,MAAM,IAAIL,GAAWwE,GAAYnE,GAAY,qBAC/C,ECTIoE,GAAY/G,GACZqC,GAAoB5B,EAIxBuG,GAAiB,SAAUC,EAAGC,GAC5B,IAAIC,EAAOF,EAAEC,GACb,OAAO7E,GAAkB8E,QAAQrG,EAAYiG,GAAUI,EACzD,ECRIpF,GAAO/B,GACPyF,GAAahF,GACboF,GAAW7B,GAEX1B,GAAaC,UCJbR,GAAO/B,GACP6F,GAAWpF,GACXmG,GAAW5C,GACXgD,GAAYvC,GACZ2C,GDIa,SAAUC,EAAOC,GAChC,IAAIpF,EAAIqF,EACR,GAAa,WAATD,GAAqB7B,GAAWvD,EAAKmF,EAAMnE,YAAc2C,GAAS0B,EAAMxF,GAAKG,EAAImF,IAAS,OAAOE,EACrG,GAAI9B,GAAWvD,EAAKmF,EAAMG,WAAa3B,GAAS0B,EAAMxF,GAAKG,EAAImF,IAAS,OAAOE,EAC/E,GAAa,WAATD,GAAqB7B,GAAWvD,EAAKmF,EAAMnE,YAAc2C,GAAS0B,EAAMxF,GAAKG,EAAImF,IAAS,OAAOE,EACrG,MAAM,IAAIjF,GAAW,0CACvB,ECPIA,GAAaC,UACbkF,GAHkB5C,GAGa,eCR/B6C,GDYa,SAAUL,EAAOC,GAChC,IAAKzB,GAASwB,IAAUT,GAASS,GAAQ,OAAOA,EAChD,IACIM,EADAC,EAAeZ,GAAUK,EAAOI,IAEpC,GAAIG,EAAc,CAGhB,QAFa9G,IAATwG,IAAoBA,EAAO,WAC/BK,EAAS5F,GAAK6F,EAAcP,EAAOC,IAC9BzB,GAAS8B,IAAWf,GAASe,GAAS,OAAOA,EAClD,MAAM,IAAIrF,GAAW,0CACtB,CAED,YADaxB,IAATwG,IAAoBA,EAAO,UACxBF,GAAoBC,EAAOC,EACpC,ECvBIV,GAAWnG,GAIfoH,GAAiB,SAAUlF,GACzB,IAAIvC,EAAMsH,GAAY/E,EAAU,UAChC,OAAOiE,GAASxG,GAAOA,EAAMA,EAAM,EACrC,ECRI0H,GAAc9H,GACd+H,GAAiBtH,GACjBuH,GAA0BhE,GAC1BoC,GAAW3B,GACXoD,GAAgBlD,GAEhBrC,GAAaC,UAEb0F,GAAkB/H,OAAOD,eAEzBiI,GAA4BhI,OAAOiI,yBACnCC,GAAa,aACbC,GAAe,eACfC,GAAW,WAIf5C,GAAA6C,EAAYT,GAAcE,GAA0B,SAAwBQ,EAAGtB,EAAGuB,GAIhF,GAHArC,GAASoC,GACTtB,EAAIW,GAAcX,GAClBd,GAASqC,GACQ,mBAAND,GAA0B,cAANtB,GAAqB,UAAWuB,GAAcH,MAAYG,IAAeA,EAAWH,IAAW,CAC5H,IAAII,EAAUR,GAA0BM,EAAGtB,GACvCwB,GAAWA,EAAQJ,MACrBE,EAAEtB,GAAKuB,EAAWpI,MAClBoI,EAAa,CACXnI,aAAc+H,MAAgBI,EAAaA,EAAWJ,IAAgBK,EAAQL,IAC9EM,WAAYP,MAAcK,EAAaA,EAAWL,IAAcM,EAAQN,IACxE7H,UAAU,GAGf,CAAC,OAAO0H,GAAgBO,EAAGtB,EAAGuB,EACjC,EAAIR,GAAkB,SAAwBO,EAAGtB,EAAGuB,GAIlD,GAHArC,GAASoC,GACTtB,EAAIW,GAAcX,GAClBd,GAASqC,GACLV,GAAgB,IAClB,OAAOE,GAAgBO,EAAGtB,EAAGuB,EACjC,CAAI,MAAOjI,GAAsB,CAC/B,GAAI,QAASiI,GAAc,QAASA,EAAY,MAAM,IAAInG,GAAW,2BAErE,MADI,UAAWmG,IAAYD,EAAEtB,GAAKuB,EAAWpI,OACtCmI,CACT,EAAA,IAAAI,GAAA,CAAA7I,QAAA,CAAA,GC1CI+H,GAAc9H,GACd6C,GAASpC,EAEToB,GAAoBhC,SAASiC,UAE7B+G,GAAgBf,IAAe5H,OAAOiI,yBAEtCrC,GAASjD,GAAOhB,GAAmB,QAKvCiH,GAAiB,CACfhD,OAAQA,GACRiD,OALWjD,IAA0D,cAAhD,WAAqC,EAAEZ,KAM5DmD,aALiBvC,MAAYgC,IAAgBA,IAAee,GAAchH,GAAmB,QAAQvB,eCTnGmF,GAAahF,GACbG,GAAQoD,EAERgF,GAJchJ,EAIiBH,SAASqD,UAGvCuC,GAAW7E,GAAMqI,iBACpBrI,GAAMqI,cAAgB,SAAU3J,GAC9B,OAAO0J,GAAiB1J,EAC5B,OCEI4J,GAAKtD,GAAKuD,GDCdF,GAAiBrI,GAAMqI,cEZnBxD,GAAahF,GAEb2I,GAHSpJ,EAGQoJ,QAErBC,GAAiB5D,GAAW2D,KAAY,cAAc3H,KAAK6B,OAAO8F,KCLlEE,GAAiB,SAAUC,EAAQlJ,GACjC,MAAO,CACLsI,aAAuB,EAATY,GACdjJ,eAAyB,EAATiJ,GAChBhJ,WAAqB,EAATgJ,GACZlJ,MAAOA,EAEX,ECNImJ,GAAuB/I,GACvB6I,GAA2BtF,GAE/ByF,GAJkBzJ,GAIa,SAAU0J,EAAQtJ,EAAKC,GACpD,OAAOmJ,GAAqBjB,EAAEmB,EAAQtJ,EAAKkJ,GAAyB,EAAGjJ,GACzE,EAAI,SAAUqJ,EAAQtJ,EAAKC,GAEzB,OADAqJ,EAAOtJ,GAAOC,EACPqJ,CACT,ECRIvG,GAAM1C,EAENkJ,GAHS3J,EAGK,QAElB4J,GAAiB,SAAUxJ,GACzB,OAAOuJ,GAAKvJ,KAASuJ,GAAKvJ,GAAO+C,GAAI/C,GACvC,ECPAyJ,GAAiB,CAAA,ELAbC,GAAkB9J,GAClBR,GAASiB,EACToF,GAAW7B,GACXyF,GAA8BhF,GAC9B5B,GAAS8B,EACTH,GAASK,EACT+E,GAAYG,GACZF,GAAaG,GAEbC,GAA6B,6BAC7B1H,GAAY/C,GAAO+C,UACnB6G,GAAU5J,GAAO4J,QAgBrB,GAAIU,IAAmBtF,GAAO0F,MAAO,CACnC,IAAItJ,GAAQ4D,GAAO0F,QAAU1F,GAAO0F,MAAQ,IAAId,IAEhDxI,GAAMgF,IAAMhF,GAAMgF,IAClBhF,GAAMuI,IAAMvI,GAAMuI,IAClBvI,GAAMsI,IAAMtI,GAAMsI,IAElBA,GAAM,SAAU5J,EAAI6K,GAClB,GAAIvJ,GAAMuI,IAAI7J,GAAK,MAAM,IAAIiD,GAAU0H,IAGvC,OAFAE,EAASC,OAAS9K,EAClBsB,GAAMsI,IAAI5J,EAAI6K,GACPA,CACX,EACEvE,GAAM,SAAUtG,GACd,OAAOsB,GAAMgF,IAAItG,IAAO,CAAA,CAC5B,EACE6J,GAAM,SAAU7J,GACd,OAAOsB,GAAMuI,IAAI7J,EACrB,CACA,KAAO,CACL,IAAI+K,GAAQT,GAAU,SACtBC,GAAWQ,KAAS,EACpBnB,GAAM,SAAU5J,EAAI6K,GAClB,GAAItH,GAAOvD,EAAI+K,IAAQ,MAAM,IAAI9H,GAAU0H,IAG3C,OAFAE,EAASC,OAAS9K,EAClBmK,GAA4BnK,EAAI+K,GAAOF,GAChCA,CACX,EACEvE,GAAM,SAAUtG,GACd,OAAOuD,GAAOvD,EAAI+K,IAAS/K,EAAG+K,IAAS,EAC3C,EACElB,GAAM,SAAU7J,GACd,OAAOuD,GAAOvD,EAAI+K,GACtB,CACA,CAEA,IAAAC,GAAiB,CACfpB,IAAKA,GACLtD,IAAKA,GACLuD,IAAKA,GACLoB,QArDY,SAAUjL,GACtB,OAAO6J,GAAI7J,GAAMsG,GAAItG,GAAM4J,GAAI5J,EAAI,CAAA,EACrC,EAoDEkL,UAlDc,SAAUC,GACxB,OAAO,SAAUnL,GACf,IAAI4K,EACJ,IAAKrE,GAASvG,KAAQ4K,EAAQtE,GAAItG,IAAKoL,OAASD,EAC9C,MAAM,IAAIlI,GAAU,0BAA4BkI,EAAO,aACvD,OAAOP,CACb,CACA,GMzBIpH,GAAc9C,EACdsB,GAAQb,EACRgF,GAAazB,GACbnB,GAAS4B,EACTqD,GAAcnD,GACdgG,GAA6B9F,GAAsCwD,aACnEY,GAAgBc,GAGhBa,GAFsBZ,GAEqBO,QAC3CM,GAHsBb,GAGiBpE,IACvC7B,GAAUT,OAEVrD,GAAiBC,OAAOD,eACxB6K,GAAchI,GAAY,GAAGiI,OAC7BC,GAAUlI,GAAY,GAAGkI,SACzBC,GAAOnI,GAAY,GAAGmI,MAEtBC,GAAsBpD,KAAgBxG,IAAM,WAC9C,OAAsF,IAA/ErB,IAAe,WAA2B,GAAE,SAAU,CAAEI,MAAO,IAAKoG,MAC7E,IAEI0E,GAAW7H,OAAOA,QAAQM,MAAM,UAEhCwH,GAAcC,GAAAtL,QAAiB,SAAUM,EAAO6E,EAAMoG,GACf,YAArCR,GAAY/G,GAAQmB,GAAO,EAAG,KAChCA,EAAO,IAAM8F,GAAQjH,GAAQmB,GAAO,qBAAsB,MAAQ,KAEhEoG,GAAWA,EAAQC,SAAQrG,EAAO,OAASA,GAC3CoG,GAAWA,EAAQE,SAAQtG,EAAO,OAASA,KAC1CrC,GAAOxC,EAAO,SAAYsK,IAA8BtK,EAAM6E,OAASA,KACtE4C,GAAa7H,GAAeI,EAAO,OAAQ,CAAEA,MAAO6E,EAAM5E,cAAc,IACvED,EAAM6E,KAAOA,GAEhBgG,IAAuBI,GAAWzI,GAAOyI,EAAS,UAAYjL,EAAMoG,SAAW6E,EAAQG,OACzFxL,GAAeI,EAAO,SAAU,CAAEA,MAAOiL,EAAQG,QAEnD,IACMH,GAAWzI,GAAOyI,EAAS,gBAAkBA,EAAQI,YACnD5D,IAAa7H,GAAeI,EAAO,YAAa,CAAEE,UAAU,IAEvDF,EAAMyB,YAAWzB,EAAMyB,eAAYhB,EAClD,CAAI,MAAON,GAAsB,CAC/B,IAAI0J,EAAQU,GAAqBvK,GAG/B,OAFGwC,GAAOqH,EAAO,YACjBA,EAAM9I,OAAS6J,GAAKE,GAAyB,iBAARjG,EAAmBA,EAAO,KACxD7E,CACX,EAIAR,SAASiC,UAAUoB,SAAWkI,IAAY,WACxC,OAAO3F,GAAW7F,OAASiL,GAAiBjL,MAAMwB,QAAU6H,GAAcrJ,KAC5E,GAAG,8BCrDC6F,GAAazF,GACbwJ,GAAuB/I,GACvB2K,GAAcpH,GACd7D,GAAuBsE,EAE3BkH,GAAiB,SAAUnD,EAAGpI,EAAKC,EAAOiL,GACnCA,IAASA,EAAU,IACxB,IAAIM,EAASN,EAAQ3C,WACjBzD,OAAwBpE,IAAjBwK,EAAQpG,KAAqBoG,EAAQpG,KAAO9E,EAEvD,GADIqF,GAAWpF,IAAQ+K,GAAY/K,EAAO6E,EAAMoG,GAC5CA,EAAQ9L,OACNoM,EAAQpD,EAAEpI,GAAOC,EAChBF,GAAqBC,EAAKC,OAC1B,CACL,IACOiL,EAAQO,OACJrD,EAAEpI,KAAMwL,GAAS,UADEpD,EAAEpI,EAEpC,CAAM,MAAOI,GAAsB,CAC3BoL,EAAQpD,EAAEpI,GAAOC,EAChBmJ,GAAqBjB,EAAEC,EAAGpI,EAAK,CAClCC,MAAOA,EACPsI,YAAY,EACZrI,cAAegL,EAAQQ,gBACvBvL,UAAW+K,EAAQS,aAEtB,CAAC,OAAOvD,CACX,EC1BI1F,GAAc9C,EAEdkD,GAAWJ,GAAY,GAAGI,UAC1B4H,GAAchI,GAAY,GAAGiI,OAEjCiB,GAAiB,SAAU1M,GACzB,OAAOwL,GAAY5H,GAAS5D,GAAK,GAAI,EACvC,ECPI2M,GAAwBjM,GACxByF,GAAahF,GACbuL,GAAahI,GAGbkI,GAFkBzH,GAEc,eAChChC,GAAUvC,OAGViM,GAAwE,cAApDH,GAAW,WAAc,OAAO5J,SAAY,CAAjC,IAUnCgK,GAAiBH,GAAwBD,GAAa,SAAU1M,GAC9D,IAAIkJ,EAAG6D,EAAK1E,EACZ,YAAc7G,IAAPxB,EAAmB,YAAqB,OAAPA,EAAc,OAEO,iBAAjD+M,EAXD,SAAU/M,EAAIc,GACzB,IACE,OAAOd,EAAGc,EACd,CAAI,MAAOI,GAAsB,CACjC,CAOoB8L,CAAO9D,EAAI/F,GAAQnD,GAAK4M,KAA8BG,EAEpEF,GAAoBH,GAAWxD,GAEF,YAA5Bb,EAASqE,GAAWxD,KAAoB/C,GAAW+C,EAAE+D,QAAU,YAAc5E,CACpF,EC3BIyE,GAAU3L,GCCVyC,GDFwBlD,GAKa,CAAA,EAAGkD,SAAW,WACrD,MAAO,WAAakJ,GAAQxM,MAAQ,GACtC,ECP4BI,IACRS,GAMJP,OAAO4B,UAAW,WAAYoB,GAAU,CAAE2I,QAAQ,IAClE,IAAAW,GAAA,CAAA,EAAAC,GAAA,CAAA,ECRIC,GAAwB,CAAE,EAACC,qBAE3BxE,GAA2BjI,OAAOiI,yBAGlCyE,GAAczE,KAA6BuE,GAAsB3K,KAAK,CAAE,EAAG,GAAK,GAIpF0K,GAAAlE,EAAYqE,GAAc,SAA8B3F,GACtD,IAAI4F,EAAa1E,GAAyBvI,KAAMqH,GAChD,QAAS4F,GAAcA,EAAWlE,UACpC,EAAI+D,GCZJ,IACIpL,GAAQb,EACR2L,GAAUpI,GAEVvB,GAAUvC,OACV0D,GALc5D,EAKM,GAAG4D,OAG3BkJ,GAAiBxL,IAAM,WAGrB,OAAQmB,GAAQ,KAAKkK,qBAAqB,EAC5C,IAAK,SAAUrN,GACb,MAAuB,WAAhB8M,GAAQ9M,GAAmBsE,GAAMtE,EAAI,IAAMmD,GAAQnD,EAC5D,EAAImD,GCbAsK,GAAgB/M,GAChBwC,GAAyB/B,EAE7BuM,GAAiB,SAAU1N,GACzB,OAAOyN,GAAcvK,GAAuBlD,GAC9C,ECNIwI,GAAc9H,GACd+B,GAAOtB,GACPwM,GAA6BjJ,GAC7BsF,GAA2B7E,GAC3BuI,GAAkBrI,GAClBkD,GAAgBhD,GAChBhC,GAASkH,EACThC,GAAiBiC,GAGjB9B,GAA4BhI,OAAOiI,yBAI9BqE,GAAAjE,EAAGT,GAAcI,GAA4B,SAAkCM,EAAGtB,GAGzF,GAFAsB,EAAIwE,GAAgBxE,GACpBtB,EAAIW,GAAcX,GACda,GAAgB,IAClB,OAAOG,GAA0BM,EAAGtB,EACxC,CAAI,MAAO1G,GAAsB,CAC/B,GAAIqC,GAAO2F,EAAGtB,GAAI,OAAOoC,IAA0BvH,GAAKkL,GAA2B1E,EAAGC,EAAGtB,GAAIsB,EAAEtB,GACjG,EAAA,IAAAgG,GAAA,CAAA,ECrBIC,GAAO5N,KAAK4N,KACZC,GAAQ7N,KAAK6N,MCDbC,GDMa9N,KAAK8N,OAAS,SAAeC,GAC5C,IAAIC,GAAKD,EACT,OAAQC,EAAI,EAAIH,GAAQD,IAAMI,EAChC,ECLAC,GAAiB,SAAU7K,GACzB,IAAI8K,GAAU9K,EAEd,OAAO8K,GAAWA,GAAqB,IAAXA,EAAe,EAAIJ,GAAMI,EACvD,ECRID,GAAsBxN,GAEtB0N,GAAMnO,KAAKmO,IACXC,GAAMpO,KAAKoO,IAKfC,GAAiB,SAAUC,EAAOpH,GAChC,IAAIqH,EAAUN,GAAoBK,GAClC,OAAOC,EAAU,EAAIJ,GAAII,EAAUrH,EAAQ,GAAKkH,GAAIG,EAASrH,EAC/D,ECXI+G,GAAsBxN,GAEtB2N,GAAMpO,KAAKoO,IAIfI,GAAiB,SAAUpL,GACzB,OAAOA,EAAW,EAAIgL,GAAIH,GAAoB7K,GAAW,kBAAoB,CAC/E,ECRIoL,GAAW/N,GAIfgO,GAAiB,SAAUC,GACzB,OAAOF,GAASE,EAAIxH,OACtB,ECNIuG,GAAkBhN,GAClB4N,GAAkBnN,GAClBuN,GAAoBhK,GAGpBkK,GAAe,SAAUC,GAC3B,OAAO,SAAUC,EAAOC,EAAIC,GAC1B,IAGIjO,EAHAmI,EAAIwE,GAAgBoB,GACpB3H,EAASuH,GAAkBxF,GAC3BqF,EAAQD,GAAgBU,EAAW7H,GAIvC,GAAI0H,GAAeE,GAAOA,GAAI,KAAO5H,EAASoH,GAG5C,IAFAxN,EAAQmI,EAAEqF,OAEIxN,EAAO,OAAO,OAEvB,KAAMoG,EAASoH,EAAOA,IAC3B,IAAKM,GAAeN,KAASrF,IAAMA,EAAEqF,KAAWQ,EAAI,OAAOF,GAAeN,GAAS,EACnF,OAAQM,IAAgB,CAC9B,CACA,EAEAI,GAAiB,CAGfC,SAAUN,IAAa,GAGvBO,QAASP,IAAa,IC7BpBrL,GAASpC,EACTuM,GAAkBhJ,GAClByK,GAAUhK,GAAuCgK,QACjD5E,GAAalF,GAEb5D,GANcf,EAMK,GAAGe,MAE1B2N,GAAiB,SAAUhF,EAAQiF,GACjC,IAGIvO,EAHAoI,EAAIwE,GAAgBtD,GACpBkF,EAAI,EACJjH,EAAS,GAEb,IAAKvH,KAAOoI,GAAI3F,GAAOgH,GAAYzJ,IAAQyC,GAAO2F,EAAGpI,IAAQW,GAAK4G,EAAQvH,GAE1E,KAAOuO,EAAMlI,OAASmI,GAAO/L,GAAO2F,EAAGpI,EAAMuO,EAAMC,SAChDH,GAAQ9G,EAAQvH,IAAQW,GAAK4G,EAAQvH,IAExC,OAAOuH,CACT,EClBAkH,GAAiB,CACf,cACA,iBACA,gBACA,uBACA,iBACA,WACA,WCREC,GAAqB9O,GAGrB6J,GAFcpJ,GAEWsO,OAAO,SAAU,aAKrC7B,GAAA3E,EAAGrI,OAAO8O,qBAAuB,SAA6BxG,GACrE,OAAOsG,GAAmBtG,EAAGqB,GAC/B,ECVA,IAAAoF,GAAA,CAAA,EACSA,GAAA1G,EAAGrI,OAAOgE,sBCDnB,IAAIoC,GAAatG,GAEbkP,GAA4BlL,GAC5BmL,GAA8B1K,GAC9B2B,GAAWzB,GAEXoK,GALctO,EAKO,GAAGsO,QAG5BK,GAAiB9I,GAAW,UAAW,YAAc,SAAiBhH,GACpE,IAAIqK,EAAOuF,GAA0B3G,EAAEnC,GAAS9G,IAC5C4E,EAAwBiL,GAA4B5G,EACxD,OAAOrE,EAAwB6K,GAAOpF,EAAMzF,EAAsB5E,IAAOqK,CAC3E,ECbI9G,GAAS7C,EACToP,GAAU3O,GACV4O,GAAiCrL,GACjCwF,GAAuB/E,GCHvBnD,GAAQtB,EACRyF,GAAahF,GAEb6O,GAAc,kBAEdC,GAAW,SAAUC,EAASC,GAChC,IAAIpP,EAAQqP,GAAKC,GAAUH,IAC3B,OAAOnP,IAAUuP,IACbvP,IAAUwP,KACVpK,GAAWgK,GAAanO,GAAMmO,KAC5BA,EACR,EAEIE,GAAYJ,GAASI,UAAY,SAAUG,GAC7C,OAAOxM,OAAOwM,GAAQ9E,QAAQsE,GAAa,KAAKS,aAClD,EAEIL,GAAOH,GAASG,KAAO,GACvBG,GAASN,GAASM,OAAS,IAC3BD,GAAWL,GAASK,SAAW,IAEnCI,GAAiBT,GCrBb/P,GAASQ,EACTmI,GAA2B1H,GAA2D8H,EACtFkB,GAA8BzF,GAC9B2H,GAAgBlH,GAChBtE,GAAuBwE,EACvBsL,GFAa,SAAUC,EAAQ9O,EAAQ+O,GAIzC,IAHA,IAAIxG,EAAOyF,GAAQhO,GACfnB,EAAiBuJ,GAAqBjB,EACtCJ,EAA2BkH,GAA+B9G,EACrDqG,EAAI,EAAGA,EAAIjF,EAAKlD,OAAQmI,IAAK,CACpC,IAAIxO,EAAMuJ,EAAKiF,GACV/L,GAAOqN,EAAQ9P,IAAU+P,GAActN,GAAOsN,EAAY/P,IAC7DH,EAAeiQ,EAAQ9P,EAAK+H,EAAyB/G,EAAQhB,GAEhE,CACH,EETImP,GAAWxF,GAiBfqG,GAAiB,SAAU9E,EAASlK,GAClC,IAGY8O,EAAQ9P,EAAKiQ,EAAgBC,EAAgBzD,EAHrD0D,EAASjF,EAAQ4E,OACjBM,EAASlF,EAAQ9L,OACjBiR,EAASnF,EAAQoF,KASrB,GANER,EADEM,EACOhR,GACAiR,EACAjR,GAAO+Q,IAAWpQ,GAAqBoQ,EAAQ,CAAA,IAE9C/Q,GAAO+Q,IAAW,CAAA,GAAIzO,UAEtB,IAAK1B,KAAOgB,EAAQ,CAQ9B,GAPAkP,EAAiBlP,EAAOhB,GAGtBiQ,EAFE/E,EAAQqF,gBACV9D,EAAa1E,GAAyB+H,EAAQ9P,KACfyM,EAAWxM,MACpB6P,EAAO9P,IACtBmP,GAASiB,EAASpQ,EAAMmQ,GAAUE,EAAS,IAAM,KAAOrQ,EAAKkL,EAAQsF,cAE5C9P,IAAnBuP,EAA8B,CAC3C,UAAWC,UAAyBD,EAAgB,SACpDJ,GAA0BK,EAAgBD,EAC3C,EAEG/E,EAAQjH,MAASgM,GAAkBA,EAAehM,OACpDoF,GAA4B6G,EAAgB,QAAQ,GAEtD3E,GAAcuE,EAAQ9P,EAAKkQ,EAAgBhF,EAC5C,CACH,EClDAuF,GAA6C,YAF/BpQ,GADDT,EAGmBwD,SCH5BV,GAAc9C,EACd+G,GAAYtG,GCDZgF,GAAazF,GAEb+D,GAAUT,OACVhB,GAAaC,UCFbuO,GFEa,SAAUpH,EAAQtJ,EAAKoG,GACtC,IAEE,OAAO1D,GAAYiE,GAAU7G,OAAOiI,yBAAyBuB,EAAQtJ,GAAKoG,IAC9E,CAAI,MAAOhG,GAAsB,CACjC,EENI4F,GAAW3F,GACXsQ,GDEa,SAAUpO,GACzB,GAAuB,iBAAZA,GAAwB8C,GAAW9C,GAAW,OAAOA,EAChE,MAAM,IAAIL,GAAW,aAAeyB,GAAQpB,GAAY,kBAC1D,ECCAqO,GAAiB9Q,OAAO+Q,iBAAmB,aAAe,CAAE,EAAG,WAC7D,IAEIzF,EAFA0F,GAAiB,EACjBzP,EAAO,CAAA,EAEX,KACE+J,EAASsF,GAAoB5Q,OAAO4B,UAAW,YAAa,QACrDL,EAAM,IACbyP,EAAiBzP,aAAgB0P,KACrC,CAAI,MAAO3Q,GAAsB,CAC/B,OAAO,SAAwBgI,EAAG4I,GAKhC,OAJAhL,GAASoC,GACTuI,GAAmBK,GACfF,EAAgB1F,EAAOhD,EAAG4I,GACzB5I,EAAE6I,UAAYD,EACZ5I,CACX,CACA,CAhB+D,QAgBzD1H,GCzBFb,GAAiBD,GAA+CuI,EAChE1F,GAASpC,EAGTyL,GAFkBlI,GAEc,eAEpCsN,GAAiB,SAAUpB,EAAQqB,EAAKd,GAClCP,IAAWO,IAAQP,EAASA,EAAOpO,WACnCoO,IAAWrN,GAAOqN,EAAQhE,KAC5BjM,GAAeiQ,EAAQhE,GAAe,CAAE5L,cAAc,EAAMD,MAAOkR,GAEvE,ECXInG,GAAcpL,GACdC,GAAiBQ,GAErB+Q,GAAiB,SAAUtB,EAAQhL,EAAM2H,GAGvC,OAFIA,EAAWjH,KAAKwF,GAAYyB,EAAWjH,IAAKV,EAAM,CAAEqG,QAAQ,IAC5DsB,EAAW3D,KAAKkC,GAAYyB,EAAW3D,IAAKhE,EAAM,CAAEsG,QAAQ,IACzDvL,GAAesI,EAAE2H,EAAQhL,EAAM2H,EACxC,ECPIvG,GAAatG,GACbwR,GAAwB/Q,GAExBqH,GAAcrD,GAEdgN,GAHkBzN,GAGQ,WAE9B0N,GAAiB,SAAUC,GACzB,IAAIC,EAActL,GAAWqL,GAEzB7J,IAAe8J,IAAgBA,EAAYH,KAC7CD,GAAsBI,EAAaH,GAAS,CAC1CnR,cAAc,EACdsF,IAAK,WAAc,OAAOhG,IAAO,GAGvC,EChBI+G,GAAgB3G,GAEhBsC,GAAaC,UAEjBsP,GAAiB,SAAUvS,EAAIwS,GAC7B,GAAInL,GAAcmL,EAAWxS,GAAK,OAAOA,EACzC,MAAM,IAAIgD,GAAW,uBACvB,ECPIQ,GAAc9C,EACdsB,GAAQb,EACRgF,GAAazB,GACboI,GAAU3H,GAEVwE,GAAgBpE,GAEhBkN,GAAO,WAAY,EACnBC,GAAQ,GACRC,GALatN,GAKU,UAAW,aAClCuN,GAAoB,2BACpB3Q,GAAOuB,GAAYoP,GAAkB3Q,MACrC4Q,IAAuBD,GAAkBzQ,KAAKsQ,IAE9CK,GAAsB,SAAuBzP,GAC/C,IAAK8C,GAAW9C,GAAW,OAAO,EAClC,IAEE,OADAsP,GAAUF,GAAMC,GAAOrP,IAChB,CACR,CAAC,MAAOnC,GACP,OAAO,CACR,CACH,EAEI6R,GAAsB,SAAuB1P,GAC/C,IAAK8C,GAAW9C,GAAW,OAAO,EAClC,OAAQyJ,GAAQzJ,IACd,IAAK,gBACL,IAAK,oBACL,IAAK,yBAA0B,OAAO,EAExC,IAIE,OAAOwP,MAAyB5Q,GAAK2Q,GAAmBjJ,GAActG,GACvE,CAAC,MAAOnC,GACP,OAAO,CACR,CACH,EAEA6R,GAAoBhO,MAAO,EAI3B,ICtBIiO,GAAWC,GAAOC,GAASC,GDsB/BC,IAAkBT,IAAa3Q,IAAM,WACnC,IAAIqR,EACJ,OAAOP,GAAoBA,GAAoBrQ,QACzCqQ,GAAoBlS,UACpBkS,IAAoB,WAAcO,GAAS,CAAK,KACjDA,CACP,IAAKN,GAAsBD,GEnDvBM,GAAgB1S,GAChB8G,GAAcrG,GAEd6B,GAAaC,UCHb6D,GAAWpG,GACX4S,GDKa,SAAUjQ,GACzB,GAAI+P,GAAc/P,GAAW,OAAOA,EACpC,MAAM,IAAIL,GAAWwE,GAAYnE,GAAY,wBAC/C,ECPIN,GAAoB2B,EAGpByN,GAFkBhN,GAEQ,WCL1B7C,GAAc5B,EAEd6B,GAAoBhC,SAASiC,UAC7BK,GAAQN,GAAkBM,MAC1BJ,GAAOF,GAAkBE,KAG7B8Q,GAAmC,iBAAXC,SAAuBA,QAAQ3Q,QAAUP,GAAcG,GAAKL,KAAKS,IAAS,WAChG,OAAOJ,GAAKI,MAAMA,GAAOC,UAC3B,GCTI4J,GAAahM,GACb8C,GAAcrC,EAElBsS,GAAiB,SAAU7Q,GAIzB,GAAuB,aAAnB8J,GAAW9J,GAAoB,OAAOY,GAAYZ,EACxD,ECPI6E,GAAYtG,GACZmB,GAAcoC,EAEdtC,GAJc1B,MAIiB0B,MAGnCsR,GAAiB,SAAU9Q,EAAI+Q,GAE7B,OADAlM,GAAU7E,QACMpB,IAATmS,EAAqB/Q,EAAKN,GAAcF,GAAKQ,EAAI+Q,GAAQ,WAC9D,OAAO/Q,EAAGC,MAAM8Q,EAAM7Q,UAC1B,CACA,ECVA8Q,GAFiBlT,GAEW,WAAY,mBCAxCmT,GAFkBnT,EAEW,GAAG+K,OCF5BzI,GAAaC,UCGjB6Q,GAAiB,qCAAqC3R,KAHtCzB,GTAZR,GAASQ,EACTmC,GAAQ1B,GACRiB,GAAOsC,GACPyB,GAAahB,GACb5B,GAAS8B,EACTrD,GAAQuD,EACRqO,GAAOnJ,GACPoJ,GAAanJ,GACbjE,GAAgBsN,GAChBC,GQPa,SAAUC,EAAQC,GACjC,GAAID,EAASC,EAAU,MAAM,IAAIlR,GAAW,wBAC5C,OAAOiR,CACT,ERKIE,GAASC,GACTC,GAAUC,GAEV1K,GAAM1J,GAAOqU,aACbC,GAAQtU,GAAOuU,eACfvQ,GAAUhE,GAAOgE,QACjBwQ,GAAWxU,GAAOwU,SAClBnU,GAAWL,GAAOK,SAClBoU,GAAiBzU,GAAOyU,eACxB3Q,GAAS9D,GAAO8D,OAChB4Q,GAAU,EACVC,GAAQ,CAAA,EACRC,GAAqB,qBAGzB9S,IAAM,WAEJgR,GAAY9S,GAAO6U,QACrB,IAEA,IAAIC,GAAM,SAAUvR,GAClB,GAAIF,GAAOsR,GAAOpR,GAAK,CACrB,IAAIb,EAAKiS,GAAMpR,UACRoR,GAAMpR,GACbb,GACD,CACH,EAEIqS,GAAS,SAAUxR,GACrB,OAAO,WACLuR,GAAIvR,EACR,CACA,EAEIyR,GAAgB,SAAUC,GAC5BH,GAAIG,EAAM/E,KACZ,EAEIgF,GAAyB,SAAU3R,GAErCvD,GAAOmV,YAAYrR,GAAOP,GAAKuP,GAAUsC,SAAW,KAAOtC,GAAUuC,KACvE,EAGK3L,IAAQ4K,KACX5K,GAAM,SAAsB4L,GAC1BxB,GAAwBlR,UAAUqE,OAAQ,GAC1C,IAAIvE,EAAKuD,GAAWqP,GAAWA,EAAUjV,GAASiV,GAC9CC,EAAO5B,GAAW/Q,UAAW,GAKjC,OAJA+R,KAAQD,IAAW,WACjB/R,GAAMD,OAAIpB,EAAWiU,EAC3B,EACIxC,GAAM2B,IACCA,EACX,EACEJ,GAAQ,SAAwB/Q,UACvBoR,GAAMpR,EACjB,EAEM4Q,GACFpB,GAAQ,SAAUxP,GAChBS,GAAQwR,SAAST,GAAOxR,GAC9B,EAEaiR,IAAYA,GAASiB,IAC9B1C,GAAQ,SAAUxP,GAChBiR,GAASiB,IAAIV,GAAOxR,GAC1B,EAGakR,KAAmBR,IAE5BhB,IADAD,GAAU,IAAIyB,IACCiB,MACf1C,GAAQ2C,MAAMC,UAAYZ,GAC1BjC,GAAQ7Q,GAAK+Q,GAAKkC,YAAalC,KAI/BjT,GAAO6V,kBACP5P,GAAWjG,GAAOmV,eACjBnV,GAAO8V,eACRhD,IAAoC,UAAvBA,GAAUsC,WACtBtT,GAAMoT,KAEPnC,GAAQmC,GACRlV,GAAO6V,iBAAiB,UAAWb,IAAe,IAGlDjC,GADS6B,MAAsBrO,GAAc,UACrC,SAAUhD,GAChBmQ,GAAKqC,YAAYxP,GAAc,WAAWqO,IAAsB,WAC9DlB,GAAKsC,YAAY5V,MACjB0U,GAAIvR,EACZ,CACA,EAGY,SAAUA,GAChB0S,WAAWlB,GAAOxR,GAAK,EAC7B,GAIA,IAAA2S,GAAiB,CACfxM,IAAKA,GACL4K,MAAOA,IUlHL6B,GAAQ,WACV/V,KAAKgW,KAAO,KACZhW,KAAKiW,KAAO,IACd,EAEAF,GAAM7T,UAAY,CAChBgU,IAAK,SAAUC,GACb,IAAIC,EAAQ,CAAED,KAAMA,EAAME,KAAM,MAC5BJ,EAAOjW,KAAKiW,KACZA,EAAMA,EAAKI,KAAOD,EACjBpW,KAAKgW,KAAOI,EACjBpW,KAAKiW,KAAOG,CACb,EACDpQ,IAAK,WACH,IAAIoQ,EAAQpW,KAAKgW,KACjB,GAAII,EAGF,OADa,QADFpW,KAAKgW,KAAOI,EAAMC,QACVrW,KAAKiW,KAAO,MACxBG,EAAMD,IAEhB,GAGH,ICNIG,GAAQC,GAAQC,GAAMC,GAASC,GDMnCnC,GAAiBwB,GErBjBY,GAAiB,oBAAoB9U,KAFrBzB,IAEyD,oBAAVwW,OCA/DC,GAAiB,qBAAqBhV,KAFtBzB,GFAZR,GAASQ,EACT0B,GAAOjB,GACP0H,GAA2BnE,GAA2DuE,EACtFmO,GAAYjS,GAA6ByE,IACzCyM,GAAQhR,GACR8O,GAAS5O,GACT8R,GAAgB5M,GAChB6M,GAAkB5M,GAClB2J,GAAUN,GAEVwD,GAAmBrX,GAAOqX,kBAAoBrX,GAAOsX,uBACrDzR,GAAW7F,GAAO6F,SAClB7B,GAAUhE,GAAOgE,QACjBuT,GAAUvX,GAAOuX,QAEjBC,GAA2B7O,GAAyB3I,GAAQ,kBAC5DyX,GAAYD,IAA4BA,GAAyB3W,MAIrE,IAAK4W,GAAW,CACd,IAAI9C,GAAQ,IAAIwB,GAEZuB,GAAQ,WACV,IAAIC,EAAQjV,EAEZ,IADIyR,KAAYwD,EAAS3T,GAAQ4T,SAASD,EAAOE,OAC1CnV,EAAKiS,GAAMvO,WAChB1D,GACD,CAAC,MAAO1B,GAEP,MADI2T,GAAMyB,MAAMM,KACV1V,CACP,CACG2W,GAAQA,EAAOG,OACvB,EAIO7D,IAAWE,IAAYiD,KAAmBC,KAAoBxR,IAQvDsR,IAAiBI,IAAWA,GAAQQ,UAE9ClB,GAAUU,GAAQQ,aAAQzW,IAElB4K,YAAcqL,GACtBT,GAAO5U,GAAK2U,GAAQC,KAAMD,IAC1BH,GAAS,WACPI,GAAKY,GACX,GAEavD,GACTuC,GAAS,WACP1S,GAAQwR,SAASkC,GACvB,GASIR,GAAYhV,GAAKgV,GAAWlX,IAC5B0W,GAAS,WACPQ,GAAUQ,GAChB,IAhCIf,IAAS,EACTC,GAAO/Q,GAASmS,eAAe,IAC/B,IAAIX,GAAiBK,IAAOO,QAAQrB,GAAM,CAAEsB,eAAe,IAC3DxB,GAAS,WACPE,GAAK1G,KAAOyG,IAAUA,EAC5B,GA8BEc,GAAY,SAAU/U,GACfiS,GAAMyB,MAAMM,KACjB/B,GAAM2B,IAAI5T,EACd,CACA,CAEA,IAAAyV,GAAiBV,GG/EjBW,GAAiB,SAAUrW,GACzB,IACE,MAAO,CAAEf,OAAO,EAAOH,MAAOkB,IAC/B,CAAC,MAAOf,GACP,MAAO,CAAEA,OAAO,EAAMH,MAAOG,EAC9B,CACH,ECJAqX,GAFa7X,EAEW+W,QCDxBe,GAAgC,iBAARrU,MAAoBA,MAA+B,iBAAhBA,KAAKzC,QCEhE+W,IAHc/X,KACAS,IAGQ,iBAAVf,QACY,iBAAZ2F,SCLR7F,GAASQ,EACTgY,GAA2BvX,GAC3BgF,GAAazB,GACbuL,GAAW9K,GACXwE,GAAgBtE,GAChBM,GAAkBJ,GAClBoT,GAAalO,GACbmO,GAAUlO,GAEVlG,GAAaqU,GAEYH,IAA4BA,GAAyBlW,UAClF,IAAI2P,GAAUxM,GAAgB,WAC1BmT,IAAc,EACdC,GAAiC5S,GAAWjG,GAAO8Y,uBAEnDC,GAA6BhJ,GAAS,WAAW,WACnD,IAAIiJ,EAA6BvP,GAAc+O,IAC3CS,EAAyBD,IAA+BlV,OAAO0U,IAInE,IAAKS,GAAyC,KAAf3U,GAAmB,OAAO,EAMzD,IAAKA,IAAcA,GAAa,KAAO,cAAcrC,KAAK+W,GAA6B,CAErF,IAAInC,EAAU,IAAI2B,IAAyB,SAAUT,GAAWA,EAAQ,EAAG,IACvEmB,EAAc,SAAUnX,GAC1BA,GAAK,WAAY,IAAiB,WAAY,GACpD,EAII,IAHkB8U,EAAQ3K,YAAc,IAC5B+F,IAAWiH,IACvBN,GAAc/B,EAAQC,MAAK,WAA2B,cAAaoC,GACjD,OAAO,CAE7B,CAAI,OAAQD,IAA2BR,IAAcC,MAAaG,EAClE,IAEAM,GAAiB,CACfC,YAAaL,GACbM,gBAAiBR,GACjBD,YAAaA,IC7CfU,GAAA,CAAA,EAAI/R,GAAY/G,GAEZsC,GAAaC,UAEbwW,GAAoB,SAAUC,GAChC,IAAIzB,EAAS0B,EACbrZ,KAAKyW,QAAU,IAAI2C,GAAE,SAAUE,EAAWC,GACxC,QAAgBrY,IAAZyW,QAAoCzW,IAAXmY,EAAsB,MAAM,IAAI3W,GAAW,2BACxEiV,EAAU2B,EACVD,EAASE,CACb,IACEvZ,KAAK2X,QAAUxQ,GAAUwQ,GACzB3X,KAAKqZ,OAASlS,GAAUkS,EAC1B,EAIgBG,GAAA7Q,EAAG,SAAUyQ,GAC3B,OAAO,IAAID,GAAkBC,EAC/B,ECnBA,IAgDIK,GAAUC,GAAsCC,GAhDhDC,GAAIxZ,GAEJ2T,GAAU3P,GACVxE,GAASiF,EACT1C,GAAO4C,GACPgH,GAAgB9G,GAChBoM,GAAiBlH,GACjBuH,GAAiBtH,GACjB0H,GAAa2B,GACbtM,GAAYoR,GACZ1S,GAAaiO,GACb7N,GAAW+N,GACX/B,GAAa4H,GACbC,GlBJa,SAAUlR,EAAGmR,GAC5B,IACIC,EADAZ,EAAI5S,GAASoC,GAAGkD,YAEpB,YAAa5K,IAANkY,GAAmB3W,GAAkBuX,EAAIxT,GAAS4S,GAAGvH,KAAYkI,EAAqB/G,GAAagH,EAC5G,EkBCIlE,GAAOmE,GAA6B3Q,IACpC+N,GAAY6C,GACZC,GChBa,SAAU7T,EAAG8T,GAC5B,IAEuB,IAArB5X,UAAUqE,OAAewT,QAAQzZ,MAAM0F,GAAK+T,QAAQzZ,MAAM0F,EAAG8T,EACjE,CAAI,MAAOxZ,GAAsB,CACjC,EDYIoX,GAAUsC,GACVvE,GAAQwE,GACRC,GAAsBC,GACtBrC,GAA2BsC,GAE3BC,GAA6BC,GAE7BC,GAAU,UACVlC,GAJ8BmC,GAI2B9B,YACzDP,GAL8BqC,GAK+B7B,gBAC7D8B,GAN8BD,GAM2BtC,YACzDwC,GAA0BR,GAAoB5P,UAAUiQ,IACxDI,GAAmBT,GAAoBlR,IACvC4R,GAAyB9C,IAA4BA,GAAyBlW,UAC9EiZ,GAAqB/C,GACrBgD,GAAmBF,GACnBvY,GAAY/C,GAAO+C,UACnB8C,GAAW7F,GAAO6F,SAClB7B,GAAUhE,GAAOgE,QACjB4V,GAAuBmB,GAA2BhS,EAClD0S,GAA8B7B,GAE9B8B,MAAoB7V,IAAYA,GAAS8V,aAAe3b,GAAO4b,eAC/DC,GAAsB,qBAWtBC,GAAa,SAAUhc,GACzB,IAAIgX,EACJ,SAAOzQ,GAASvG,KAAOmG,GAAW6Q,EAAOhX,EAAGgX,QAAQA,CACtD,EAEIiF,GAAe,SAAUC,EAAUtR,GACrC,IAMIvC,EAAQ2O,EAAMmF,EANdpb,EAAQ6J,EAAM7J,MACdqb,EAfU,IAeLxR,EAAMA,MACX4K,EAAU4G,EAAKF,EAASE,GAAKF,EAASG,KACtCpE,EAAUiE,EAASjE,QACnB0B,EAASuC,EAASvC,OAClB7B,EAASoE,EAASpE,OAEtB,IACMtC,GACG4G,IApBK,IAqBJxR,EAAM0R,WAAyBC,GAAkB3R,GACrDA,EAAM0R,UAvBA,IAyBQ,IAAZ9G,EAAkBnN,EAAStH,GAEzB+W,GAAQA,EAAOE,QACnB3P,EAASmN,EAAQzU,GACb+W,IACFA,EAAOC,OACPoE,GAAS,IAGT9T,IAAW6T,EAASnF,QACtB4C,EAAO,IAAI1W,GAAU,yBACZ+T,EAAOgF,GAAW3T,IAC3B5F,GAAKuU,EAAM3O,EAAQ4P,EAAS0B,GACvB1B,EAAQ5P,IACVsR,EAAO5Y,EACf,CAAC,MAAOG,GACH4W,IAAWqE,GAAQrE,EAAOC,OAC9B4B,EAAOzY,EACR,CACH,EAEI0V,GAAS,SAAUhM,EAAO4R,GACxB5R,EAAM6R,WACV7R,EAAM6R,UAAW,EACjB9E,IAAU,WAGR,IAFA,IACIuE,EADAQ,EAAY9R,EAAM8R,UAEfR,EAAWQ,EAAUpW,OAC1B2V,GAAaC,EAAUtR,GAEzBA,EAAM6R,UAAW,EACbD,IAAa5R,EAAM0R,WAAWK,GAAY/R,EAClD,IACA,EAEIkR,GAAgB,SAAUlW,EAAMmR,EAAS6F,GAC3C,IAAIzH,EAAOK,EACPoG,KACFzG,EAAQpP,GAAS8V,YAAY,UACvB9E,QAAUA,EAChB5B,EAAMyH,OAASA,EACfzH,EAAM0H,UAAUjX,GAAM,GAAO,GAC7B1F,GAAO4b,cAAc3G,IAChBA,EAAQ,CAAE4B,QAASA,EAAS6F,OAAQA,IACtC7D,KAAmCvD,EAAUtV,GAAO,KAAO0F,IAAQ4P,EAAQL,GACvEvP,IAASmW,IAAqBtB,GAAiB,8BAA+BmC,EACzF,EAEID,GAAc,SAAU/R,GAC1BnI,GAAK2T,GAAMlW,IAAQ,WACjB,IAGImI,EAHA0O,EAAUnM,EAAME,OAChB/J,EAAQ6J,EAAM7J,MAGlB,GAFmB+b,GAAYlS,KAG7BvC,EAASiQ,IAAQ,WACXjE,GACFnQ,GAAQ6Y,KAAK,qBAAsBhc,EAAOgW,GACrC+E,GAAcC,GAAqBhF,EAAShW,EAC3D,IAEM6J,EAAM0R,UAAYjI,IAAWyI,GAAYlS,GArF/B,EADF,EAuFJvC,EAAOnH,OAAO,MAAMmH,EAAOtH,KAErC,GACA,EAEI+b,GAAc,SAAUlS,GAC1B,OA7FY,IA6FLA,EAAM0R,YAA0B1R,EAAMiN,MAC/C,EAEI0E,GAAoB,SAAU3R,GAChCnI,GAAK2T,GAAMlW,IAAQ,WACjB,IAAI6W,EAAUnM,EAAME,OAChBuJ,GACFnQ,GAAQ6Y,KAAK,mBAAoBhG,GAC5B+E,GAzGa,mBAyGoB/E,EAASnM,EAAM7J,MAC3D,GACA,EAEIqB,GAAO,SAAUQ,EAAIgI,EAAOoS,GAC9B,OAAO,SAAUjc,GACf6B,EAAGgI,EAAO7J,EAAOic,EACrB,CACA,EAEIC,GAAiB,SAAUrS,EAAO7J,EAAOic,GACvCpS,EAAMsS,OACVtS,EAAMsS,MAAO,EACTF,IAAQpS,EAAQoS,GACpBpS,EAAM7J,MAAQA,EACd6J,EAAMA,MArHO,EAsHbgM,GAAOhM,GAAO,GAChB,EAEIuS,GAAkB,SAAUvS,EAAO7J,EAAOic,GAC5C,IAAIpS,EAAMsS,KAAV,CACAtS,EAAMsS,MAAO,EACTF,IAAQpS,EAAQoS,GACpB,IACE,GAAIpS,EAAME,SAAW/J,EAAO,MAAM,IAAIkC,GAAU,oCAChD,IAAI+T,EAAOgF,GAAWjb,GAClBiW,EACFW,IAAU,WACR,IAAIyF,EAAU,CAAEF,MAAM,GACtB,IACEza,GAAKuU,EAAMjW,EACTqB,GAAK+a,GAAiBC,EAASxS,GAC/BxI,GAAK6a,GAAgBG,EAASxS,GAEjC,CAAC,MAAO1J,GACP+b,GAAeG,EAASlc,EAAO0J,EAChC,CACT,KAEMA,EAAM7J,MAAQA,EACd6J,EAAMA,MA/II,EAgJVgM,GAAOhM,GAAO,GAEjB,CAAC,MAAO1J,GACP+b,GAAe,CAAEC,MAAM,GAAShc,EAAO0J,EACxC,CAzBsB,CA0BzB,EAGA,GAAIqO,KAcFyC,IAZAD,GAAqB,SAAiB4B,GACpC9K,GAAWjS,KAAMob,IACjBjU,GAAU4V,GACV5a,GAAKsX,GAAUzZ,MACf,IAAIsK,EAAQ0Q,GAAwBhb,MACpC,IACE+c,EAASjb,GAAK+a,GAAiBvS,GAAQxI,GAAK6a,GAAgBrS,GAC7D,CAAC,MAAO1J,GACP+b,GAAerS,EAAO1J,EACvB,CACL,GAEwCsB,WAGtCuX,GAAW,SAAiBsD,GAC1B9B,GAAiBjb,KAAM,CACrB8K,KAAM+P,GACN+B,MAAM,EACNT,UAAU,EACV5E,QAAQ,EACR6E,UAAW,IAAIrG,GACfiG,WAAW,EACX1R,MAlLQ,EAmLR7J,WAAOS,GAEb,GAIWgB,UAAY6J,GAAcqP,GAAkB,QAAQ,SAAc4B,EAAaC,GACtF,IAAI3S,EAAQ0Q,GAAwBhb,MAChC4b,EAAWpC,GAAqBM,GAAmB9Z,KAAMmb,KAS7D,OARA7Q,EAAMiN,QAAS,EACfqE,EAASE,IAAKjW,GAAWmX,IAAeA,EACxCpB,EAASG,KAAOlW,GAAWoX,IAAeA,EAC1CrB,EAASpE,OAASzD,GAAUnQ,GAAQ4T,YAAStW,EA/LnC,IAgMNoJ,EAAMA,MAAmBA,EAAM8R,UAAUlG,IAAI0F,GAC5CvE,IAAU,WACbsE,GAAaC,EAAUtR,EAC7B,IACWsR,EAASnF,OACpB,IAEEiD,GAAuB,WACrB,IAAIjD,EAAU,IAAIgD,GACdnP,EAAQ0Q,GAAwBvE,GACpCzW,KAAKyW,QAAUA,EACfzW,KAAK2X,QAAU7V,GAAK+a,GAAiBvS,GACrCtK,KAAKqZ,OAASvX,GAAK6a,GAAgBrS,EACvC,EAEEqQ,GAA2BhS,EAAI6Q,GAAuB,SAAUJ,GAC9D,OAAOA,IAAM+B,IA1MmB+B,YA0MG9D,EAC/B,IAAIM,GAAqBN,GACzBiC,GAA4BjC,EACpC,EAEkBvT,GAAWuS,KAA6B8C,KAA2B5a,OAAO4B,WAAW,CACnGyX,GAAauB,GAAuBxE,KAE/BqE,IAEHhP,GAAcmP,GAAwB,QAAQ,SAAc8B,EAAaC,GACvE,IAAI5J,EAAOrT,KACX,OAAO,IAAImb,IAAmB,SAAUxD,EAAS0B,GAC/ClX,GAAKwX,GAAYtG,EAAMsE,EAAS0B,EACjC,IAAE3C,KAAKsG,EAAaC,EAE7B,GAAS,CAAEhR,QAAQ,IAIf,WACSiP,GAAuBpP,WACpC,CAAM,MAAOlL,GAAsB,CAG3ByQ,IACFA,GAAe6J,GAAwBE,GAE1C,CAGHxB,GAAE,CAAEha,QAAQ,EAAMkM,aAAa,EAAMqR,MAAM,EAAMnM,OAAQ2H,IAA8B,CACrFxB,QAASgE,KAGXzJ,GAAeyJ,GAAoBN,IAAS,GAC5C/I,GAAW+I,IE9RX,IAAAuC,GAAiB,CAAA,ECCbC,GAAYxc,GAEZyc,GAHkBld,GAGS,YAC3Bmd,GAAiBhM,MAAMrP,UAG3Bsb,GAAiB,SAAU9d,GACzB,YAAcwB,IAAPxB,IAAqB2d,GAAU9L,QAAU7R,GAAM6d,GAAeD,MAAc5d,EACrF,ECTI8M,GAAUpM,GACVgH,GAAYvG,GACZ4B,GAAoB2B,EACpBiZ,GAAYxY,GAGZyY,GAFkBvY,GAES,YAE/B0Y,GAAiB,SAAU/d,GACzB,IAAK+C,GAAkB/C,GAAK,OAAO0H,GAAU1H,EAAI4d,KAC5ClW,GAAU1H,EAAI,eACd2d,GAAU7Q,GAAQ9M,GACzB,ECZIyC,GAAO/B,GACP+G,GAAYtG,GACZ2F,GAAWpC,GACX8C,GAAcrC,GACd4Y,GAAoB1Y,GAEpBrC,GAAaC,UAEjB+a,GAAiB,SAAU3a,EAAU4a,GACnC,IAAIC,EAAiBpb,UAAUqE,OAAS,EAAI4W,GAAkB1a,GAAY4a,EAC1E,GAAIxW,GAAUyW,GAAiB,OAAOpX,GAASrE,GAAKyb,EAAgB7a,IACpE,MAAM,IAAIL,GAAWwE,GAAYnE,GAAY,mBAC/C,ECZIZ,GAAO/B,GACPoG,GAAW3F,GACXuG,GAAYhD,GAEhByZ,GAAiB,SAAUlZ,EAAUmZ,EAAMrd,GACzC,IAAIsd,EAAaC,EACjBxX,GAAS7B,GACT,IAEE,KADAoZ,EAAc3W,GAAUzC,EAAU,WAChB,CAChB,GAAa,UAATmZ,EAAkB,MAAMrd,EAC5B,OAAOA,CACR,CACDsd,EAAc5b,GAAK4b,EAAapZ,EACjC,CAAC,MAAO/D,GACPod,GAAa,EACbD,EAAcnd,CACf,CACD,GAAa,UAATkd,EAAkB,MAAMrd,EAC5B,GAAIud,EAAY,MAAMD,EAEtB,OADAvX,GAASuX,GACFtd,CACT,ECtBIqB,GAAO1B,GACP+B,GAAOtB,GACP2F,GAAWpC,GACX8C,GAAcrC,GACd2Y,GAAwBzY,GACxBqJ,GAAoBnJ,GACpB8B,GAAgBoD,GAChBuT,GAActT,GACdqT,GAAoBhK,GACpBoK,GAAgBtF,GAEhB7V,GAAaC,UAEbsb,GAAS,SAAUC,EAASnW,GAC9B/H,KAAKke,QAAUA,EACfle,KAAK+H,OAASA,CAChB,EAEIoW,GAAkBF,GAAO/b,UAE7Bkc,GAAiB,SAAUC,EAAUC,EAAiB5S,GACpD,IAMI/G,EAAU4Z,EAAQtQ,EAAOpH,EAAQkB,EAAQsO,EAAMmI,EAN/CnL,EAAO3H,GAAWA,EAAQ2H,KAC1BoL,KAAgB/S,IAAWA,EAAQ+S,YACnCC,KAAehT,IAAWA,EAAQgT,WAClCC,KAAiBjT,IAAWA,EAAQiT,aACpCC,KAAiBlT,IAAWA,EAAQkT,aACpCtc,EAAKR,GAAKwc,EAAiBjL,GAG3BwL,EAAO,SAAUC,GAEnB,OADIna,GAAUkZ,GAAclZ,EAAU,SAAUma,GACzC,IAAIb,IAAO,EAAMa,EAC5B,EAEMC,EAAS,SAAUte,GACrB,OAAIge,GACFjY,GAAS/F,GACFme,EAActc,EAAG7B,EAAM,GAAIA,EAAM,GAAIoe,GAAQvc,EAAG7B,EAAM,GAAIA,EAAM,KAChEme,EAActc,EAAG7B,EAAOoe,GAAQvc,EAAG7B,EAChD,EAEE,GAAIie,EACF/Z,EAAW0Z,EAAS1Z,cACf,GAAIga,EACTha,EAAW0Z,MACN,CAEL,KADAE,EAASd,GAAkBY,IACd,MAAM,IAAI3b,GAAWwE,GAAYmX,GAAY,oBAE1D,GAAIb,GAAsBe,GAAS,CACjC,IAAKtQ,EAAQ,EAAGpH,EAASuH,GAAkBiQ,GAAWxX,EAASoH,EAAOA,IAEpE,IADAlG,EAASgX,EAAOV,EAASpQ,MACXlH,GAAcoX,GAAiBpW,GAAS,OAAOA,EAC7D,OAAO,IAAIkW,IAAO,EACrB,CACDtZ,EAAW+Y,GAAYW,EAAUE,EAClC,CAGD,IADAlI,EAAOqI,EAAYL,EAAShI,KAAO1R,EAAS0R,OACnCmI,EAAOrc,GAAKkU,EAAM1R,IAAWiY,MAAM,CAC1C,IACE7U,EAASgX,EAAOP,EAAK/d,MACtB,CAAC,MAAOG,GACPid,GAAclZ,EAAU,QAAS/D,EAClC,CACD,GAAqB,iBAAVmH,GAAsBA,GAAUhB,GAAcoX,GAAiBpW,GAAS,OAAOA,CAC9F,CAAI,OAAO,IAAIkW,IAAO,EACtB,ECjEIX,GAFkBld,GAES,YAC3B4e,IAAe,EAEnB,IACE,IAAIjM,GAAS,EACTkM,GAAqB,CACvB5I,KAAM,WACJ,MAAO,CAAEuG,OAAQ7J,KAClB,EACDmM,OAAU,WACRF,IAAe,CAChB,GAEHC,GAAmB3B,IAAY,WAC7B,OAAOtd,IACX,EAEEuR,MAAM4N,KAAKF,IAAoB,WAAc,MAAM,CAAE,GACvD,CAAE,MAAOre,GAAsB,CAE/B,IAAAwe,GAAiB,SAAUzd,EAAM0d,GAC/B,IACE,IAAKA,IAAiBL,GAAc,OAAO,CAC5C,CAAC,MAAOpe,GAAS,OAAO,CAAQ,CACjC,IAAI0e,GAAoB,EACxB,IACE,IAAIxV,EAAS,CAAA,EACbA,EAAOwT,IAAY,WACjB,MAAO,CACLjH,KAAM,WACJ,MAAO,CAAEuG,KAAM0C,GAAoB,EACpC,EAET,EACI3d,EAAKmI,EACT,CAAI,MAAOlJ,GAAsB,CAC/B,OAAO0e,CACT,ECvCIlH,GAA2BhY,GAI/Bmf,GAFiCnb,GAAsD4U,cADrDnY,IAG0C,SAAUwd,GACpFjG,GAAyB1S,IAAI2Y,GAAU3H,UAAKxV,GAAW,WAAY,GACrE,ICLIiB,GAAOtB,GACPsG,GAAY/C,GACZuW,GAA6B9V,GAC7BmT,GAAUjT,GACVqZ,GAAUnZ,GALN7E,GAUN,CAAEkQ,OAAQ,UAAWQ,MAAM,EAAME,OAJO7G,IAIwC,CAChFzE,IAAK,SAAa2Y,GAChB,IAAIjF,EAAIpZ,KACJwf,EAAa7E,GAA2BhS,EAAEyQ,GAC1CzB,EAAU6H,EAAW7H,QACrB0B,EAASmG,EAAWnG,OACpBtR,EAASiQ,IAAQ,WACnB,IAAIyH,EAAkBtY,GAAUiS,EAAEzB,SAC9B+H,EAAS,GACTpL,EAAU,EACVqL,EAAY,EAChBvB,GAAQC,GAAU,SAAU5H,GAC1B,IAAIxI,EAAQqG,IACRsL,GAAgB,EACpBD,IACAxd,GAAKsd,EAAiBrG,EAAG3C,GAASC,MAAK,SAAUjW,GAC3Cmf,IACJA,GAAgB,EAChBF,EAAOzR,GAASxN,IACdkf,GAAahI,EAAQ+H,GACxB,GAAErG,EACX,MACQsG,GAAahI,EAAQ+H,EAC7B,IAEI,OADI3X,EAAOnH,OAAOyY,EAAOtR,EAAOtH,OACzB+e,EAAW/I,OACnB,ICpCH,IAAImD,GAAIxZ,GAEJuY,GAA6BvU,GAAsD4U,YACnFZ,GAA2BvT,GAC3B6B,GAAa3B,GACbc,GAAaZ,GACb8G,GAAgB5B,GAEhB+Q,GAAyB9C,IAA4BA,GAAyBlW,UAWlF,GAPA0X,GAAE,CAAEtJ,OAAQ,UAAWkB,OAAO,EAAMR,OAAQ2H,GAA4BkH,MAAM,GAAQ,CACpFC,MAAS,SAAU7C,GACjB,OAAOjd,KAAK0W,UAAKxV,EAAW+b,EAC7B,IAIapX,GAAWuS,IAA2B,CACpD,IAAIxR,GAASF,GAAW,WAAWxE,UAAiB,MAChDgZ,GAA8B,QAAMtU,IACtCmF,GAAcmP,GAAwB,QAAStU,GAAQ,CAAEqF,QAAQ,GAErE,CCxBA,IACI9J,GAAOtB,GACPsG,GAAY/C,GACZuW,GAA6B9V,GAC7BmT,GAAUjT,GACVqZ,GAAUnZ,GALN7E,GAUN,CAAEkQ,OAAQ,UAAWQ,MAAM,EAAME,OAJO7G,IAIwC,CAChF4V,KAAM,SAAc1B,GAClB,IAAIjF,EAAIpZ,KACJwf,EAAa7E,GAA2BhS,EAAEyQ,GAC1CC,EAASmG,EAAWnG,OACpBtR,EAASiQ,IAAQ,WACnB,IAAIyH,EAAkBtY,GAAUiS,EAAEzB,SAClCyG,GAAQC,GAAU,SAAU5H,GAC1BtU,GAAKsd,EAAiBrG,EAAG3C,GAASC,KAAK8I,EAAW7H,QAAS0B,EACnE,GACA,IAEI,OADItR,EAAOnH,OAAOyY,EAAOtR,EAAOtH,OACzB+e,EAAW/I,OACnB,ICvBH,IACItU,GAAOtB,GACP8Z,GAA6BvW,GAFzBhE,GAON,CAAEkQ,OAAQ,UAAWQ,MAAM,EAAME,OAJFnM,GAAsDmU,aAId,CACvEK,OAAQ,SAAgB2G,GACtB,IAAIR,EAAa7E,GAA2BhS,EAAE3I,MAE9C,OADAmC,GAAKqd,EAAWnG,YAAQnY,EAAW8e,GAC5BR,EAAW/I,OACnB,ICZH,IAAIjQ,GAAWpG,GACX6F,GAAWpF,GACX2Y,GAAuBpV,GCFvBwV,GAAIxZ,GAIJuY,GAA6B5T,GAAsDiU,YACnFiH,GDDa,SAAU7G,EAAG1L,GAE5B,GADAlH,GAAS4S,GACLnT,GAASyH,IAAMA,EAAE5B,cAAgBsN,EAAG,OAAO1L,EAC/C,IAAIwS,EAAoB1G,GAAqB7Q,EAAEyQ,GAG/C,OADAzB,EADcuI,EAAkBvI,SACxBjK,GACDwS,EAAkBzJ,OAC3B,ECViB5V,GAM0B,WAK3C+Y,GAAE,CAAEtJ,OAAQ,UAAWQ,MAAM,EAAME,OAAmB2H,IAA8B,CAClFhB,QAAS,SAAiBjK,GACxB,OAAOuS,GAAgGjgB,KAAM0N,EAC9G,ICfH,IAAAyS,GAAA,CAAA,EAAIjR,GAAqB9O,GACrB6O,GAAcpO,GAKlBuf,GAAiB9f,OAAOyJ,MAAQ,SAAcnB,GAC5C,OAAOsG,GAAmBtG,EAAGqG,GAC/B,ECRI/G,GAAc9H,GACdgI,GAA0BvH,GAC1B+I,GAAuBxF,GACvBoC,GAAW3B,GACXuI,GAAkBrI,GAClBqb,GAAanb,GAKjBkb,GAAAxX,EAAYT,KAAgBE,GAA0B9H,OAAO+f,iBAAmB,SAA0BzX,EAAG0X,GAC3G9Z,GAASoC,GAMT,IALA,IAIIpI,EAJA+f,EAAQnT,GAAgBkT,GACxBvW,EAAOqW,GAAWE,GAClBzZ,EAASkD,EAAKlD,OACdoH,EAAQ,EAELpH,EAASoH,GAAOrE,GAAqBjB,EAAEC,EAAGpI,EAAMuJ,EAAKkE,KAAUsS,EAAM/f,IAC5E,OAAOoI,CACT,EClBA,IAmDI4X,GAnDAha,GAAWpG,GACXqgB,GAAyB5f,GACzBoO,GAAc7K,GACd6F,GAAapF,GACbyO,GAAOvO,GACPqB,GAAwBnB,GAKxByb,GAAY,YACZC,GAAS,SACTC,GANYzW,GAMS,YAErB0W,GAAmB,WAAY,EAE/BC,GAAY,SAAUC,GACxB,MARO,IAQKJ,GATL,IASmBI,EAAnBC,KAAwCL,GATxC,GAUT,EAGIM,GAA4B,SAAUT,GACxCA,EAAgBU,MAAMJ,GAAU,KAChCN,EAAgBW,QAChB,IAAIC,EAAOZ,EAAgBa,aAAa/gB,OAExC,OADAkgB,EAAkB,KACXY,CACT,EAyBIE,GAAkB,WACpB,IACEd,GAAkB,IAAIe,cAAc,WACxC,CAAI,MAAO3gB,GAAuB,CAzBH,IAIzB4gB,EAFAC,EACAC,EAuBJJ,GAAqC,oBAAZ7b,SACrBA,SAAS+R,QAAUgJ,GACjBS,GAA0BT,KA1B5BiB,EAASrb,GAAsB,UAC/Bsb,EAAK,OAASf,GAAS,IAE3Bc,EAAOE,MAAMC,QAAU,OACvBtO,GAAKqC,YAAY8L,GAEjBA,EAAOI,IAAMne,OAAOge,IACpBF,EAAiBC,EAAOK,cAAcrc,UACvBsc,OACfP,EAAeN,MAAMJ,GAAU,sBAC/BU,EAAeL,QACRK,EAAeQ,GAiBlBf,GAA0BT,IAE9B,IADA,IAAI3Z,EAASoI,GAAYpI,OAClBA,YAAiBya,GAAgBZ,IAAWzR,GAAYpI,IAC/D,OAAOya,IACT,EAEArX,GAAW2W,KAAY,MAKvBqB,GAAiB3hB,OAAO4hB,QAAU,SAAgBtZ,EAAG0X,GACnD,IAAIvY,EAQJ,OAPU,OAANa,GACFiY,GAAiBH,IAAala,GAASoC,GACvCb,EAAS,IAAI8Y,GACbA,GAAiBH,IAAa,KAE9B3Y,EAAO6Y,IAAYhY,GACdb,EAASuZ,UACMpgB,IAAfof,EAA2BvY,EAAS0Y,GAAuB9X,EAAEZ,EAAQuY,EAC9E,EClFIjb,GAAkBjF,GAClB8hB,GAASrhB,GACTR,GAAiB+D,GAA+CuE,EAEhEwZ,GAAc9c,GAAgB,eAC9BkY,GAAiBhM,MAAMrP,eAIShB,IAAhCqc,GAAe4E,KACjB9hB,GAAekd,GAAgB4E,GAAa,CAC1CzhB,cAAc,EACdD,MAAOyhB,GAAO,YCEdE,GAAmBC,GAAmCC,GDG1DC,GAAiB,SAAU/hB,GACzB+c,GAAe4E,IAAa3hB,IAAO,CACrC,EEjBAgiB,IAFYpiB,GAEY,WACtB,SAAS4hB,IAAmB,CAG5B,OAFAA,EAAE9f,UAAU4J,YAAc,KAEnBxL,OAAOmiB,eAAe,IAAIT,KAASA,EAAE9f,SAC9C,ICPIe,GAAS7C,EACTyF,GAAahF,GACbiC,GAAWsB,EAEXse,GAA2B3d,GAE3B6b,GAHY/b,GAGS,YACrBhC,GAAUvC,OACVqiB,GAAkB9f,GAAQX,UAK9B0gB,GAAiBF,GAA2B7f,GAAQ4f,eAAiB,SAAU7Z,GAC7E,IAAIkB,EAAShH,GAAS8F,GACtB,GAAI3F,GAAO6G,EAAQ8W,IAAW,OAAO9W,EAAO8W,IAC5C,IAAI9U,EAAchC,EAAOgC,YACzB,OAAIjG,GAAWiG,IAAgBhC,aAAkBgC,EACxCA,EAAY5J,UACZ4H,aAAkBjH,GAAU8f,GAAkB,IACzD,EFpBIjhB,GAAQtB,EACRyF,GAAahF,GACboF,GAAW7B,GAEXqe,GAAiB1d,GACjBgH,GAAgB9G,GAIhBqY,GAHkBnT,GAGS,YAC3B0Y,IAAyB,EAOzB,GAAG9Y,OAGC,SAFNuY,GAAgB,GAAGvY,SAIjBsY,GAAoCI,GAAeA,GAAeH,QACxBhiB,OAAO4B,YAAWkgB,GAAoBC,IAHlDQ,IAAyB,GAO3D,IAAIC,IAA0B7c,GAASmc,KAAsB1gB,IAAM,WACjE,IAAIG,EAAO,CAAA,EAEX,OAAOugB,GAAkB9E,IAAUnb,KAAKN,KAAUA,CACpD,IAEIihB,KAAwBV,GAAoB,IAK3Cvc,GAAWuc,GAAkB9E,MAChCvR,GAAcqW,GAAmB9E,IAAU,WACzC,OAAOtd,IACX,IAGA,IAAA+iB,GAAiB,CACfX,kBAAmBA,GACnBS,uBAAwBA,IG9CtBT,GAAoBhiB,GAAuCgiB,kBAC3DF,GAASrhB,GACT6I,GAA2BtF,GAC3BsN,GAAiB7M,GACjBwY,GAAYtY,GAEZie,GAAa,WAAc,OAAOhjB,MCNlC4Z,GAAIxZ,GACJ+B,GAAOtB,GAGPgF,GAAad,GACbke,GDGa,SAAUC,EAAqBC,EAAM9M,EAAM+M,GAC1D,IAAI9W,EAAgB6W,EAAO,YAI3B,OAHAD,EAAoBhhB,UAAYggB,GAAOE,GAAmB,CAAE/L,KAAM3M,KAA2B0Z,EAAiB/M,KAC9G3E,GAAewR,EAAqB5W,GAAe,GACnD+Q,GAAU/Q,GAAiB0W,GACpBE,CACT,ECRIT,GAAiBtY,GACjBkH,GAAiBjH,GACjBsH,GAAiB+B,GACjB5J,GAA8B0O,GAC9BxM,GAAgB+H,GAEhBuJ,GAAYxD,GAGZwJ,GAZexe,GAYqBsE,OACpC4B,GAbelG,GAa2B4D,aAC1C2Z,GAJgBkB,GAIkBlB,kBAClCS,GALgBS,GAKuBT,uBACvCvF,GARkBtJ,GAQS,YAC3BuP,GAAO,OACPC,GAAS,SACTC,GAAU,UAEVT,GAAa,WAAc,OAAOhjB,MAEtC0jB,GAAiB,SAAUC,EAAUR,EAAMD,EAAqB7M,EAAMuN,EAASC,EAAQC,GACrFb,GAA0BC,EAAqBC,EAAM9M,GAErD,IAqBI0N,EAA0BC,EAASC,EArBnCC,EAAqB,SAAUC,GACjC,GAAIA,IAASP,GAAWQ,EAAiB,OAAOA,EAChD,IAAKvB,IAA0BsB,GAAQA,KAAQE,EAAmB,OAAOA,EAAkBF,GAE3F,OAAQA,GACN,KAAKZ,GACL,KAAKC,GACL,KAAKC,GAAS,OAAO,WAAqB,OAAO,IAAIP,EAAoBljB,KAAMmkB,IAGjF,OAAO,WAAc,OAAO,IAAIjB,EAAoBljB,KAAM,CAC9D,EAEMsM,EAAgB6W,EAAO,YACvBmB,GAAwB,EACxBD,EAAoBV,EAASzhB,UAC7BqiB,EAAiBF,EAAkB/G,KAClC+G,EAAkB,eAClBT,GAAWS,EAAkBT,GAC9BQ,GAAmBvB,IAA0B0B,GAAkBL,EAAmBN,GAClFY,EAA6B,UAATrB,GAAmBkB,EAAkBI,SAA4BF,EA+BzF,GA3BIC,IACFT,EAA2BtB,GAAe+B,EAAkBriB,KAAK,IAAIwhB,OACpCrjB,OAAO4B,WAAa6hB,EAAyB1N,OAC5DoM,GAAesB,KAA8B3B,KACvD/Q,GACFA,GAAe0S,EAA0B3B,IAC/Bvc,GAAWke,EAAyBzG,MAC9CvR,GAAcgY,EAA0BzG,GAAU0F,KAItDtR,GAAeqS,EAA0BzX,GAAe,IAMxD+W,IAAwBO,IAAYJ,IAAUe,GAAkBA,EAAejf,OAASke,KAC1EzY,GACdlB,GAA4Bwa,EAAmB,OAAQb,KAEvDc,GAAwB,EACxBF,EAAkB,WAAoB,OAAOjiB,GAAKoiB,EAAgBvkB,SAKlE4jB,EAMF,GALAI,EAAU,CACRtE,OAAQwE,EAAmBV,IAC3BzZ,KAAM8Z,EAASO,EAAkBF,EAAmBX,IACpDkB,QAASP,EAAmBT,KAE1BK,EAAQ,IAAKG,KAAOD,GAClBnB,IAA0ByB,KAA2BL,KAAOI,KAC9DtY,GAAcsY,EAAmBJ,EAAKD,EAAQC,SAE3CrK,GAAE,CAAEtJ,OAAQ6S,EAAM3R,OAAO,EAAMR,OAAQ6R,IAA0ByB,GAAyBN,GASnG,OAL4BK,EAAkB/G,MAAc8G,GAC1DrY,GAAcsY,EAAmB/G,GAAU8G,EAAiB,CAAE9e,KAAMse,IAEtEvG,GAAU8F,GAAQiB,EAEXJ,CACT,EClGAU,GAAiB,SAAUjkB,EAAOmc,GAChC,MAAO,CAAEnc,MAAOA,EAAOmc,KAAMA,EAC/B,ECJIxP,GAAkBhN,GAClBmiB,GAAmB1hB,GACnBwc,GAAYjZ,GACZoW,GAAsB3V,GACtBxE,GAAiB0E,GAA+C4D,EAChEgc,GAAiB1f,GACjByf,GAAyBva,GAEzBjC,GAAcuL,GAEdmR,GAAiB,iBACjB3J,GAAmBT,GAAoBlR,IACvC2B,GAAmBuP,GAAoB5P,UAAUga,IAYrDC,GAAiBF,GAAepT,MAAO,SAAS,SAAUuT,EAAUhH,GAClE7C,GAAiBjb,KAAM,CACrB8K,KAAM8Z,GACNtU,OAAQlD,GAAgB0X,GACxB7W,MAAO,EACP6P,KAAMA,GAIV,IAAG,WACD,IAAIxT,EAAQW,GAAiBjL,MACzBsQ,EAAShG,EAAMgG,OACfrC,EAAQ3D,EAAM2D,QAClB,IAAKqC,GAAUrC,GAASqC,EAAOzJ,OAE7B,OADAyD,EAAMgG,YAASpP,EACRwjB,QAAuBxjB,GAAW,GAE3C,OAAQoJ,EAAMwT,MACZ,IAAK,OAAQ,OAAO4G,GAAuBzW,GAAO,GAClD,IAAK,SAAU,OAAOyW,GAAuBpU,EAAOrC,IAAQ,GAC5D,OAAOyW,GAAuB,CAACzW,EAAOqC,EAAOrC,KAAS,EAC1D,GAAG,UAKCyR,GAASrC,GAAU0H,UAAY1H,GAAU9L,MAQ7C,GALAgR,GAAiB,QACjBA,GAAiB,UACjBA,GAAiB,WAGDra,IAA+B,WAAhBwX,GAAOpa,KAAmB,IACvDjF,GAAeqf,GAAQ,OAAQ,CAAEjf,MAAO,UAC1C,CAAE,MAAOG,IC5DT,IACIuB,GAAOtB,GACPsG,GAAY/C,GACZuW,GAA6B9V,GAC7BmT,GAAUjT,GACVqZ,GAAUnZ,GALN7E,GAUN,CAAEkQ,OAAQ,UAAWQ,MAAM,EAAME,OAJO7G,IAIwC,CAChF6a,WAAY,SAAoB3G,GAC9B,IAAIjF,EAAIpZ,KACJwf,EAAa7E,GAA2BhS,EAAEyQ,GAC1CzB,EAAU6H,EAAW7H,QACrB0B,EAASmG,EAAWnG,OACpBtR,EAASiQ,IAAQ,WACnB,IAAIiI,EAAiB9Y,GAAUiS,EAAEzB,SAC7B+H,EAAS,GACTpL,EAAU,EACVqL,EAAY,EAChBvB,GAAQC,GAAU,SAAU5H,GAC1B,IAAIxI,EAAQqG,IACRsL,GAAgB,EACpBD,IACAxd,GAAK8d,EAAgB7G,EAAG3C,GAASC,MAAK,SAAUjW,GAC1Cmf,IACJA,GAAgB,EAChBF,EAAOzR,GAAS,CAAEgX,OAAQ,YAAaxkB,MAAOA,KAC5Ckf,GAAahI,EAAQ+H,GACxB,IAAE,SAAU9e,GACPgf,IACJA,GAAgB,EAChBF,EAAOzR,GAAS,CAAEgX,OAAQ,WAAY3I,OAAQ1b,KAC5C+e,GAAahI,EAAQ+H,GACjC,GACA,MACQC,GAAahI,EAAQ+H,EAC7B,IAEI,OADI3X,EAAOnH,OAAOyY,EAAOtR,EAAOtH,OACzB+e,EAAW/I,OACnB,ICzCH,IAAIjK,GAAUpM,GAEV+D,GAAUT,OAEdJ,GAAiB,SAAUP,GACzB,GAA0B,WAAtByJ,GAAQzJ,GAAwB,MAAM,IAAIJ,UAAU,6CACxD,OAAOwB,GAAQpB,EACjB,ECPIG,GAAc9C,EACdwN,GAAsB/M,GACtByC,GAAWc,GACXxB,GAAyBiC,EAEzBqgB,GAAShiB,GAAY,GAAGgiB,QACxBC,GAAajiB,GAAY,GAAGiiB,YAC5Bja,GAAchI,GAAY,GAAGiI,OAE7BmD,GAAe,SAAU8W,GAC3B,OAAO,SAAU5W,EAAO6W,GACtB,IAGIC,EAAOC,EAHPvL,EAAI1W,GAASV,GAAuB4L,IACpCgX,EAAW5X,GAAoByX,GAC/BI,EAAOzL,EAAEnT,OAEb,OAAI2e,EAAW,GAAKA,GAAYC,EAAaL,EAAoB,QAAKlkB,GACtEokB,EAAQH,GAAWnL,EAAGwL,IACP,OAAUF,EAAQ,OAAUE,EAAW,IAAMC,IACtDF,EAASJ,GAAWnL,EAAGwL,EAAW,IAAM,OAAUD,EAAS,MAC3DH,EACEF,GAAOlL,EAAGwL,GACVF,EACFF,EACEla,GAAY8O,EAAGwL,EAAUA,EAAW,GACVD,EAAS,OAAlCD,EAAQ,OAAU,IAA0B,KACzD,CACA,EAEAI,GAAiB,CAGfC,OAAQrX,IAAa,GAGrB4W,OAAQ5W,IAAa,IClCnB4W,GAAS9kB,GAAyC8kB,OAClD5hB,GAAWzC,GACX2Z,GAAsBpW,GACtBugB,GAAiB9f,GACjB6f,GAAyB3f,GAEzB6gB,GAAkB,kBAClB3K,GAAmBT,GAAoBlR,IACvC2B,GAAmBuP,GAAoB5P,UAAUgb,IAIrDjB,GAAejhB,OAAQ,UAAU,SAAUohB,GACzC7J,GAAiBjb,KAAM,CACrB8K,KAAM8a,GACN1V,OAAQ5M,GAASwhB,GACjB7W,MAAO,GAIX,IAAG,WACD,IAGI4X,EAHAvb,EAAQW,GAAiBjL,MACzBkQ,EAAS5F,EAAM4F,OACfjC,EAAQ3D,EAAM2D,MAElB,OAAIA,GAASiC,EAAOrJ,OAAe6d,QAAuBxjB,GAAW,IACrE2kB,EAAQX,GAAOhV,EAAQjC,GACvB3D,EAAM2D,OAAS4X,EAAMhf,OACd6d,GAAuBmB,GAAO,GACvC,IC3BA,IAAAC,GAAiB,CACfC,YAAa,EACbC,oBAAqB,EACrBC,aAAc,EACdC,eAAgB,EAChBC,YAAa,EACbC,cAAe,EACfC,aAAc,EACdC,qBAAsB,EACtBC,SAAU,EACVC,kBAAmB,EACnBC,eAAgB,EAChBC,gBAAiB,EACjBC,kBAAmB,EACnBC,UAAW,EACXC,cAAe,EACfC,aAAc,EACdC,SAAU,EACVC,iBAAkB,EAClBC,OAAQ,EACRC,YAAa,EACbC,cAAe,EACfC,cAAe,EACfC,eAAgB,EAChBC,aAAc,EACdC,cAAe,EACfC,iBAAkB,EAClBC,iBAAkB,EAClBC,eAAgB,EAChBC,iBAAkB,EAClBC,cAAe,EACfC,UAAW,GC9BTC,GAFwB1nB,GAEU,QAAQ0nB,UAC1CC,GAAwBD,IAAaA,GAAUhc,aAAegc,GAAUhc,YAAY5J,UAExF8lB,GAAiBD,KAA0BznB,OAAO4B,eAAYhB,EAAY6mB,GCNtEnoB,GAASQ,EACT6nB,GAAepnB,GACfknB,GAAwB3jB,GACxB8jB,GAAuBrjB,GACvBgF,GAA8B9E,GAC9B2M,GAAiBzM,GAGjBqY,GAFkBnT,GAES,YAC3Bge,GAAcD,GAAqBxI,OAEnC0I,GAAkB,SAAUC,EAAqBC,GACnD,GAAID,EAAqB,CAEvB,GAAIA,EAAoB/K,MAAc6K,GAAa,IACjDte,GAA4Bwe,EAAqB/K,GAAU6K,GAC5D,CAAC,MAAOvnB,GACPynB,EAAoB/K,IAAY6K,EACjC,CAED,GADAzW,GAAe2W,EAAqBC,GAAiB,GACjDL,GAAaK,GAAkB,IAAK,IAAIC,KAAeL,GAEzD,GAAIG,EAAoBE,KAAiBL,GAAqBK,GAAc,IAC1E1e,GAA4Bwe,EAAqBE,EAAaL,GAAqBK,GACpF,CAAC,MAAO3nB,GACPynB,EAAoBE,GAAeL,GAAqBK,EACzD,CAEJ,CACH,EAEA,IAAK,IAAID,MAAmBL,GAC1BG,GAAgBxoB,GAAO0oB,KAAoB1oB,GAAO0oB,IAAiBpmB,UAAWomB,IAGhFF,GAAgBL,GAAuB,gBCnCvC,IAAIjlB,GAAW1C,EACX4N,GAAkBnN,GAClBuN,GAAoBhK,GCDpBokB,GDKa,SAAc/nB,GAO7B,IANA,IAAImI,EAAI9F,GAAS9C,MACb6G,EAASuH,GAAkBxF,GAC3B6f,EAAkBjmB,UAAUqE,OAC5BoH,EAAQD,GAAgBya,EAAkB,EAAIjmB,UAAU,QAAKtB,EAAW2F,GACxE6hB,EAAMD,EAAkB,EAAIjmB,UAAU,QAAKtB,EAC3CynB,OAAiBznB,IAARwnB,EAAoB7hB,EAASmH,GAAgB0a,EAAK7hB,GACxD8hB,EAAS1a,GAAOrF,EAAEqF,KAAWxN,EACpC,OAAOmI,CACT,ECbI2Z,GAAmBne,GAFfhE,GAMN,CAAEkQ,OAAQ,QAASkB,OAAO,GAAQ,CAClCgX,KAAMA,KAIRjG,GAAiB,QCXjB,IAAI/V,GAAUpM,GAKdwoB,GAAiBrX,MAAMqX,SAAW,SAAiB7lB,GACjD,MAA6B,UAAtByJ,GAAQzJ,EACjB,ECPIkF,GAAgB7H,GAChBwJ,GAAuB/I,GACvB6I,GAA2BtF,GAE/BykB,GAAiB,SAAU/e,EAAQtJ,EAAKC,GACtC,IAAIqoB,EAAc7gB,GAAczH,GAC5BsoB,KAAehf,EAAQF,GAAqBjB,EAAEmB,EAAQgf,EAAapf,GAAyB,EAAGjJ,IAC9FqJ,EAAOgf,GAAeroB,CAC7B,ECRIiB,GAAQtB,EAER8D,GAAaE,GAEbyN,GAHkBhR,GAGQ,WAE9BkoB,GAAiB,SAAUR,GAIzB,OAAOrkB,IAAc,KAAOxC,IAAM,WAChC,IAAIsnB,EAAQ,GAKZ,OAJkBA,EAAMld,YAAc,IAC1B+F,IAAW,WACrB,MAAO,CAAEoX,IAAK,EACpB,EAC+C,IAApCD,EAAMT,GAAaW,SAASD,GACvC,GACA,EClBIrP,GAAIxZ,GACJwoB,GAAU/nB,GACViS,GAAgB1O,GAChB6B,GAAWpB,GACXmJ,GAAkBjJ,GAClBqJ,GAAoBnJ,GACpBmI,GAAkBjD,GAClB0e,GAAiBze,GACjB/E,GAAkBoO,GAElB0V,GAAcrV,GAEdsV,GAH+B7Q,GAGoB,SAEnD1G,GAAUxM,GAAgB,WAC1BgkB,GAAS9X,MACTzD,GAAMnO,KAAKmO,ICiGR,SAASwb,GAAUC,EAASC,EAAYliB,EAAGmiB,GAE9C,OAAO,IAAKniB,IAAMA,EAAI6P,WAAU,SAAUQ,EAAS0B,GAC/C,SAASqQ,EAAUjpB,GAAS,IAAM+d,EAAKiL,EAAUpT,KAAK5V,GAAQ,CAAG,MAAOkpB,GAAKtQ,EAAOsQ,GAAO,CAC3F,SAASC,EAASnpB,GAAS,IAAM+d,EAAKiL,EAAiB,MAAEhpB,GAAU,CAAC,MAAOkpB,GAAKtQ,EAAOsQ,GAAO,CAC9F,SAASnL,EAAKzW,GAJlB,IAAetH,EAIasH,EAAO6U,KAAOjF,EAAQ5P,EAAOtH,QAJ1CA,EAIyDsH,EAAOtH,MAJhDA,aAAiB6G,EAAI7G,EAAQ,IAAI6G,GAAE,SAAUqQ,GAAWA,EAAQlX,EAAO,KAIhBiW,KAAKgT,EAAWE,EAAY,CAC9GpL,GAAMiL,EAAYA,EAAUlnB,MAAMgnB,EAASC,GAAc,KAAKnT,OACtE,GACA,CA0JO,SAASwT,GAAuBC,EAAUxf,EAAOwT,EAAMnV,GAC1D,GAAa,MAATmV,IAAiBnV,EAAG,MAAM,IAAIhG,UAAU,iDAC5C,GAAqB,mBAAV2H,EAAuBwf,IAAaxf,IAAU3B,GAAK2B,EAAMf,IAAIugB,GAAW,MAAM,IAAInnB,UAAU,4EACvG,MAAgB,MAATmb,EAAenV,EAAa,MAATmV,EAAenV,EAAExG,KAAK2nB,GAAYnhB,EAAIA,EAAElI,MAAQ6J,EAAMtE,IAAI8jB,EACxF,CDlQAlQ,GAAE,CAAEtJ,OAAQ,QAASkB,OAAO,EAAMR,QAASoY,IAAuB,CAChEje,MAAO,SAAe4e,EAAOrB,GAC3B,IAKI1W,EAAajK,EAAQ4F,EALrB/E,EAAIwE,GAAgBpN,MACpB6G,EAASuH,GAAkBxF,GAC3BohB,EAAIhc,GAAgB+b,EAAOljB,GAC3BojB,EAAMjc,QAAwB9M,IAARwnB,EAAoB7hB,EAAS6hB,EAAK7hB,GAG5D,GAAI+hB,GAAQhgB,KACVoJ,EAAcpJ,EAAEkD,aAEZgH,GAAcd,KAAiBA,IAAgBqX,IAAUT,GAAQ5W,EAAY9P,aAEtE+D,GAAS+L,IAEE,QADpBA,EAAcA,EAAYH,QAF1BG,OAAc9Q,GAKZ8Q,IAAgBqX,SAA0BnoB,IAAhB8Q,GAC5B,OAAOmX,GAAYvgB,EAAGohB,EAAGC,GAI7B,IADAliB,EAAS,SAAqB7G,IAAhB8Q,EAA4BqX,GAASrX,GAAalE,GAAImc,EAAMD,EAAG,IACxErc,EAAI,EAAGqc,EAAIC,EAAKD,IAAKrc,IAASqc,KAAKphB,GAAGigB,GAAe9gB,EAAQ4F,EAAG/E,EAAEohB,IAEvE,OADAjiB,EAAOlB,OAAS8G,EACT5F,CACR,qCE7CH,IAAIwB,EAAMjJ,OAAO4B,UAAUH,eACvBmoB,EAAS,IASb,SAASC,IAAW,CA4BpB,SAASC,EAAG9nB,EAAI+nB,EAASC,GACvBtqB,KAAKsC,GAAKA,EACVtC,KAAKqqB,QAAUA,EACfrqB,KAAKsqB,KAAOA,IAAQ,CACrB,CAaD,SAASC,EAAYC,EAAS3V,EAAOvS,EAAI+nB,EAASC,GAChD,GAAkB,mBAAPhoB,EACT,MAAM,IAAIK,UAAU,mCAGtB,IAAI8nB,EAAW,IAAIL,EAAG9nB,EAAI+nB,GAAWG,EAASF,GAC1CI,EAAMR,EAASA,EAASrV,EAAQA,EAMpC,OAJK2V,EAAQG,QAAQD,GACXF,EAAQG,QAAQD,GAAKpoB,GAC1BkoB,EAAQG,QAAQD,GAAO,CAACF,EAAQG,QAAQD,GAAMD,GADhBD,EAAQG,QAAQD,GAAKvpB,KAAKspB,IADlCD,EAAQG,QAAQD,GAAOD,EAAUD,EAAQI,gBAI7DJ,CACR,CASD,SAASK,EAAWL,EAASE,GACI,KAAzBF,EAAQI,aAAoBJ,EAAQG,QAAU,IAAIR,SAC5CK,EAAQG,QAAQD,EAC7B,CASD,SAASI,IACP9qB,KAAK2qB,QAAU,IAAIR,EACnBnqB,KAAK4qB,aAAe,CACrB,CAzEGtqB,OAAO4hB,SACTiI,EAAOjoB,UAAY5B,OAAO4hB,OAAO,OAM5B,IAAIiI,GAAS1Y,YAAWyY,GAAS,IA2ExCY,EAAa5oB,UAAU6oB,WAAa,WAClC,IACIC,EACA1lB,EAFAyJ,EAAQ,GAIZ,GAA0B,IAAtB/O,KAAK4qB,aAAoB,OAAO7b,EAEpC,IAAKzJ,KAAS0lB,EAAShrB,KAAK2qB,QACtBphB,EAAIpH,KAAK6oB,EAAQ1lB,IAAOyJ,EAAM5N,KAAK+oB,EAAS5kB,EAAK6F,MAAM,GAAK7F,GAGlE,OAAIhF,OAAOgE,sBACFyK,EAAMI,OAAO7O,OAAOgE,sBAAsB0mB,IAG5Cjc,CACT,EASA+b,EAAa5oB,UAAU+oB,UAAY,SAAmBpW,GACpD,IAAI6V,EAAMR,EAASA,EAASrV,EAAQA,EAChCqW,EAAWlrB,KAAK2qB,QAAQD,GAE5B,IAAKQ,EAAU,MAAO,GACtB,GAAIA,EAAS5oB,GAAI,MAAO,CAAC4oB,EAAS5oB,IAElC,IAAK,IAAI0M,EAAI,EAAGmc,EAAID,EAASrkB,OAAQukB,EAAK,IAAI7Z,MAAM4Z,GAAInc,EAAImc,EAAGnc,IAC7Doc,EAAGpc,GAAKkc,EAASlc,GAAG1M,GAGtB,OAAO8oB,CACT,EASAN,EAAa5oB,UAAUmpB,cAAgB,SAAuBxW,GAC5D,IAAI6V,EAAMR,EAASA,EAASrV,EAAQA,EAChCoW,EAAYjrB,KAAK2qB,QAAQD,GAE7B,OAAKO,EACDA,EAAU3oB,GAAW,EAClB2oB,EAAUpkB,OAFM,CAGzB,EASAikB,EAAa5oB,UAAUua,KAAO,SAAc5H,EAAOyW,EAAIC,EAAIC,EAAIC,EAAIC,GACjE,IAAIhB,EAAMR,EAASA,EAASrV,EAAQA,EAEpC,IAAK7U,KAAK2qB,QAAQD,GAAM,OAAO,EAE/B,IAEIvV,EACAnG,EAHAic,EAAYjrB,KAAK2qB,QAAQD,GACzBiB,EAAMnpB,UAAUqE,OAIpB,GAAIokB,EAAU3oB,GAAI,CAGhB,OAFI2oB,EAAUX,MAAMtqB,KAAK4rB,eAAe/W,EAAOoW,EAAU3oB,QAAIpB,GAAW,GAEhEyqB,GACN,KAAK,EAAG,OAAOV,EAAU3oB,GAAGH,KAAK8oB,EAAUZ,UAAU,EACrD,KAAK,EAAG,OAAOY,EAAU3oB,GAAGH,KAAK8oB,EAAUZ,QAASiB,IAAK,EACzD,KAAK,EAAG,OAAOL,EAAU3oB,GAAGH,KAAK8oB,EAAUZ,QAASiB,EAAIC,IAAK,EAC7D,KAAK,EAAG,OAAON,EAAU3oB,GAAGH,KAAK8oB,EAAUZ,QAASiB,EAAIC,EAAIC,IAAK,EACjE,KAAK,EAAG,OAAOP,EAAU3oB,GAAGH,KAAK8oB,EAAUZ,QAASiB,EAAIC,EAAIC,EAAIC,IAAK,EACrE,KAAK,EAAG,OAAOR,EAAU3oB,GAAGH,KAAK8oB,EAAUZ,QAASiB,EAAIC,EAAIC,EAAIC,EAAIC,IAAK,EAG3E,IAAK1c,EAAI,EAAGmG,EAAO,IAAI5D,MAAMoa,EAAK,GAAI3c,EAAI2c,EAAK3c,IAC7CmG,EAAKnG,EAAI,GAAKxM,UAAUwM,GAG1Bic,EAAU3oB,GAAGC,MAAM0oB,EAAUZ,QAASlV,EAC1C,KAAS,CACL,IACI0W,EADAhlB,EAASokB,EAAUpkB,OAGvB,IAAKmI,EAAI,EAAGA,EAAInI,EAAQmI,IAGtB,OAFIic,EAAUjc,GAAGsb,MAAMtqB,KAAK4rB,eAAe/W,EAAOoW,EAAUjc,GAAG1M,QAAIpB,GAAW,GAEtEyqB,GACN,KAAK,EAAGV,EAAUjc,GAAG1M,GAAGH,KAAK8oB,EAAUjc,GAAGqb,SAAU,MACpD,KAAK,EAAGY,EAAUjc,GAAG1M,GAAGH,KAAK8oB,EAAUjc,GAAGqb,QAASiB,GAAK,MACxD,KAAK,EAAGL,EAAUjc,GAAG1M,GAAGH,KAAK8oB,EAAUjc,GAAGqb,QAASiB,EAAIC,GAAK,MAC5D,KAAK,EAAGN,EAAUjc,GAAG1M,GAAGH,KAAK8oB,EAAUjc,GAAGqb,QAASiB,EAAIC,EAAIC,GAAK,MAChE,QACE,IAAKrW,EAAM,IAAK0W,EAAI,EAAG1W,EAAO,IAAI5D,MAAMoa,EAAK,GAAIE,EAAIF,EAAKE,IACxD1W,EAAK0W,EAAI,GAAKrpB,UAAUqpB,GAG1BZ,EAAUjc,GAAG1M,GAAGC,MAAM0oB,EAAUjc,GAAGqb,QAASlV,GAGnD,CAED,OAAO,CACT,EAWA2V,EAAa5oB,UAAU4pB,GAAK,SAAYjX,EAAOvS,EAAI+nB,GACjD,OAAOE,EAAYvqB,KAAM6U,EAAOvS,EAAI+nB,GAAS,EAC/C,EAWAS,EAAa5oB,UAAUooB,KAAO,SAAczV,EAAOvS,EAAI+nB,GACrD,OAAOE,EAAYvqB,KAAM6U,EAAOvS,EAAI+nB,GAAS,EAC/C,EAYAS,EAAa5oB,UAAU0pB,eAAiB,SAAwB/W,EAAOvS,EAAI+nB,EAASC,GAClF,IAAII,EAAMR,EAASA,EAASrV,EAAQA,EAEpC,IAAK7U,KAAK2qB,QAAQD,GAAM,OAAO1qB,KAC/B,IAAKsC,EAEH,OADAuoB,EAAW7qB,KAAM0qB,GACV1qB,KAGT,IAAIirB,EAAYjrB,KAAK2qB,QAAQD,GAE7B,GAAIO,EAAU3oB,GAEV2oB,EAAU3oB,KAAOA,GACfgoB,IAAQW,EAAUX,MAClBD,GAAWY,EAAUZ,UAAYA,GAEnCQ,EAAW7qB,KAAM0qB,OAEd,CACL,IAAK,IAAI1b,EAAI,EAAGgc,EAAS,GAAInkB,EAASokB,EAAUpkB,OAAQmI,EAAInI,EAAQmI,KAEhEic,EAAUjc,GAAG1M,KAAOA,GACnBgoB,IAASW,EAAUjc,GAAGsb,MACtBD,GAAWY,EAAUjc,GAAGqb,UAAYA,IAErCW,EAAO7pB,KAAK8pB,EAAUjc,IAOtBgc,EAAOnkB,OAAQ7G,KAAK2qB,QAAQD,GAAyB,IAAlBM,EAAOnkB,OAAemkB,EAAO,GAAKA,EACpEH,EAAW7qB,KAAM0qB,EACvB,CAED,OAAO1qB,IACT,EASA8qB,EAAa5oB,UAAU6pB,mBAAqB,SAA4BlX,GACtE,IAAI6V,EAUJ,OARI7V,GACF6V,EAAMR,EAASA,EAASrV,EAAQA,EAC5B7U,KAAK2qB,QAAQD,IAAMG,EAAW7qB,KAAM0qB,KAExC1qB,KAAK2qB,QAAU,IAAIR,EACnBnqB,KAAK4qB,aAAe,GAGf5qB,IACT,EAKA8qB,EAAa5oB,UAAU8pB,IAAMlB,EAAa5oB,UAAU0pB,eACpDd,EAAa5oB,UAAUqoB,YAAcO,EAAa5oB,UAAU4pB,GAK5DhB,EAAamB,SAAW/B,EAKxBY,EAAaA,aAAeA,EAM1BoB,EAAA/rB,QAAiB2qB,4BCrTnBqB,GAFc5a,MAAMqX,QCYpB,SAASwD,KACP,IAAK5pB,UAAUqE,OACb,MAAO,GAET,IAAIpG,EAAQ+B,UAAU,GACtB,OAAOomB,GAAQnoB,GAASA,EAAQ,CAACA,EACnC,CCxCA,IAAImoB,GAAUxoB,GACV0S,GAAgBjS,GAChBoF,GAAW7B,GAGXyN,GAFkBhN,GAEQ,WAC1BwkB,GAAS9X,MCNT8a,GDUa,SAAUC,GACzB,IAAIlT,EASF,OAREwP,GAAQ0D,KACVlT,EAAIkT,EAAcxgB,aAEdgH,GAAcsG,KAAOA,IAAMiQ,IAAUT,GAAQxP,EAAElX,aAC1C+D,GAASmT,IAEN,QADVA,EAAIA,EAAEvH,QAFwDuH,OAAIlY,SAKvDA,IAANkY,EAAkBiQ,GAASjQ,CACtC,ECjBAmT,GAAiB,SAAUD,EAAezlB,GACxC,OAAO,IAAKwlB,GAAwBC,GAA7B,CAAwD,IAAXzlB,EAAe,EAAIA,EACzE,ECNI/E,GAAO1B,GAEP+M,GAAgB/I,GAChBtB,GAAW+B,EACXuJ,GAAoBrJ,GACpBwnB,GAAqBtnB,GAErB9D,GANcN,EAMK,GAAGM,MAGtBmN,GAAe,SAAUzD,GAC3B,IAAI2hB,EAAkB,IAAT3hB,EACT4hB,EAAqB,IAAT5hB,EACZ6hB,EAAmB,IAAT7hB,EACV8hB,EAAoB,IAAT9hB,EACX+hB,EAAyB,IAAT/hB,EAChBgiB,EAA4B,IAAThiB,EACnBiiB,EAAoB,IAATjiB,GAAc+hB,EAC7B,OAAO,SAAUpe,EAAOue,EAAY1Z,EAAM2Z,GASxC,IARA,IAOIvsB,EAAOsH,EAPPa,EAAI9F,GAAS0L,GACbzO,EAAOoN,GAAcvE,GACrB/B,EAASuH,GAAkBrO,GAC3BktB,EAAgBnrB,GAAKirB,EAAY1Z,GACjCpF,EAAQ,EACRiU,EAAS8K,GAAkBT,GAC3Bjc,EAASkc,EAAStK,EAAO1T,EAAO3H,GAAU4lB,GAAaI,EAAmB3K,EAAO1T,EAAO,QAAKtN,EAE3F2F,EAASoH,EAAOA,IAAS,IAAI6e,GAAY7e,KAASlO,KAEtDgI,EAASklB,EADTxsB,EAAQV,EAAKkO,GACiBA,EAAOrF,GACjCiC,GACF,GAAI2hB,EAAQlc,EAAOrC,GAASlG,OACvB,GAAIA,EAAQ,OAAQ8C,GACvB,KAAK,EAAG,OAAO,EACf,KAAK,EAAG,OAAOpK,EACf,KAAK,EAAG,OAAOwN,EACf,KAAK,EAAG9M,GAAKmP,EAAQ7P,QAChB,OAAQoK,GACb,KAAK,EAAG,OAAO,EACf,KAAK,EAAG1J,GAAKmP,EAAQ7P,GAI3B,OAAOmsB,GAAiB,EAAIF,GAAWC,EAAWA,EAAWrc,CACjE,CACA,EAEA4c,GAAiB,CAGfC,QAAS7e,GAAa,GAGtB8e,IAAK9e,GAAa,GAGlB+e,OAAQ/e,GAAa,GAGrBgf,KAAMhf,GAAa,GAGnBif,MAAOjf,GAAa,GAGpBkf,KAAMlf,GAAa,GAGnBmf,UAAWnf,GAAa,GAGxBof,aAAcpf,GAAa,ICtEzBqf,GAAO9sB,GAAwCusB,IAD3ChtB,GASN,CAAEkQ,OAAQ,QAASkB,OAAO,EAAMR,QAPC5M,GAEoB,QAKW,CAChEgpB,IAAK,SAAaL,GAChB,OAAOY,GAAK3tB,KAAM+sB,EAAYvqB,UAAUqE,OAAS,EAAIrE,UAAU,QAAKtB,EACrE,ICZH,IAAIgH,GAAc9H,GACd8C,GAAcrC,EACdsB,GAAOiC,GACP1C,GAAQmD,EACRub,GAAarb,GACbwK,GAA8BtK,GAC9BoI,GAA6BlD,GAC7BrH,GAAWsH,EACX+C,GAAgBsG,GAGhBma,GAAUttB,OAAOutB,OAEjBxtB,GAAiBC,OAAOD,eACxB8O,GAASjM,GAAY,GAAGiM,QAI5B2e,IAAkBF,IAAWlsB,IAAM,WAEjC,GAAIwG,IAQiB,IARF0lB,GAAQ,CAAExT,EAAG,GAAKwT,GAAQvtB,GAAe,CAAE,EAAE,IAAK,CACnE0I,YAAY,EACZ/C,IAAK,WACH3F,GAAeL,KAAM,IAAK,CACxBS,MAAO,EACPsI,YAAY,GAEf,IACC,CAAEqR,EAAG,KAAMA,EAAS,OAAO,EAE/B,IAAI2T,EAAI,CAAA,EACJC,EAAI,CAAA,EAEJzpB,EAASC,OAAO,oBAChBypB,EAAW,uBAGf,OAFAF,EAAExpB,GAAU,EACZ0pB,EAASjqB,MAAM,IAAImpB,SAAQ,SAAUe,GAAOF,EAAEE,GAAOA,CAAM,IACzB,IAA3BN,GAAQ,CAAA,EAAIG,GAAGxpB,IAAiB6b,GAAWwN,GAAQ,CAAA,EAAII,IAAI3iB,KAAK,MAAQ4iB,CACjF,IAAK,SAAgB3d,EAAQ9O,GAM3B,IALA,IAAI2sB,EAAIrrB,GAASwN,GACbmY,EAAkBjmB,UAAUqE,OAC5BoH,EAAQ,EACR3J,EAAwBiL,GAA4B5G,EACpDoE,EAAuBM,GAA2B1E,EAC/C8f,EAAkBxa,GAMvB,IALA,IAIIzN,EAJAwZ,EAAI7M,GAAc3K,UAAUyL,MAC5BlE,EAAOzF,EAAwB6K,GAAOiR,GAAWpG,GAAI1V,EAAsB0V,IAAMoG,GAAWpG,GAC5FnT,EAASkD,EAAKlD,OACdglB,EAAI,EAEDhlB,EAASglB,GACdrrB,EAAMuJ,EAAK8hB,KACN3jB,KAAe/F,GAAK4K,EAAsBiN,EAAGxZ,KAAM2tB,EAAE3tB,GAAOwZ,EAAExZ,IAErE,OAAO2tB,CACX,EAAIP,GCtDAC,GAAShtB,GADLT,GAMN,CAAEkQ,OAAQ,SAAUQ,MAAM,EAAMjF,MAAO,EAAGmF,OAAQ1Q,OAAOutB,SAAWA,IAAU,CAC9EA,OAAQA,KCPV,IAAAO,GAAA,CAAAjuB,QAAA,CAAA,GAAAkuB,GAAA,CAAA,EAAIrgB,GAAkB5N,GAClBgO,GAAoBvN,GACpBgoB,GAAiBzkB,GAEjBilB,GAAS9X,MACTzD,GAAMnO,KAAKmO,IAEfwgB,GAAiB,SAAU1lB,EAAGmhB,EAAOrB,GAMnC,IALA,IAAI7hB,EAASuH,GAAkBxF,GAC3BohB,EAAIhc,GAAgB+b,EAAOljB,GAC3BojB,EAAMjc,QAAwB9M,IAARwnB,EAAoB7hB,EAAS6hB,EAAK7hB,GACxDkB,EAASshB,GAAOvb,GAAImc,EAAMD,EAAG,IAC7Brc,EAAI,EACDqc,EAAIC,EAAKD,IAAKrc,IAAKkb,GAAe9gB,EAAQ4F,EAAG/E,EAAEohB,IAEtD,OADAjiB,EAAOlB,OAAS8G,EACT5F,CACT,ECfIyE,GAAUpM,GACVgN,GAAkBvM,GAClB0tB,GAAuBnqB,GAAsDuE,EAC7E4K,GAAa1O,GAEb2pB,GAA+B,iBAAV1uB,QAAsBA,QAAUQ,OAAO8O,oBAC5D9O,OAAO8O,oBAAoBtP,QAAU,GAWzCuuB,GAAA1lB,EAAmB,SAA6BjJ,GAC9C,OAAO8uB,IAA+B,WAAhBhiB,GAAQ9M,GAVX,SAAUA,GAC7B,IACE,OAAO6uB,GAAqB7uB,EAC7B,CAAC,MAAOkB,GACP,OAAO2S,GAAWib,GACnB,CACH,CAKMC,CAAe/uB,GACf6uB,GAAqBnhB,GAAgB1N,GAC3C,ECrBA,IAEAgvB,GAFYtuB,GAEW,WACrB,GAA0B,mBAAfuuB,YAA2B,CACpC,IAAIC,EAAS,IAAID,YAAY,GAEzBruB,OAAOuuB,aAAaD,IAAStuB,OAAOD,eAAeuuB,EAAQ,IAAK,CAAEnuB,MAAO,GAC9E,CACH,ICTIiB,GAAQtB,EACR6F,GAAWpF,GACX2L,GAAUpI,GACV0qB,GAA8BjqB,GAG9BkqB,GAAgBzuB,OAAOuuB,aAK3BG,GAJ0BttB,IAAM,WAAcqtB,GAAc,EAAG,KAItBD,GAA+B,SAAsBpvB,GAC5F,QAAKuG,GAASvG,OACVovB,IAA+C,gBAAhBtiB,GAAQ9M,OACpCqvB,IAAgBA,GAAcrvB,IACvC,EAAIqvB,GCbJE,IAFY7uB,GAEY,WAEtB,OAAOE,OAAOuuB,aAAavuB,OAAO4uB,kBAAkB,CAAA,GACtD,ICLItV,GAAIxZ,GACJ8C,GAAcrC,EACdoJ,GAAa7F,GACb6B,GAAWpB,GACX5B,GAAS8B,EACT1E,GAAiB4E,GAA+C0D,EAChE2G,GAA4BnF,GAC5BglB,GAAoC/kB,GACpCykB,GAAepb,GAEf2b,GAAWtb,GAEXub,IAAW,EACXC,GAJM/W,EAIS,QACfpV,GAAK,EAELosB,GAAc,SAAU7vB,GAC1BW,GAAeX,EAAI4vB,GAAU,CAAE7uB,MAAO,CACpC+uB,SAAU,IAAMrsB,KAChBssB,SAAU,CAAE,IAEhB,EA4DIC,GAAOC,GAAAxvB,QAAiB,CAC1ByvB,OA3BW,WACXF,GAAKE,OAAS,aACdP,IAAW,EACX,IAAIjgB,EAAsBE,GAA0B3G,EAChDknB,EAAS3sB,GAAY,GAAG2sB,QACxBhuB,EAAO,CAAA,EACXA,EAAKytB,IAAY,EAGblgB,EAAoBvN,GAAMgF,SAC5ByI,GAA0B3G,EAAI,SAAUjJ,GAEtC,IADA,IAAIqI,EAASqH,EAAoB1P,GACxBsP,EAAI,EAAGnI,EAASkB,EAAOlB,OAAQmI,EAAInI,EAAQmI,IAClD,GAAIjH,EAAOiH,KAAOsgB,GAAU,CAC1BO,EAAO9nB,EAAQiH,EAAG,GAClB,KACD,CACD,OAAOjH,CACf,EAEI6R,GAAE,CAAEtJ,OAAQ,SAAUQ,MAAM,EAAME,QAAQ,GAAQ,CAChD5B,oBAAqB+f,GAAkCxmB,IAG7D,EAIEmnB,QA5DY,SAAUpwB,EAAIwiB,GAE1B,IAAKjc,GAASvG,GAAK,MAAoB,iBAANA,EAAiBA,GAAmB,iBAANA,EAAiB,IAAM,KAAOA,EAC7F,IAAKuD,GAAOvD,EAAI4vB,IAAW,CAEzB,IAAKT,GAAanvB,GAAK,MAAO,IAE9B,IAAKwiB,EAAQ,MAAO,IAEpBqN,GAAY7vB,EAEb,CAAC,OAAOA,EAAG4vB,IAAUE,QACxB,EAiDEO,YA/CgB,SAAUrwB,EAAIwiB,GAC9B,IAAKjf,GAAOvD,EAAI4vB,IAAW,CAEzB,IAAKT,GAAanvB,GAAK,OAAO,EAE9B,IAAKwiB,EAAQ,OAAO,EAEpBqN,GAAY7vB,EAEb,CAAC,OAAOA,EAAG4vB,IAAUG,QACxB,EAsCEO,SAnCa,SAAUtwB,GAEvB,OADI0vB,IAAYC,IAAYR,GAAanvB,KAAQuD,GAAOvD,EAAI4vB,KAAWC,GAAY7vB,GAC5EA,CACT,GAmCAuK,GAAWqlB,KAAY,oBCxFnBzpB,GAAazF,GACb6F,GAAWpF,GACXwQ,GAAiBjN,GCFjBwV,GAAIxZ,GACJR,GAASiB,EACTqC,GAAckB,EACduL,GAAW9K,GACXkH,GAAgBhH,GAChBkrB,GAAyBhrB,GACzBmZ,GAAUjU,GACV8H,GAAa7H,GACbvE,GAAa4N,GACbhR,GAAoB8V,EACpBtS,GAAW6N,GACXpS,GAAQsS,EACRoL,GAA8BvF,GAC9BnI,GAAiB4R,GACjB4M,GDTa,SAAU1hB,EAAO2hB,EAAOC,GACvC,IAAIC,EAAWC,EAUf,OAPEjf,IAEAxL,GAAWwqB,EAAYF,EAAMrkB,cAC7BukB,IAAcD,GACdnqB,GAASqqB,EAAqBD,EAAUnuB,YACxCouB,IAAuBF,EAAQluB,WAC/BmP,GAAe7C,EAAO8hB,GACjB9hB,CACT,ECDA+hB,GAAiB,SAAUxe,EAAkB+K,EAAS0T,GACpD,IAAIhE,GAA8C,IAArCza,EAAiBlD,QAAQ,OAClC4hB,GAAgD,IAAtC1e,EAAiBlD,QAAQ,QACnC6hB,EAAQlE,EAAS,MAAQ,MACzBmE,EAAoB/wB,GAAOmS,GAC3B6e,EAAkBD,GAAqBA,EAAkBzuB,UACzD8P,EAAc2e,EACdE,EAAW,CAAA,EAEXC,EAAY,SAAU7M,GACxB,IAAI8M,EAAwB7tB,GAAY0tB,EAAgB3M,IACxDlY,GAAc6kB,EAAiB3M,EACrB,QAARA,EAAgB,SAAaxjB,GAE3B,OADAswB,EAAsB/wB,KAAgB,IAAVS,EAAc,EAAIA,GACvCT,IACf,EAAkB,WAARikB,EAAmB,SAAUzjB,GAC/B,QAAOiwB,IAAYxqB,GAASzF,KAAeuwB,EAAsB/wB,KAAc,IAARQ,EAAY,EAAIA,EACxF,EAAW,QAARyjB,EAAgB,SAAazjB,GAC/B,OAAOiwB,IAAYxqB,GAASzF,QAAOU,EAAY6vB,EAAsB/wB,KAAc,IAARQ,EAAY,EAAIA,EAC5F,EAAW,QAARyjB,EAAgB,SAAazjB,GAC/B,QAAOiwB,IAAYxqB,GAASzF,KAAeuwB,EAAsB/wB,KAAc,IAARQ,EAAY,EAAIA,EAC/F,EAAU,SAAaA,EAAKC,GAEpB,OADAswB,EAAsB/wB,KAAc,IAARQ,EAAY,EAAIA,EAAKC,GAC1CT,IACR,EAEP,EASE,GAPc2P,GACZoC,GACClM,GAAW8qB,MAAwBF,GAAWG,EAAgBzD,UAAYzrB,IAAM,YAC/E,IAAIivB,GAAoBlM,UAAUpO,MACxC,MAKIrE,EAAcwe,EAAOQ,eAAelU,EAAS/K,EAAkBya,EAAQkE,GACvET,GAAuBL,cAClB,GAAIjgB,GAASoC,GAAkB,GAAO,CAC3C,IAAIkf,EAAW,IAAIjf,EAEfkf,EAAiBD,EAASP,GAAOD,EAAU,CAAE,GAAI,EAAG,KAAOQ,EAE3DE,EAAuBzvB,IAAM,WAAcuvB,EAAS1nB,IAAI,EAAG,IAG3D6nB,EAAmBhS,IAA4B,SAAUf,GAAY,IAAIsS,EAAkBtS,EAAU,IAErGgT,GAAcZ,GAAW/uB,IAAM,WAIjC,IAFA,IAAI4vB,EAAY,IAAIX,EAChB1iB,EAAQ,EACLA,KAASqjB,EAAUZ,GAAOziB,EAAOA,GACxC,OAAQqjB,EAAU/nB,KAAK,EAC7B,IAES6nB,KACHpf,EAAc8K,GAAQ,SAAUqT,EAAO9R,GACrCpM,GAAWke,EAAOS,GAClB,IAAIvd,EAAO6c,GAAkB,IAAIS,EAAqBR,EAAOne,GAE7D,OADKvP,GAAkB4b,IAAWD,GAAQC,EAAUhL,EAAKqd,GAAQ,CAAErd,KAAMA,EAAMoL,WAAY+N,IACpFnZ,CACf,KACkBnR,UAAY0uB,EACxBA,EAAgB9kB,YAAckG,IAG5Bmf,GAAwBE,KAC1BP,EAAU,UACVA,EAAU,OACVtE,GAAUsE,EAAU,SAGlBO,GAAcH,IAAgBJ,EAAUJ,GAGxCD,GAAWG,EAAgB1c,cAAc0c,EAAgB1c,KAC9D,CASD,OAPA2c,EAAS9e,GAAoBC,EAC7B4H,GAAE,CAAEha,QAAQ,EAAMkM,aAAa,EAAMkF,OAAQgB,IAAgB2e,GAAqBE,GAElFnf,GAAeM,EAAaD,GAEvB0e,GAASD,EAAOe,UAAUvf,EAAaD,EAAkBya,GAEvDxa,CACT,ECxGIjG,GAAgB3L,GAEpBoxB,GAAiB,SAAUlhB,EAAQuR,EAAKnW,GACtC,IAAK,IAAIlL,KAAOqhB,EAAK9V,GAAcuE,EAAQ9P,EAAKqhB,EAAIrhB,GAAMkL,GAC1D,OAAO4E,CACT,ECLIpN,GAAc9C,EACdoxB,GAAiB3wB,GACjBkvB,GAAc3rB,GAA0C2rB,YACxD9d,GAAapN,GACb2B,GAAWzB,GACXtC,GAAoBwC,EACpBgB,GAAWkE,GACXiU,GAAUhU,GAEVnH,GAASsV,EAGT0C,GAFsBnH,GAEiBxK,IACvCmoB,GAHsB3d,GAGuBlJ,UAC7C4iB,GANuB/Z,GAMK+Z,KAC5BC,GAPuBha,GAOUga,UACjCoC,GAAS3sB,GAAY,GAAG2sB,QACxB1sB,GAAK,EAGLuuB,GAAsB,SAAUpnB,GAClC,OAAOA,EAAMqnB,SAAWrnB,EAAMqnB,OAAS,IAAIC,GAC7C,EAEIA,GAAsB,WACxB5xB,KAAKykB,QAAU,EACjB,EAEIoN,GAAqB,SAAU7wB,EAAOR,GACxC,OAAOgtB,GAAKxsB,EAAMyjB,SAAS,SAAU/kB,GACnC,OAAOA,EAAG,KAAOc,CACrB,GACA,EAEAoxB,GAAoB1vB,UAAY,CAC9B8D,IAAK,SAAUxF,GACb,IAAI4V,EAAQyb,GAAmB7xB,KAAMQ,GACrC,GAAI4V,EAAO,OAAOA,EAAM,EACzB,EACD7M,IAAK,SAAU/I,GACb,QAASqxB,GAAmB7xB,KAAMQ,EACnC,EACD8I,IAAK,SAAU9I,EAAKC,GAClB,IAAI2V,EAAQyb,GAAmB7xB,KAAMQ,GACjC4V,EAAOA,EAAM,GAAK3V,EACjBT,KAAKykB,QAAQtjB,KAAK,CAACX,EAAKC,GAC9B,EACDqxB,OAAU,SAAUtxB,GAClB,IAAIyN,EAAQwf,GAAUztB,KAAKykB,SAAS,SAAU/kB,GAC5C,OAAOA,EAAG,KAAOc,CACvB,IAEI,OADKyN,GAAO4hB,GAAO7vB,KAAKykB,QAASxW,EAAO,MAC9BA,CACX,GAGH,ICzDY8jB,GAMAC,GDmDZC,GAAiB,CACfjB,eAAgB,SAAUlU,EAAS/K,EAAkBya,EAAQkE,GAC3D,IAAI1e,EAAc8K,GAAQ,SAAUzJ,EAAMgL,GACxCpM,GAAWoB,EAAMnB,GACjB+I,GAAiB5H,EAAM,CACrBvI,KAAMiH,EACN5O,GAAIA,KACJwuB,YAAQzwB,IAELuB,GAAkB4b,IAAWD,GAAQC,EAAUhL,EAAKqd,GAAQ,CAAErd,KAAMA,EAAMoL,WAAY+N,GACjG,IAEQta,EAAYF,EAAY9P,UAExB+I,EAAmBwmB,GAAuB1f,GAE1CmgB,EAAS,SAAU7e,EAAM7S,EAAKC,GAChC,IAAI6J,EAAQW,EAAiBoI,GACzBvD,EAAOigB,GAAYvpB,GAAShG,IAAM,GAGtC,OAFa,IAATsP,EAAe4hB,GAAoBpnB,GAAOhB,IAAI9I,EAAKC,GAClDqP,EAAKxF,EAAMnH,IAAM1C,EACf4S,CACb,EAiDI,OA/CAme,GAAetf,EAAW,CAIxB4f,OAAU,SAAUtxB,GAClB,IAAI8J,EAAQW,EAAiBjL,MAC7B,IAAKiG,GAASzF,GAAM,OAAO,EAC3B,IAAIsP,EAAOigB,GAAYvvB,GACvB,OAAa,IAATsP,EAAsB4hB,GAAoBpnB,GAAe,OAAE9J,GACxDsP,GAAQ7M,GAAO6M,EAAMxF,EAAMnH,YAAc2M,EAAKxF,EAAMnH,GAC5D,EAIDoG,IAAK,SAAa/I,GAChB,IAAI8J,EAAQW,EAAiBjL,MAC7B,IAAKiG,GAASzF,GAAM,OAAO,EAC3B,IAAIsP,EAAOigB,GAAYvvB,GACvB,OAAa,IAATsP,EAAsB4hB,GAAoBpnB,GAAOf,IAAI/I,GAClDsP,GAAQ7M,GAAO6M,EAAMxF,EAAMnH,GACnC,IAGHquB,GAAetf,EAAWsa,EAAS,CAGjCxmB,IAAK,SAAaxF,GAChB,IAAI8J,EAAQW,EAAiBjL,MAC7B,GAAIiG,GAASzF,GAAM,CACjB,IAAIsP,EAAOigB,GAAYvvB,GACvB,OAAa,IAATsP,EAAsB4hB,GAAoBpnB,GAAOtE,IAAIxF,GAClDsP,EAAOA,EAAKxF,EAAMnH,SAAMjC,CAChC,CACF,EAGDoI,IAAK,SAAa9I,EAAKC,GACrB,OAAOyxB,EAAOlyB,KAAMQ,EAAKC,EAC1B,GACC,CAGFyV,IAAK,SAAazV,GAChB,OAAOyxB,EAAOlyB,KAAMS,GAAO,EAC5B,IAGIuR,CACR,GEhIc5R,GAKN,WAAW,SAAU+xB,GAC9B,OAAO,WAAqB,OAAOA,EAAKnyB,KAAMwC,UAAUqE,OAASrE,UAAU,QAAKtB,EAAW,CAC7F,GANqBL,IDFrB,SAAYkxB,GACVA,EAAAA,EAAA,YAAA,GAAA,cACAA,EAAAA,EAAA,gBAAA,GAAA,kBACAA,EAAAA,EAAA,eAAA,GAAA,gBACD,CAJD,CAAYA,KAAAA,GAIX,CAAA,IAED,SAAYC,GACVA,EAAAA,EAAA,IAAA,GAAA,MACAA,EAAAA,EAAA,MAAA,GAAA,QACAA,EAAAA,EAAA,OAAA,GAAA,SACAA,EAAAA,EAAA,KAAA,GAAA,MACD,CALD,CAAYA,KAAAA,GAKX,CAAA,IAEM,aAaMI,GAA2B,MAG3BC,GAA0B,CAAC,EAAG,KEvBtBC,GAAS,WAO5B,SAAAA,EAAYC,GAAoBC,OAAAF,gBAC9BtyB,KAAKuyB,SAAWA,EAChBvyB,KAAKyyB,kBAAmB,EACxBzyB,KAAK0yB,kBAAmB,CAC1B,CAgGC,OAhGAC,EAAAL,EAAA,CAAA,CAAA9xB,IAAA,iBAAAC,MAED,SACEmyB,GACwD,IAAAC,EAAA7yB,KAAxD8yB,EAA6BtwB,UAAAqE,OAAArE,QAAAtB,IAAAsB,UAAAtB,GAAAsB,UAAAuvB,GAAAA,GAAgBgB,YAErCrnB,EAAY1L,KAAKuyB,SAAS7mB,QAA1BA,QACFsnB,EAAehzB,KAAKuyB,SAASU,mBAC7BC,EAAUxnB,EAAQynB,KAAKplB,IAC3BilB,EAAahtB,IAAI0F,EAAQ8L,OAAO1M,MAAOsoB,aAAa1nB,EAAQynB,KAAKplB,UACjE7M,EACImyB,EAAU3nB,EAAQynB,KAAKrlB,IAC3BklB,EAAahtB,IAAI0F,EAAQ8L,OAAO1M,MAAOsoB,aAAa1nB,EAAQynB,KAAKrlB,UACjE5M,EACMoyB,EAAqBtzB,KAAKuyB,SAA1Be,iBAER,OACEzJ,GAAA7pB,KAA6BuzB,GAAA,IAAAC,IAAArxB,KAA7BnC,KACE4yB,EACAM,EACAG,EACAP,GAGKf,GAAgBgB,aAGrBD,IAAcf,GAAgBgB,aAChCH,EACGa,MAAMP,EAASG,GACfloB,MAAMO,EAAQgoB,MAAOZ,IAAcf,GAAgB4B,gBAGxDL,EAAiBM,MACfhB,EACAlnB,EAAQgoB,OACR,SAACG,EAAsB5lB,GACrB,IAAI6lB,EAAmB,KAQvB,OANEA,EADElB,EAAoBmB,GAAG9lB,EAAQ,GACd2kB,EAAoBmB,GAAG9lB,EAAQ,GAE/B4kB,EAAKN,SAASyB,WAC9BC,UAAUvoB,EAAQ8L,OAAO1M,KAAM+oB,EAAW,GAC1CK,MAEElB,EACJhtB,IAAI0F,EAAQyoB,UAAUrpB,MACtBspB,QAAQP,EAAWC,GACnB1G,KAAI,SAACiH,GAAC,sCAAWA,GAAC,CAAEC,EAAG5oB,EAAQoE,KAAKykB,cAAY,GACrD,IAGF1K,GAAA7pB,KAA+BuzB,GAAA,IAAAiB,IAAAryB,KAA/BnC,KACEszB,EAAiBvlB,IACjBulB,EAAiBxlB,IACjBolB,EACAG,GAGEP,IAAcf,GAAgB0C,gBAChCz0B,KAAKuyB,SAASmC,aAAajY,KAAK,gBAAiB,CAAC6W,EAAiBvlB,MAC1D+kB,IAAcf,GAAgB4B,gBACvC3zB,KAAKuyB,SAASmC,aAAajY,KAAK,gBAAiB,CAAC6W,EAAiBxlB,MAG9DglB,EACT,GAAC,CAAAtyB,IAAA,SAAAC,MAED,SAAO0yB,EAAYwB,GACjB,IAAAC,EAAsC50B,KAAKuyB,SAAnCe,EAAgBsB,EAAhBtB,iBAAkB5nB,EAAOkpB,EAAPlpB,QACpBwnB,EAAU,IAAI2B,KAAKvB,EAAiBvlB,KACpCslB,EAAU,IAAIwB,KAAKvB,EAAiBxlB,KAE1C,OAAIqlB,EAAOD,EACFlzB,KAAK80B,eACV90B,KAAKuyB,SAASwC,uBAAuB5B,EAAMD,GAAS,GACpDnB,GAAgB0C,iBAGhBE,EACK30B,KAAK80B,eACV90B,KAAKuyB,SAASwC,uBAAuB5B,EAAMznB,EAAQA,QAAQgoB,OAC3DR,EAAUC,EACRpB,GAAgB4B,eAChB5B,GAAgB0C,iBAIlBtB,EAAOE,EACFrzB,KAAK80B,eACV90B,KAAKuyB,SAASwC,uBAAuB1B,EAASF,GAAM,GACpDpB,GAAgB4B,gBAIb5B,GAAgBgB,WACzB,KAACT,CAAA,CA3G2B,GA8G1BiB,GAAA,IAAAyB,QAAAxB,GAAA,SAAAZ,EACAM,EACAG,EACAP,GAEA,SACEO,GACAT,EAAoB9kB,KAAQulB,GAC5BrzB,KAAKyyB,kBACLK,IAAcf,GAAgB4B,oBAM9BT,GACAN,EAAoB7kB,KAAQmlB,GAC5BlzB,KAAK0yB,kBACLI,IAAcf,GAAgB0C,gBAMlC,cAGEQ,EACAC,EACAnnB,EACAD,GAEA,GAAIC,EAAK,CACP,IAAMonB,EAAUF,GAAclnB,EAC9B/N,KAAKuyB,SAASmC,aAAajY,KACzB0Y,EAAU,iBAAmB,qBAE/Bn1B,KAAK0yB,iBAAmByC,CAC1B,CACA,GAAIrnB,EAAK,CACP,IAAMqnB,EAAUD,GAAcpnB,EAC9B9N,KAAKuyB,SAASmC,aAAajY,KACzB0Y,EAAU,iBAAmB,qBAE/Bn1B,KAAKyyB,iBAAmB0C,CAC1B,CACF,ECjKF,IAAIzyB,GAAaC,UCAbiX,GAAIxZ,GACJsB,GAAQb,EACR+nB,GAAUxkB,GACV6B,GAAWpB,GACX/B,GAAWiC,EACXqJ,GAAoBnJ,GACpBmwB,GDHa,SAAU11B,GACzB,GAAIA,EAHiB,iBAGM,MAAMgD,GAAW,kCAC5C,OAAOhD,CACT,ECCImpB,GAAiBze,GACjBmiB,GAAqB9Y,GACrBsV,GAA+BxQ,GAE/BrU,GAAa8P,GAEbqhB,GAHkBvhB,GAGqB,sBAKvCwhB,GAA+BpxB,IAAc,KAAOxC,IAAM,WAC5D,IAAIsnB,EAAQ,GAEZ,OADAA,EAAMqM,KAAwB,EACvBrM,EAAM7Z,SAAS,KAAO6Z,CAC/B,IAEIuM,GAAqB,SAAU3sB,GACjC,IAAK3C,GAAS2C,GAAI,OAAO,EACzB,IAAI4sB,EAAa5sB,EAAEysB,IACnB,YAAsBn0B,IAAfs0B,IAA6BA,EAAa5M,GAAQhgB,EAC3D,EAOAgR,GAAE,CAAEtJ,OAAQ,QAASkB,OAAO,EAAM3F,MAAO,EAAGmF,QAL9BskB,KAAiCvM,GAA6B,WAKd,CAE5D5Z,OAAQ,SAAgBsmB,GACtB,IAGIzmB,EAAGgb,EAAGnjB,EAAQ8kB,EAAK+J,EAHnB9sB,EAAI9F,GAAS9C,MACb+tB,EAAIxB,GAAmB3jB,EAAG,GAC1B+E,EAAI,EAER,IAAKqB,GAAK,EAAGnI,EAASrE,UAAUqE,OAAQmI,EAAInI,EAAQmI,IAElD,GAAIumB,GADJG,GAAW,IAAP1mB,EAAWpG,EAAIpG,UAAUwM,IAI3B,IAFA2c,EAAMvd,GAAkBsnB,GACxBN,GAAyBznB,EAAIge,GACxB3B,EAAI,EAAGA,EAAI2B,EAAK3B,IAAKrc,IAASqc,KAAK0L,GAAG7M,GAAekF,EAAGpgB,EAAG+nB,EAAE1L,SAElEoL,GAAyBznB,EAAI,GAC7Bkb,GAAekF,EAAGpgB,IAAK+nB,GAI3B,OADA3H,EAAElnB,OAAS8G,EACJogB,CACR,ICvDH,IAAIrsB,GAAQtB,EAEZu1B,GAAiB,SAAUpN,EAAaxlB,GACtC,IAAI6D,EAAS,GAAG2hB,GAChB,QAAS3hB,GAAUlF,IAAM,WAEvBkF,EAAOzE,KAAK,KAAMY,GAAY,WAAc,OAAO,GAAM,EAC7D,GACA,ECRI6W,GAAIxZ,GAEJ+M,GAAgB/I,GAChBgJ,GAAkBvI,GAClB8wB,GAAsB5wB,GAEtB6wB,GALc/0B,EAKW,GAAGwK,MAOhCuO,GAAE,CAAEtJ,OAAQ,QAASkB,OAAO,EAAMR,OALhB7D,KAAkB7M,SACPq1B,GAAoB,OAAQ,MAIL,CAClDtqB,KAAM,SAAcwqB,GAClB,OAAOD,GAAWxoB,GAAgBpN,WAAqBkB,IAAd20B,EAA0B,IAAMA,EAC1E,IChBH,IAAI3T,GAAS9hB,GACTwR,GAAwB/Q,GACxB2wB,GAAiBptB,GACjBtC,GAAO+C,GACPoN,GAAalN,GACbtC,GAAoBwC,EACpBmZ,GAAUjU,GACVwa,GAAiBva,GACjBsa,GAAyBjR,GACzB3B,GAAayG,GACbrQ,GAAc4L,GACdgc,GAAU9b,GAA0C8b,QAGpD7U,GAFsBpB,GAEiBvQ,IACvCmoB,GAHsB5X,GAGuBjP,UAEjDkrB,GAAiB,CACf9E,eAAgB,SAAUlU,EAAS/K,EAAkBya,EAAQkE,GAC3D,IAAI1e,EAAc8K,GAAQ,SAAUzJ,EAAMgL,GACxCpM,GAAWoB,EAAMnB,GACjB+I,GAAiB5H,EAAM,CACrBvI,KAAMiH,EACN9D,MAAOiU,GAAO,MACdoD,WAAOpkB,EACP60B,UAAM70B,EACNukB,KAAM,IAEHvd,KAAamL,EAAKoS,KAAO,GACzBhjB,GAAkB4b,IAAWD,GAAQC,EAAUhL,EAAKqd,GAAQ,CAAErd,KAAMA,EAAMoL,WAAY+N,GACjG,IAEQta,EAAYF,EAAY9P,UAExB+I,EAAmBwmB,GAAuB1f,GAE1CmgB,EAAS,SAAU7e,EAAM7S,EAAKC,GAChC,IAEIu1B,EAAU/nB,EAFV3D,EAAQW,EAAiBoI,GACzB+C,EAAQ6f,EAAS5iB,EAAM7S,GAqBzB,OAlBE4V,EACFA,EAAM3V,MAAQA,GAGd6J,EAAMyrB,KAAO3f,EAAQ,CACnBnI,MAAOA,EAAQ6hB,GAAQtvB,GAAK,GAC5BA,IAAKA,EACLC,MAAOA,EACPu1B,SAAUA,EAAW1rB,EAAMyrB,KAC3B1f,UAAMnV,EACNg1B,SAAS,GAEN5rB,EAAMgb,QAAOhb,EAAMgb,MAAQlP,GAC5B4f,IAAUA,EAAS3f,KAAOD,GAC1BlO,GAAaoC,EAAMmb,OAClBpS,EAAKoS,OAEI,MAAVxX,IAAe3D,EAAM2D,MAAMA,GAASmI,IACjC/C,CACf,EAEQ4iB,EAAW,SAAU5iB,EAAM7S,GAC7B,IAGI4V,EAHA9L,EAAQW,EAAiBoI,GAEzBpF,EAAQ6hB,GAAQtvB,GAEpB,GAAc,MAAVyN,EAAe,OAAO3D,EAAM2D,MAAMA,GAEtC,IAAKmI,EAAQ9L,EAAMgb,MAAOlP,EAAOA,EAAQA,EAAMC,KAC7C,GAAID,EAAM5V,MAAQA,EAAK,OAAO4V,CAEtC,EAuFI,OArFAob,GAAetf,EAAW,CAIxBgC,MAAO,WAKL,IAJA,IACI5J,EAAQW,EADDjL,MAEP8P,EAAOxF,EAAM2D,MACbmI,EAAQ9L,EAAMgb,MACXlP,GACLA,EAAM8f,SAAU,EACZ9f,EAAM4f,WAAU5f,EAAM4f,SAAW5f,EAAM4f,SAAS3f,UAAOnV,UACpD4O,EAAKsG,EAAMnI,OAClBmI,EAAQA,EAAMC,KAEhB/L,EAAMgb,MAAQhb,EAAMyrB,UAAO70B,EACvBgH,GAAaoC,EAAMmb,KAAO,EAXnBzlB,KAYDylB,KAAO,CAClB,EAIDqM,OAAU,SAAUtxB,GAClB,IAAI6S,EAAOrT,KACPsK,EAAQW,EAAiBoI,GACzB+C,EAAQ6f,EAAS5iB,EAAM7S,GAC3B,GAAI4V,EAAO,CACT,IAAIC,EAAOD,EAAMC,KACb8f,EAAO/f,EAAM4f,gBACV1rB,EAAM2D,MAAMmI,EAAMnI,OACzBmI,EAAM8f,SAAU,EACZC,IAAMA,EAAK9f,KAAOA,GAClBA,IAAMA,EAAK2f,SAAWG,GACtB7rB,EAAMgb,QAAUlP,IAAO9L,EAAMgb,MAAQjP,GACrC/L,EAAMyrB,OAAS3f,IAAO9L,EAAMyrB,KAAOI,GACnCjuB,GAAaoC,EAAMmb,OAClBpS,EAAKoS,MACpB,CAAU,QAASrP,CACZ,EAID+W,QAAS,SAAiBJ,GAIxB,IAHA,IAEI3W,EAFA9L,EAAQW,EAAiBjL,MACzBitB,EAAgBnrB,GAAKirB,EAAYvqB,UAAUqE,OAAS,EAAIrE,UAAU,QAAKtB,GAEpEkV,EAAQA,EAAQA,EAAMC,KAAO/L,EAAMgb,OAGxC,IAFA2H,EAAc7W,EAAM3V,MAAO2V,EAAM5V,IAAKR,MAE/BoW,GAASA,EAAM8f,SAAS9f,EAAQA,EAAM4f,QAEhD,EAIDzsB,IAAK,SAAa/I,GAChB,QAASy1B,EAASj2B,KAAMQ,EACzB,IAGHgxB,GAAetf,EAAWsa,EAAS,CAGjCxmB,IAAK,SAAaxF,GAChB,IAAI4V,EAAQ6f,EAASj2B,KAAMQ,GAC3B,OAAO4V,GAASA,EAAM3V,KACvB,EAGD6I,IAAK,SAAa9I,EAAKC,GACrB,OAAOyxB,EAAOlyB,KAAc,IAARQ,EAAY,EAAIA,EAAKC,EAC1C,GACC,CAGFyV,IAAK,SAAazV,GAChB,OAAOyxB,EAAOlyB,KAAMS,EAAkB,IAAVA,EAAc,EAAIA,EAAOA,EACtD,IAECyH,IAAa0J,GAAsBM,EAAW,OAAQ,CACxDxR,cAAc,EACdsF,IAAK,WACH,OAAOiF,EAAiBjL,MAAMylB,IAC/B,IAEIzT,CACR,EACDuf,UAAW,SAAUvf,EAAaD,EAAkBya,GAClD,IAAI4J,EAAgBrkB,EAAmB,YACnCskB,EAA6B5E,GAAuB1f,GACpDukB,EAA2B7E,GAAuB2E,GAUtDzR,GAAe3S,EAAaD,GAAkB,SAAU+S,EAAUhH,GAChE7C,GAAiBjb,KAAM,CACrB8K,KAAMsrB,EACN9lB,OAAQwU,EACRxa,MAAO+rB,EAA2BvR,GAClChH,KAAMA,EACNiY,UAAM70B,GAEd,IAAO,WAKD,IAJA,IAAIoJ,EAAQgsB,EAAyBt2B,MACjC8d,EAAOxT,EAAMwT,KACb1H,EAAQ9L,EAAMyrB,KAEX3f,GAASA,EAAM8f,SAAS9f,EAAQA,EAAM4f,SAE7C,OAAK1rB,EAAMgG,SAAYhG,EAAMyrB,KAAO3f,EAAQA,EAAQA,EAAMC,KAAO/L,EAAMA,MAAMgb,OAMjDZ,GAAf,SAAT5G,EAA+C1H,EAAM5V,IAC5C,WAATsd,EAAiD1H,EAAM3V,MAC7B,CAAC2V,EAAM5V,IAAK4V,EAAM3V,QAFc,IAJ5D6J,EAAMgG,YAASpP,EACRwjB,QAAuBxjB,GAAW,GAMjD,GAAOsrB,EAAS,UAAY,UAAWA,GAAQ,GAK3C1a,GAAWC,EACZ,GC5Mc3R,GAKN,OAAO,SAAU+xB,GAC1B,OAAO,WAAiB,OAAOA,EAAKnyB,KAAMwC,UAAUqE,OAASrE,UAAU,QAAKtB,EAAW,CACzF,GANuBL,ICDvB,IAAIqG,GAAc9G,GAEdsC,GAAaC,UCFb4Q,GAAanT,GAEboN,GAAQ7N,KAAK6N,MAEb+oB,GAAY,SAAUvN,EAAOwN,GAC/B,IAAI3vB,EAASmiB,EAAMniB,OACf4vB,EAASjpB,GAAM3G,EAAS,GAC5B,OAAOA,EAAS,EAAI6vB,GAAc1N,EAAOwN,GAAa5C,GACpD5K,EACAuN,GAAUhjB,GAAWyV,EAAO,EAAGyN,GAASD,GACxCD,GAAUhjB,GAAWyV,EAAOyN,GAASD,GACrCA,EAEJ,EAEIE,GAAgB,SAAU1N,EAAOwN,GAKnC,IAJA,IAEIG,EAAS9K,EAFThlB,EAASmiB,EAAMniB,OACfmI,EAAI,EAGDA,EAAInI,GAAQ,CAGjB,IAFAglB,EAAI7c,EACJ2nB,EAAU3N,EAAMha,GACT6c,GAAK2K,EAAUxN,EAAM6C,EAAI,GAAI8K,GAAW,GAC7C3N,EAAM6C,GAAK7C,IAAQ6C,GAEjBA,IAAM7c,MAAKga,EAAM6C,GAAK8K,EAC3B,CAAC,OAAO3N,CACX,EAEI4K,GAAQ,SAAU5K,EAAO4N,EAAMC,EAAOL,GAMxC,IALA,IAAIM,EAAUF,EAAK/vB,OACfkwB,EAAUF,EAAMhwB,OAChBmwB,EAAS,EACTC,EAAS,EAEND,EAASF,GAAWG,EAASF,GAClC/N,EAAMgO,EAASC,GAAWD,EAASF,GAAWG,EAASF,EACnDP,EAAUI,EAAKI,GAASH,EAAMI,KAAY,EAAIL,EAAKI,KAAYH,EAAMI,KACrED,EAASF,EAAUF,EAAKI,KAAYH,EAAMI,KAC9C,OAAOjO,CACX,EAEAkO,GAAiBX,GCzCbY,GAFY/2B,EAEQqB,MAAM,mBAE9B21B,KAAmBD,KAAYA,GAAQ,GCFvCE,GAAiB,eAAex1B,KAFvBzB,GCELk3B,GAFYl3B,EAEOqB,MAAM,wBAE7B81B,KAAmBD,KAAWA,GAAO,GCJjC1d,GAAIxZ,GACJ8C,GAAcrC,EACdsG,GAAY/C,GACZtB,GAAW+B,EACXuJ,GAAoBrJ,GACpByyB,GLDa,SAAU5uB,EAAGtB,GAC5B,WAAYsB,EAAEtB,GAAI,MAAM,IAAI5E,GAAW,0BAA4BwE,GAAYI,GAAK,OAASJ,GAAY0B,GAC3G,EKAItF,GAAW6G,GACXzI,GAAQ0I,EACRqtB,GAAehkB,GACfkiB,GAAsBpd,GACtBmf,GAAK5jB,GACL6jB,GAAa3jB,GACb4jB,GAAK/d,GACLge,GAASvU,GAETzhB,GAAO,GACPi2B,GAAa50B,GAAYrB,GAAKk2B,MAC9B52B,GAAO+B,GAAYrB,GAAKV,MAGxB62B,GAAqBt2B,IAAM,WAC7BG,GAAKk2B,UAAK72B,EACZ,IAEI+2B,GAAgBv2B,IAAM,WACxBG,GAAKk2B,KAAK,KACZ,IAEIG,GAAgBvC,GAAoB,QAEpCwC,IAAez2B,IAAM,WAEvB,GAAIk2B,GAAI,OAAOA,GAAK,GACpB,KAAIF,IAAMA,GAAK,GAAf,CACA,GAAIC,GAAY,OAAO,EACvB,GAAIE,GAAQ,OAAOA,GAAS,IAE5B,IACIO,EAAMlK,EAAKztB,EAAOwN,EADlBlG,EAAS,GAIb,IAAKqwB,EAAO,GAAIA,EAAO,GAAIA,IAAQ,CAGjC,OAFAlK,EAAMxqB,OAAO20B,aAAaD,GAElBA,GACN,KAAK,GAAI,KAAK,GAAI,KAAK,GAAI,KAAK,GAAI33B,EAAQ,EAAG,MAC/C,KAAK,GAAI,KAAK,GAAIA,EAAQ,EAAG,MAC7B,QAASA,EAAQ,EAGnB,IAAKwN,EAAQ,EAAGA,EAAQ,GAAIA,IAC1BpM,GAAKV,KAAK,CAAE6oB,EAAGkE,EAAMjgB,EAAOqmB,EAAG7zB,GAElC,CAID,IAFAoB,GAAKk2B,MAAK,SAAUzxB,EAAG8T,GAAK,OAAOA,EAAEka,EAAIhuB,EAAEguB,CAAI,IAE1CrmB,EAAQ,EAAGA,EAAQpM,GAAKgF,OAAQoH,IACnCigB,EAAMrsB,GAAKoM,GAAO+b,EAAE9E,OAAO,GACvBnd,EAAOmd,OAAOnd,EAAOlB,OAAS,KAAOqnB,IAAKnmB,GAAUmmB,GAG1D,MAAkB,gBAAXnmB,CA7BkB,CA8B3B,IAeA6R,GAAE,CAAEtJ,OAAQ,QAASkB,OAAO,EAAMR,OAbrBgnB,KAAuBC,KAAkBC,KAAkBC,IAapB,CAClDJ,KAAM,SAAcvB,QACAt1B,IAAds1B,GAAyBrvB,GAAUqvB,GAEvC,IAAIxN,EAAQlmB,GAAS9C,MAErB,GAAIm4B,GAAa,YAAqBj3B,IAAds1B,EAA0BsB,GAAW9O,GAAS8O,GAAW9O,EAAOwN,GAExF,IAEI8B,EAAarqB,EAFbsqB,EAAQ,GACRC,EAAcpqB,GAAkB4a,GAGpC,IAAK/a,EAAQ,EAAGA,EAAQuqB,EAAavqB,IAC/BA,KAAS+a,GAAO7nB,GAAKo3B,EAAOvP,EAAM/a,IAQxC,IALAwpB,GAAac,EA3BI,SAAU/B,GAC7B,OAAO,SAAU9oB,EAAG+qB,GAClB,YAAUv3B,IAANu3B,GAAyB,OACnBv3B,IAANwM,EAAwB,OACVxM,IAAds1B,GAAiCA,EAAU9oB,EAAG+qB,IAAM,EACjDn1B,GAASoK,GAAKpK,GAASm1B,GAAK,GAAK,CAC5C,CACA,CAoBwBC,CAAelC,IAEnC8B,EAAclqB,GAAkBmqB,GAChCtqB,EAAQ,EAEDA,EAAQqqB,GAAatP,EAAM/a,GAASsqB,EAAMtqB,KACjD,KAAOA,EAAQuqB,GAAahB,GAAsBxO,EAAO/a,KAEzD,OAAO+a,CACR,ICvGH,aAAI2P,GAAWv4B,GAAwC+sB,QAOvDyL,GAN0B/3B,GAEc,WAOpC,GAAGssB,QAH2B,SAAiBJ,GACjD,OAAO4L,GAAS34B,KAAM+sB,EAAYvqB,UAAUqE,OAAS,EAAIrE,UAAU,QAAKtB,EAE1E,ECVItB,GAASQ,EACT6nB,GAAepnB,GACfknB,GAAwB3jB,GACxB+oB,GAAUtoB,GACVgF,GAA8B9E,GAE9BqjB,GAAkB,SAAUC,GAE9B,GAAIA,GAAuBA,EAAoB8E,UAAYA,GAAS,IAClEtjB,GAA4Bwe,EAAqB,UAAW8E,GAC7D,CAAC,MAAOvsB,GACPynB,EAAoB8E,QAAUA,EAC/B,CACH,EAEA,IAAK,IAAI7E,MAAmBL,GACtBA,GAAaK,KACfF,GAAgBxoB,GAAO0oB,KAAoB1oB,GAAO0oB,IAAiBpmB,WCXjE,SAAU22B,GAAWrT,GACzB,MAAoB,QAAbA,GAAmC,WAAbA,CAC/B,CAEM,SAAUsT,GAAkBC,GAChC,OAAOA,EAAQ/G,GAASgH,MAAQD,EAAQ/G,GAASiH,MACnD,CAEM,SAAUC,GAAgBH,GAC9B,OAAOA,EAAQ/G,GAASmH,KAAOJ,EAAQ/G,GAASoH,OAClD,CDKAhR,GAAgBL,IErB+D,UAgB1DsR,GAAiB,WASpC,SAAAA,EAAY9G,EAAsB+G,GAA4B9G,OAAA6G,gBAC5Dr5B,KAAKuyB,SAAWA,EAChBvyB,KAAKs5B,cAAgBA,EACrBt5B,KAAKuwB,WAAa,IAAIgJ,IACtBv5B,KAAKw5B,gBAAkBzH,GAAgB4B,cACzC,CAkEC,OAlEAhB,EAAA0G,EAAA,CAAA,CAAA74B,IAAA,MAAAC,MAED,SAAIozB,GACF,OAAO7zB,KAAKuwB,WAAWvqB,IAAI6tB,EAC7B,GAAC,CAAArzB,IAAA,SAAAC,MAED,SAAO8vB,EAA8BiJ,GAAgC,IAAA3G,EAAA7yB,KACnEy5B,EAAwCz5B,KAAKuyB,SAAS7mB,QAAQA,QAAtDguB,EAAmBD,EAAnBC,oBAAqBliB,EAAMiiB,EAANjiB,OAE7BxX,KAAKw5B,gBAAkBA,EACvB,IAAMG,EAAyB,CAC7BC,MAAO,EACPC,OAAQ,GAENC,EAAe,EACfC,EACFP,IAAoBzH,GAAgB4B,gBAAkB,EAAI,EACpD5pB,EAASwmB,EAATxmB,KAgDR,MA/CkD,SAA9C/J,KAAKuyB,SAAS7mB,QAAQA,QAAQ8L,OAAOugB,OACvChuB,EAAKiwB,UACLD,IAAiB,GAGnBxJ,EAAW0J,cAAc9M,SAAQ,SAAC0G,GAChCiG,GACEjH,EAAKtC,WAAWvqB,IAAI6tB,GAClB6F,EAAsB,SAAW,QAEvC,IACAnJ,EAAW0J,cAAc9M,SAAQ,SAAC0G,GAChC,IAAMqG,EAAOrH,EAAKtC,WAAWvqB,IAAI6tB,GACjChB,EAAKtC,WAAWjnB,IAAIuqB,EAASvzB,OAAAutB,OAAAvtB,OAAAutB,OAAA,GACxBqM,GAAI,CACPxsB,EAAGgsB,EAAsBQ,EAAKxsB,EAAIwsB,EAAKxsB,EAAIosB,EAAeC,EAC1DtB,EAAGiB,EAAsBQ,EAAKzB,EAAIqB,EAAeC,EAAeG,EAAKzB,IAEzE,IAEA1uB,EAAKojB,SAAQ,SAAC0G,GACZ,IAAMsG,EAAItQ,GAAAgJ,EAAIuH,GAAA,IAAAC,SAAJxH,EAAegB,GACnByG,EAAIzQ,GAAAgJ,EAAIuH,GAAA,IAAAG,SAAJ1H,EAAgBgB,GACtB6F,GACFC,EAAWE,QAAUS,EACrBX,EAAWC,MAAQj6B,KAAKmO,IAAIqsB,EAAGR,EAAWC,SAE1CD,EAAWC,OAASO,EACpBR,EAAWE,OAASl6B,KAAKmO,IAAIwsB,EAAGX,EAAWE,SAG7C,IAAMnsB,EAAIisB,EAAWC,MAAQO,EACvB1B,EAAIkB,EAAWE,OAASS,EAE9BzH,EAAKtC,WAAWjnB,IAAIuqB,EAASvzB,OAAAutB,OAAAvtB,OAAAutB,OAAA,CAAA,EACxBgF,EAAKtC,WAAWvqB,IAAI6tB,IAAW,CAClCnmB,EAAGgsB,EAAsB,EAAIhsB,EAC7B+qB,EAAGiB,EAAsBjB,EAAI,EAC7B+B,MAAOd,EAAsBhsB,EAAIA,EAAIosB,EAAeC,EACpDU,MAAOf,EAAsBjB,EAAIqB,EAAeC,EAAetB,EAC/DmB,MAAOO,EACPN,OAAQS,EACRI,YAAaP,GAAKT,EAAsB,EAAIliB,EAAOmjB,QACnDC,aAAcN,GAAMZ,EAA0BliB,EAAOmjB,OAAX,KAE9C,IAEOhB,CACT,KAACN,CAAA,CAhFmC,8BAyF1BhF,GACR,IAAAwG,EAGE76B,KAAKuyB,SAAS7mB,QAAQA,QAFtB8L,EAAMqjB,EAANrjB,OAAQ2c,EAAS0G,EAAT1G,UAAWzmB,EAACmtB,EAADntB,EAAGgsB,EAAmBmB,EAAnBnB,oBAGlBoB,EAAe96B,KAAKuyB,SAASU,mBAChCjtB,IAAImuB,EAAUrpB,MACdgwB,aAAazG,GAEV0G,GACH5G,EAAUyF,MAAQzF,EAAUwG,QAAUG,EAAe3G,EAAUwG,OAElE,OACE7B,GAAkBthB,EAAOuhB,SACzBrrB,EAAEstB,4BACDtB,EAAsB,EAAIliB,EAAOmjB,QAClCI,CAEJ,cASW1G,GACT,IAAA4G,EAGEj7B,KAAKuyB,SAAS7mB,QAAQA,QAFtB8L,EAAMyjB,EAANzjB,OAAQ2c,EAAS8G,EAAT9G,UAAWzmB,EAACutB,EAADvtB,EAAGgsB,EAAmBuB,EAAnBvB,oBAGlBwB,EAAYl7B,KAAKuyB,SAASU,mBAC7BjtB,IAAImuB,EAAUrpB,MACdowB,UAAU7G,GAEP8G,GACHhH,EAAU0F,OAAS1F,EAAUwG,QAAUO,EAAY/G,EAAUwG,OAEhE,OACEzB,GAAgB1hB,EAAOuhB,SACvBoC,GACCzB,EAAsBliB,EAAOmjB,OAAS,GACvCjtB,EAAE0tB,yBAEN,ECjJF,IAAMC,GAAmB,aAEJC,GAAa,WAShC,SAAAA,EAAY/I,GAAoBC,OAAA8I,gBAC9Bt7B,KAAKuyB,SAAWA,EAChBvyB,KAAKu7B,YAAc,IAAIlC,GAAkB9G,EAAUvyB,MACnDA,KAAKw7B,KAAO,KAIZx7B,KAAK25B,WAAa,CAChBC,MAAO,EACPC,OAAQ,EAEZ,CAkEC,OAlEAlH,EAAA2I,EAAA,CAAA,CAAA96B,IAAA,QAAAC,MAED,SAAM+4B,EAAkCiC,GAAa,IAAA5I,EAAA7yB,KAC3C07B,EAAsB17B,KAAKuyB,SAAS7mB,QAAQA,QAA5CgwB,kBACFC,EAAIF,EAASG,aAAaC,SAASH,GACnCxB,EAAOl6B,KAAKu7B,YAElBv7B,KAAK25B,WAAaO,EAAK4B,OACrB97B,KAAKuyB,SAASe,iBACdkG,GAGF,IAAMuC,EAA+B,GAqDrC,OAnDA/7B,KAAKw7B,KAAOC,EACTO,UAAUX,IACVvrB,KAAK9P,KAAKuyB,SAASe,iBAAiBvpB,MAAM,SAACsqB,GAAY,OAAKA,CAAC,IAC7DhpB,MACC,SAACqM,GAAU,OAAKA,EACbukB,OAAO,OACPC,KAAK,KAAK,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAImG,KAAK,IAC9C0B,KAAK,KAAK,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIoG,KAAK,IAC9CyB,KAAK,SAAS,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIqG,WAAW,IACxDwB,KAAK,UAAU,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIuG,YAAY,IAC1DsB,KAAK,SAAS,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAmBwB,EAAE,IACrDlyB,MAAK,SAACg6B,GAAmB,OAAKA,EAC5BF,OAAO,QACPC,KAAK,SAAS,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIqG,WAAW,IACxDwB,KAAK,UAAU,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIuG,YAAY,IAC1DsB,KAAK,WAAO/sB,OAAKksB,GAAiBlwB,MAAM,UAAQ,IAClDhJ,MAAK,SAACg6B,GAAmB,OAAKJ,EAAS56B,KACtCg7B,EACGP,WAAWD,GACXO,KAAK,KAAK,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAI3mB,CAAC,IAC1CwuB,KAAK,KAAK,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIoE,CAAC,IAC1C/P,SACH,IACJ,SAACoT,GAAW,OAAKA,EACd35B,MAAK,SAACi6B,GAAoB,OAAKL,EAAS56B,KACvCi7B,EACGR,WAAWD,GACXO,KAAK,KAAK,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAI3mB,CAAC,IAC1CwuB,KAAK,KAAK,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIoE,CAAC,IAC1CyD,KAAK,SAAS,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIqG,WAAW,IACxDwB,KAAK,UAAU,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIuG,YAAY,IAC1DlS,MACJ,IACAvmB,MAAK,SAACi6B,GAAoB,OAAKL,EAAS56B,KACvCi7B,EACGJ,UAAS,GAAA7sB,OAAIksB,GAAgB,QAC7BO,WAAWD,GACXO,KAAK,SAAS,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIqG,WAAW,IACxDwB,KAAK,UAAU,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIuG,YAAY,IAC1DlS,SACH,IACJ,SAACjR,GAAS,OAAKA,EAAKtV,MAAK,SAACk6B,GAAkB,OAAKN,EAAS56B,KACxDk7B,EACGT,WAAWD,GACXO,KAAK,KAAK,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAI3mB,CAAC,IAC1CwuB,KAAK,KAAK,SAAC7H,GAAY,OAAK6F,EAAKl0B,IAAIquB,GAAIoE,CAAE,IAC3C6D,SACA5T,aAIFqT,CACT,KAACT,CAAA,CAtF+B,8BAwFlBjH,GACZ,IAAIkI,EAAYlB,GAAiBlwB,MAAM,GACjCqxB,EAASx8B,KAAKuyB,SAASyB,WAAWb,KAAKkB,GAE7C,OAAQr0B,KAAKuyB,SAAS7mB,QAAQA,QAAQ8L,OAAO1M,MAC3C,IAAK,OACHyxB,GAAS,MAAAptB,OAAUqtB,EAAOC,QAC1B,MACF,IAAK,MACHF,SAASptB,OAAUqtB,EAAOrJ,OAAM,QAAAhkB,OAAOqtB,EAAOE,OAAO,KAAO,GAC5D,MACF,IAAK,OACHH,GAAS,MAAAptB,OAAUqtB,EAAOG,QAC1B,MACF,IAAK,QACHJ,GAAS,MAAAptB,OAAUqtB,EAAOI,QAAU,GACpC,MACF,IAAK,OACHL,GAAS,MAAAptB,OAAUqtB,EAAOK,QAI9B,OAAON,CACT,ECtHF,IACIO,GAAYj8B,GAAuC+N,SAEnD2T,GAAmB1d,GAHfzE,GAaN,CAAEkQ,OAAQ,QAASkB,OAAO,EAAMR,OAXtB5M,GAIiB,WAE3B,OAAQmN,MAAM,GAAG3C,UACnB,KAI8D,CAC5DA,SAAU,SAAkBH,GAC1B,OAAOquB,GAAU98B,KAAMyO,EAAIjM,UAAUqE,OAAS,EAAIrE,UAAU,QAAKtB,EAClE,IAIHqhB,GAAiB,YCpBjB,IACIwa,GAAUl8B,GAAwCwsB,OAD9CjtB,GASN,CAAEkQ,OAAQ,QAASkB,OAAO,EAAMR,QAPC5M,GAEoB,WAKW,CAChEipB,OAAQ,SAAgBN,GACtB,OAAOgQ,GAAQ/8B,KAAM+sB,EAAYvqB,UAAUqE,OAAS,EAAIrE,UAAU,QAAKtB,EACxE,ICZH,gBAAIsF,GAAWpG,GACXyd,GAAgBhd,GCDhBiB,GAAO1B,GACP+B,GAAOtB,GACPiC,GAAWsB,EACX44B,GDCa,SAAUr4B,EAAUrC,EAAI7B,EAAOgjB,GAC9C,IACE,OAAOA,EAAUnhB,EAAGkE,GAAS/F,GAAO,GAAIA,EAAM,IAAM6B,EAAG7B,EACxD,CAAC,MAAOG,GACPid,GAAclZ,EAAU,QAAS/D,EAClC,CACH,ECNI4c,GAAwBzY,GACxB+N,GAAgB7N,GAChBmJ,GAAoBjE,GACpB0e,GAAiBze,GACjBsT,GAAcjK,GACdgK,GAAoBlF,GAEpB8Q,GAAS9X,MCVT4N,GDca,SAAc8d,GAC7B,IAAIr0B,EAAI9F,GAASm6B,GACbC,EAAiBpqB,GAAc9S,MAC/ByoB,EAAkBjmB,UAAUqE,OAC5Bs2B,EAAQ1U,EAAkB,EAAIjmB,UAAU,QAAKtB,EAC7CkzB,OAAoBlzB,IAAVi8B,EACV/I,IAAS+I,EAAQr7B,GAAKq7B,EAAO1U,EAAkB,EAAIjmB,UAAU,QAAKtB,IACtE,IAEI2F,EAAQkB,EAAQyW,EAAM7Z,EAAU0R,EAAM5V,EAFtCmd,EAAiBH,GAAkB7U,GACnCqF,EAAQ,EAGZ,IAAI2P,GAAoB5d,OAASqpB,IAAU7L,GAAsBI,GAW/D,IAFA/W,EAASuH,GAAkBxF,GAC3Bb,EAASm1B,EAAiB,IAAIl9B,KAAK6G,GAAUwiB,GAAOxiB,GAC9CA,EAASoH,EAAOA,IACpBxN,EAAQ2zB,EAAU+I,EAAMv0B,EAAEqF,GAAQA,GAASrF,EAAEqF,GAC7C4a,GAAe9gB,EAAQkG,EAAOxN,QAThC,IAFA4V,GADA1R,EAAW+Y,GAAY9U,EAAGgV,IACVvH,KAChBtO,EAASm1B,EAAiB,IAAIl9B,KAAS,KAC/Bwe,EAAOrc,GAAKkU,EAAM1R,IAAWiY,KAAM3O,IACzCxN,EAAQ2zB,EAAU4I,GAA6Br4B,EAAUw4B,EAAO,CAAC3e,EAAK/d,MAAOwN,IAAQ,GAAQuQ,EAAK/d,MAClGooB,GAAe9gB,EAAQkG,EAAOxN,GAWlC,OADAsH,EAAOlB,OAASoH,EACTlG,CACT,EC5CQ3H,GAWN,CAAEkQ,OAAQ,QAASQ,MAAM,EAAME,QATC5M,IAEqB,SAAUia,GAE/D9M,MAAM4N,KAAKd,EACb,KAIgE,CAC9Dc,KAAMA,KCFD,yBAAMie,GAA4C,CACvDP,KAAM,OACND,MAAO,OACPD,KAAM,iBACNU,KAAM,SACNC,MAAO,SACPC,IAAK,SACLd,KAAM,QACNe,OAAQ,SAMWC,GAAgB,WAanC,SAAAA,EACEzJ,EACA0J,EACA3T,EACA2J,GAC2B,IAA3BiK,EAAAn7B,UAAAqE,OAAA,QAAA3F,IAAAsB,UAAA,IAAAA,UAAA,GAKA,GAL2BgwB,OAAAiL,gBAE3Bz9B,KAAKuwB,WAAa,IAAIgJ,IACtBv5B,KAAKg0B,WAAaA,EAEd0J,GAAY3T,GAAS2J,EAAO,CAC9B,IAAMkK,EAAK59B,KAAKg0B,WACbC,UAAUyJ,EAAU3T,EAAO2J,EAAOiK,GAClCvQ,KAAI,SAACiH,GAAY,OAAKjI,GAAUiI,MAGnCr0B,KAAKuwB,WAAa,IAAIgJ,IAAIqE,EAC5B,CAEA59B,KAAK+N,IAAM,EACX/N,KAAK8N,IAAM,EACX9N,KAAK+J,KAAO,GACZ/J,KAAKi6B,cAAgB,GAEjBj6B,KAAKuwB,WAAW9K,KAAO,GACzBoE,GAAA7pB,KAAI69B,GAAA,IAAAC,IAAJ37B,KAAAnC,KAEJ,CAyNC,OAzNA2yB,EAAA8K,EAAA,CAAA,CAAAj9B,IAAA,MAAAC,MAED,SAAID,GACF,OAAOR,KAAKuwB,WAAWhnB,IAAI/I,EAC7B,GAAC,CAAAA,IAAA,MAAAC,MAED,SAAID,GACF,OAAOR,KAAKuwB,WAAWvqB,IAAIxF,EAC7B,GAAC,CAAAA,IAAA,UAAAC,MAED,SAAQs9B,GACN,OAAO/9B,KAAKuwB,WAAWpD,QAAQ4Q,EACjC,GAAC,CAAAv9B,IAAA,KAAAC,MAED,SAAGwN,GACD,OAAOjO,KAAK+J,KAAKkE,EACnB,GAAC,CAAAzN,IAAA,QAAAC,MAED,SAAMyyB,EAAqBG,GAAmB,IAAAR,EAAA7yB,KAe5C,OAdIkzB,GAAWlzB,KAAK+N,IAAOmlB,GACzBlzB,KAAK+J,KACFsjB,QAAO,SAAC7sB,GAAG,OAAKA,EAAM0yB,CAAO,IAC7B/F,SAAQ,SAACkH,GAAC,OAAKxB,EAAKtC,WAAWuB,OAAOuC,MAGvChB,GAAWrzB,KAAK8N,IAAOulB,GACzBrzB,KAAK+J,KACFsjB,QAAO,SAAC7sB,GAAG,OAAKA,EAAM6yB,CAAO,IAC7BlG,SAAQ,SAACkH,GAAC,OAAKxB,EAAKtC,WAAWuB,OAAOuC,MAG3CxK,GAAA7pB,KAAI69B,GAAA,IAAAC,IAAJ37B,KAAAnC,MAEOA,IACT,GAAC,CAAAQ,IAAA,QAAAC,MAED,SACEu9B,EACAC,EACAC,GAA6B,IAAAC,EAAAn+B,KAE7BA,KAAKi6B,cAAgB,GAErB+D,EAAcj0B,KAAKojB,SAAQ,SAAC0G,EAAW5lB,GACrC,IAAIkwB,EAAK50B,IAAIsqB,GAAb,CAIA,GAAIsK,EAAK5N,WAAW9K,MAAQwY,EAAO,CACjC,IAAIG,EAAcD,EAAKrwB,IAEnB+lB,EAAYsK,EAAKrwB,MACnBswB,EAAcD,EAAKpwB,KAGjBqwB,GAAeD,EAAK5N,WAAWuB,OAAOsM,IACxCD,EAAKlE,cAAc94B,KAAKi9B,EAE5B,CACAD,EAAK5N,WAAWjnB,IAAIuqB,EAAWqK,EAAoBrK,EAAW5lB,IAC9D4b,GAAAsU,EAAIN,GAAA,IAAAC,IAAJ37B,KAAAg8B,EAdA,CAeF,IACAn+B,KAAKi6B,cAAgBj6B,KAAKi6B,cAAclC,MAAK,SAACzxB,EAAG8T,GAAC,OAAK9T,EAAI8T,IAC7D,GAAC,CAAA5Z,IAAA,QAAAC,MAED,WAAsD,IAAA49B,EAAAr+B,KAAhDi+B,EAAAz7B,UAAAqE,OAAA,QAAA3F,IAAAsB,UAAA,GAAAA,UAAA,GAAgB,EAAG87B,6DACnBt+B,KAAK+J,KAAKlD,OAASo3B,KACAK,EACnBt+B,KAAK+J,KAAKoB,MAAM,GAAI8yB,GACpBj+B,KAAK+J,KAAKoB,MAAM8yB,IAEL9Q,SAAQ,SAAC3sB,GACpB69B,EAAK9N,WAAWuB,OAAOtxB,EACzB,IAEAqpB,GAAA7pB,KAAI69B,GAAA,IAAAC,IAAJ37B,KAAAnC,OAGF,OAAOA,IACT,GAAC,CAAAQ,IAAA,OAAAC,MAED,SACEqP,EAAkByuB,EAYlBC,GAA+B,IAAAC,EAAAz+B,KAV7B0N,EAAC6wB,EAAD7wB,EACA+qB,EAAC8F,EAAD9F,EACAiG,EAAMH,EAANG,OACAnK,EAAYgK,EAAZhK,aASIoK,EAAiC3+B,KAAK4+B,aAC1C9uB,EACApC,EACA8wB,GAGFx+B,KAAK+J,KAAKojB,SAAQ,SAAC0G,GACjB,IAAMgL,EAAUF,EAAe34B,IAAI6tB,IAAc,CAAA,EACjDhK,GAAA4U,EAAIZ,GAAA,IAAAiB,IAAJ38B,KAAAs8B,EAAyB5K,EAAWgL,EAASpG,EAAGiG,EAAQnK,EAC1D,GACF,GAAC,CAAA/zB,IAAA,eAAAC,MAsBD,SACEqP,EACApC,EACA8wB,GAA+B,IAAAO,EAAA/+B,KAEzBg/B,EAA0B,IAAIzF,IAC9B0F,EAAqD,IAAI1F,IAoB/D,OAnBAv5B,KAAK+J,KAAKojB,SAAQ,SAAC0G,GACjBkL,EAAK/4B,IAAI6tB,GAAY1G,SAAQ,SAACgH,GAC5B8K,EAAwB31B,IAAI6qB,EAAUwH,EAAG9H,EAC3C,GACF,IAEA/jB,EAAKqd,SAAQ,SAACkH,GACZ,IAAM6K,EAAYH,EAAKI,iBAAiB9K,EAAG3mB,EAAG8wB,GAE9C,GAAIS,EAAwB11B,IAAI21B,GAAY,CAC1C,IAAMrL,EAAYoL,EAAwBj5B,IAAIk5B,GACxCL,EAAUG,EAAQh5B,IAAI6tB,IAAc,CAAA,EAC1CgL,EAAQK,KAARL,EAAQK,GAAe,IACvBL,EAAQK,GAAW/9B,KAAKkzB,GAExB2K,EAAQ11B,IAAIuqB,EAAWgL,EACzB,CACF,IAEOG,CACT,GAOA,CAAAx+B,IAAA,cAAAC,MACA,SACEif,EACA0f,GAEA,IAAMC,EAAgB3f,EAAO2N,QAAO,SAAC1f,GAAC,OAAW,OAANA,KAE3C,GAAuB,iBAAZyxB,EAAsB,CAC/B,GAAIC,EAAc9R,OAAM,SAAC5f,GAAC,MAAkB,iBAANA,CAAc,IAClD,OAAQyxB,GACN,IAAK,MACH,OAAQC,EAA2BC,QAAO,SAACh5B,EAAG8T,GAAC,OAAK9T,EAAI8T,CAAC,GAAE,GAC7D,IAAK,QACH,OAAOilB,EAAcx4B,OACvB,IAAK,MACH,OAAOlH,KAAKoO,IAAGxL,MAAR5C,KAAI4/B,EAASF,KAA+B,KACrD,IAAK,MACH,OAAO1/B,KAAKmO,IAAGvL,MAAR5C,KAAI4/B,EAASF,KAA+B,KACrD,IAAK,UACH,OAAOA,EAAcx4B,OAAS,EAC3Bw4B,EAA2BC,QAAO,SAACh5B,EAAG8T,GAAC,OAAK9T,EAAI8T,CAAC,GAAE,GAChDilB,EAAcx4B,OAClB,KACJ,QACE,OAAO,KAIb,MACO,UADCu4B,EAEGC,EAAcx4B,OAEd,IAEb,CAAO,MAAuB,mBAAZu4B,EACTA,EAAQC,GAGV,IACT,GAEA,CAAA7+B,IAAA,mBAAAC,MACA,SACE++B,EACA9xB,EACA+xB,GAEA,IAAIP,EACW,mBAANxxB,EAAmBA,EAAE8xB,GAASA,EAAM9xB,GAM7C,MAJyB,iBAAdwxB,IACTA,GAAa,IAAIrK,KAAKqK,IAGjBO,EAAYP,EACrB,KAACzB,CAAA,CAjQkC,GAqJjCI,GAAA,IAAA7I,QAAA8J,GAAA,SAAAjL,EACAgL,EACApG,EACAiG,EACAnK,GAAyC,IAAAmL,EAAA1/B,KAEzCA,KAAKgG,IAAI6tB,GAAY1G,SAAQ,SAACgH,EAAsBlmB,GAClD,IAAIxN,EAAmB8zB,EACnBsK,EAAQ98B,eAAeoyB,EAAUwH,KACnCl7B,EAAQi/B,EAAKC,YACX9V,GAAA6V,EAAmB7B,GAAA,IAAA+B,IAAAz9B,KAAnBu9B,EAAoBb,EAAQ1K,EAAUwH,GAAIlD,GAC1CiG,IAIJgB,EAAK15B,IAAI6tB,GAAY5lB,GAAOqmB,EAAI7zB,CAClC,GACF,EAACm/B,GAAA,SAgCc9vB,EAAoB2oB,GACjC,OAAO3oB,EAAKsd,KAAI,SAACiH,GAAC,MAA8B,mBAANoE,EAAmBA,EAAEpE,GAAKA,EAAEoE,EAAE,GAC1E,EAACqF,GAAA,WA4DC99B,KAAK+J,KAAOwH,MAAM4N,KAAKnf,KAAKuwB,WAAWxmB,QACpCqjB,KAAI,SAACiH,GAAM,OAAKwL,SAASxL,EAAG,GAAG,IAC/B0D,MAAK,SAACzxB,EAAG8T,GAAC,OAAK9T,EAAI8T,KAEtB,IAAQrQ,EAAS/J,KAAT+J,KAKR,OAHA/J,KAAK+N,IAAMhE,EAAK,GAChB/J,KAAK8N,IAAM/D,EAAKA,EAAKlD,OAAS,GAEvB7G,KAAK+J,IACd,EC5RF,IAAMsxB,GAAmB,kBAEJyE,GAAkB,WAGrC,SAAAA,EAAYvN,GAAoBC,OAAAsN,gBAC9B9/B,KAAKuyB,SAAWA,CAClB,CA4CC,OA5CAI,EAAAmN,EAAA,CAAA,CAAAt/B,IAAA,QAAAC,MAED,SAAM+6B,GAAS,IAAA3I,EAAA7yB,KACby5B,EAAwBz5B,KAAKuyB,SAAS7mB,QAAQA,QAAQ8L,OAA9CuoB,EAAKtG,EAALsG,MAAOj1B,EAAI2uB,EAAJ3uB,KACPkpB,EAAeh0B,KAAKuyB,SAApByB,WACJ0I,EAASqD,EAAMC,KACJ,OAAXtD,GAA8B,KAAXA,SAID,IAAXA,IACTA,EAASU,GAActyB,IAGzB0wB,EACGQ,UAAUX,IACVvrB,MACC,SAACukB,GAAY,MAAK,CAACA,EAAE,IACrB,SAACA,GAAY,OAAKA,CAAC,IAEpBhpB,MACC,SAACqM,GAAU,OAAKA,EACbukB,OAAO,QACPC,KAAK,QAASb,GAAiBlwB,MAAM,IACrC+wB,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAWwB,EAAE,IACzC6H,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAWwB,EAAE,IACzC6H,KAAK,cAAe6D,EAAME,WAC1B/D,KAAK,qBAAqB,WAAA,OAAMrS,GAAAgJ,EAAuBqN,GAAA,IAAAC,IAAAh+B,KAAvB0wB,EAA0B,IAC1DmN,MAAK,SAAC3L,EAAcrlB,EAAWoxB,GAAY,OAE1CpM,EAAW0I,OAAOrI,EAAGqI,EAAS0D,EAAMpxB,GAAG,IACxC7M,MAAK,SAACk+B,GAAc,OAAKxW,GAAAgJ,EAAIqN,GAAA,IAAAI,SAAJzN,EAAmBwN,KAC/C,IAAA,SAACvE,GACCA,EACGI,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAWwB,EAAE,IACzC6H,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAWwB,EAAE,IACzC6H,KAAK,cAAe6D,EAAME,WAC1B/D,KAAK,qBAAqB,WAAA,OAAMrS,GAAAgJ,EAAuBqN,GAAA,IAAAC,IAAAh+B,KAAvB0wB,EAA0B,IAC1DmN,MAAK,SAAC3L,EAAcrlB,EAAWoxB,GAAY,OAE1CpM,EAAW0I,OAAOrI,EAAGqI,EAAS0D,EAAMpxB,GAAG,IACxC7M,MAAK,SAACk+B,GAAc,OAAKxW,GAAAgJ,EAAIqN,GAAA,IAAAI,SAAJzN,EAAmBwN,KACjD,IAEN,KAACP,CAAA,CAjDoC,gCAoDnC,IAAAjF,EAA6B76B,KAAKuyB,SAAS7mB,QAAQA,QAAQ8L,OAAOuoB,MAA1Dva,EAAQqV,EAARrV,SAAU+a,EAAM1F,EAAN0F,OAElB,OAAI1H,GAAWrT,GACN,SAIK,SAAX+a,GAAkC,SAAb/a,GACV,UAAX+a,GAAmC,UAAb/a,EAEhB,SAGF,SACT,cAEM6O,GACJ,IAAA4G,EAGIj7B,KAAKuyB,SAAS7mB,QAAQA,QAAQ8L,OAFhCuhB,EAAOkC,EAAPlC,QAAOyH,EAAAvF,EACP8E,MAASva,EAAQgb,EAARhb,SAAUya,EAASO,EAATP,UAAWQ,EAAMD,EAANC,OAExBzF,EAA+Bh7B,KAAKuyB,SAAS7mB,QAAQA,QAAQgC,EAA7DstB,2BAEJttB,EAAIqrB,EAAQ/G,GAASgH,MAsBzB,MApBiB,UAAbxT,IACF9X,GAAKmc,GAAA7pB,KAAIkgC,GAAA,IAAAQ,SAAJ1gC,KAA2Bq0B,IAGhB,WAAd4L,IACE,CAAC,MAAO,UAAUrxB,SAAS4W,GAC7B9X,GAAKmc,GAAA7pB,KAA0BkgC,GAAA,IAAAQ,IAAAv+B,KAA1BnC,KAA2Bq0B,GAAK,EAErC3mB,GAAKstB,EAA6B,GAIpB,QAAdiF,IACEpH,GAAWrT,GACb9X,GAAKmc,GAAA7pB,KAAIkgC,GAAA,IAAAQ,SAAJ1gC,KAA2Bq0B,GAEhC3mB,GAAKstB,GAIFttB,EAAI+yB,EAAO/yB,CACpB,cAEM2mB,GACJ,IAAAsM,EAMI3gC,KAAKuyB,SAAS7mB,QAAQA,QAAOk1B,EAAAD,EAL/BnpB,OAAMqpB,EAAAD,EACJb,MAASva,EAAQqb,EAARrb,SAAUib,EAAMI,EAANJ,OACnB1H,EAAO6H,EAAP7H,QAEFrrB,EAACizB,EAADjzB,EAGE+qB,EAAIM,EAAQ/G,GAASmH,KAAOzrB,EAAE0tB,0BAA4B,EAM9D,MAJiB,WAAb5V,IACFiT,GAAK5O,GAAA7pB,KAAIkgC,GAAA,IAAAY,SAAJ9gC,KAA4Bq0B,IAG5BoE,EAAIgI,EAAOhI,CACpB,cAEsBpE,GACpB,IAAA0M,EAGI/gC,KAAKuyB,SAAS7mB,QAAQA,QAFdqtB,EAAOgI,EAAjBvpB,OAAUuhB,QACLiC,EAA0B+F,EAA/BrzB,EAAKstB,2BAKP,OAFEh7B,KAAKuyB,SAASyO,gBAAgBC,wBAAwB3H,cADhDiC,YAIMv1B,IAAIquB,GAAIqG,YACpBM,EACAlC,GAAkBC,EAEtB,cAEuB1E,GACrB,IAAA6M,EAGIlhC,KAAKuyB,SAAS7mB,QAAQA,QAFnB0vB,EAAyB8F,EAA9BxzB,EAAK0tB,0BACKrC,EAAOmI,EAAjB1pB,OAAUuhB,QAKZ,OAFE/4B,KAAKuyB,SAASyO,gBAAgBC,wBAAwB3H,cADhDiC,YAIMv1B,IAAIquB,GAAIuG,aACpBQ,EACAlC,GAAgBH,EAEpB,cAEcsH,GAAc,IAAAlC,EAAAn+B,KAC1BmhC,EAKInhC,KAAKuyB,SAAS7mB,QAAQA,QAAO01B,EAAAD,EAJ/B3pB,OACEuoB,MAASQ,EAAMa,EAANb,OAAQN,EAASmB,EAATnB,UAAWza,EAAQ4b,EAAR5b,SAI1B6b,EAFHF,EAADzzB,EAEmBstB,2BAErB,OAAQuF,GAEN,IAAK,QACHF,EAAUnE,KAAK,aAAa,SAAC7H,GAC3B,IAAMiN,EAAczX,GAAAsU,EAAI+B,GAAA,IAAAQ,SAAJvC,EAA2B9J,GACzCkN,EAAe1X,GAAAsU,EAAI+B,GAAA,IAAAY,SAAJ3C,EAA4B9J,GAC3CmN,EAAI,CAAAryB,cAAAA,OACmB,UAAbqW,EAAuB8b,EAAcD,EACpD,SAED,OAAQ7b,GACN,IAAK,QACe,WAAdya,EACFuB,EAAErgC,KAAIgO,aAAAA,OAAcoyB,EAAe,EAAIF,EAAa,QAC7B,QAAdpB,GACTuB,EAAErgC,KAAIgO,aAAAA,OAAcoyB,EAAeF,EAAU,MAE/C,MACF,IAAK,OACe,UAAdpB,EACFuB,EAAErgC,KAAI,aAAAgO,OAAckyB,QACG,WAAdpB,EACTuB,EAAErgC,KAAIgO,aAAAA,OAAckyB,EAAa,EAAIE,EAAe,QAC7B,QAAdtB,GACTuB,EAAErgC,KAAI,aAAAgO,OAAcoyB,QAM1B,OAAOC,EAAEn2B,KAAK,IAChB,IACA,MAEF,IAAK,OACHg1B,EAAUnE,KAAK,aAAa,SAAC7H,GAC3B,IAAMiN,EAAczX,GAAAsU,EAAI+B,GAAA,IAAAQ,SAAJvC,EAA2B9J,GACzCkN,EAAe1X,GAAAsU,EAAI+B,GAAA,IAAAY,SAAJ3C,EAA4B9J,GAC3CmN,EAAI,CAAAryB,eAAAA,OAEO,UAAbqW,EAAuB8b,EAAcD,EAExC,SAED,OAAQ7b,GACN,IAAK,QACe,UAAdya,EACFuB,EAAErgC,KAAI,cAAAgO,OAAeoyB,QACE,WAAdtB,EACTuB,EAAErgC,KAAIgO,cAAAA,OAAeoyB,EAAe,EAAIF,EAAa,QAC9B,QAAdpB,GACTuB,EAAErgC,KAAI,cAAAgO,OAAekyB,QAEvB,MACF,IAAK,OACe,UAAdpB,EACFuB,EAAErgC,KAAIgO,aAAAA,OAAckyB,EAAaE,EAAY,MACtB,WAAdtB,GACTuB,EAAErgC,KAAIgO,aAAAA,OAAckyB,EAAa,EAAIE,EAAe,QAM1D,OAAOC,EAAEn2B,KAAK,IAChB,IAIN,EC7OF,yBAAAo2B,GAAiB,gDCAb7+B,GAAyB/B,EACzByC,GAAWc,GACXq9B,GAAc58B,GAEduG,GALchL,EAKQ,GAAGgL,SACzBs2B,GAAQC,OAAO,KAAOF,GAAc,MACpCG,GAAQD,OAAO,QAAUF,GAAc,MAAQA,GAAc,OAG7DnzB,GAAe,SAAUzD,GAC3B,OAAO,SAAU2D,GACf,IAAI0B,EAAS5M,GAASV,GAAuB4L,IAG7C,OAFW,EAAP3D,IAAUqF,EAAS9E,GAAQ8E,EAAQwxB,GAAO,KACnC,EAAP72B,IAAUqF,EAAS9E,GAAQ8E,EAAQ0xB,GAAO,OACvC1xB,CACX,CACA,EAEA2xB,GAAiB,CAGf9X,MAAOzb,GAAa,GAGpBoa,IAAKpa,GAAa,GAGlBwzB,KAAMxzB,GAAa,IC5BjB+U,GAAuBjjB,GAAsC+I,OAC7DzH,GAAQb,EACR4gC,GAAcr9B,GCDd29B,GAAQlhC,GAAoCihC,KADxC1hC,GAMN,CAAEkQ,OAAQ,SAAUkB,OAAO,EAAMR,ODElB,SAAUuX,GACzB,OAAO7mB,IAAM,WACX,QAAS+/B,GAAYlZ,MANf,cAOGA,MACHlF,IAAwBoe,GAAYlZ,GAAajjB,OAASijB,CACpE,GACA,CCR2CyZ,CAAuB,SAAW,CAC3EF,KAAM,WACJ,OAAOC,GAAM/hC,KACd,ICNI,gBAAMq7B,GAAmB,gBAGX4G,GAAgB,WAKnC,SAAAA,EAAY1P,GAAoBC,OAAAyP,gBAC9BjiC,KAAKuyB,SAAWA,EAChBvyB,KAAKw7B,KAAO,IACd,CAkFC,OAlFA7I,EAAAsP,EAAA,CAAA,CAAAzhC,IAAA,QAAAC,MAED,SAAM+6B,GAAS,IAAA3I,EAAA7yB,KACbA,KAAKw7B,KAAOA,GAAQx7B,KAAKw7B,KACzB,IAAM0G,EAAkB,GAAA/yB,OAAMksB,GAA4B,cAEpD8G,EAAoBniC,KAAKw7B,KAC5BQ,UAAUkG,GACVpyB,MACC,SAACukB,GAAY,MAAK,CAACA,EAAE,IACrB,SAACA,GAAY,OAAKA,CAAC,IAEpBhpB,MACC,SAACqM,GAAU,OAAKA,EACbukB,OAAO,OACP95B,MAAK,SAACk+B,GAAc,OAAKxW,GAAAgJ,EAAIuP,GAAA,IAAAC,IAAJlgC,KAAA0wB,EAAmBwN,MAC5CnE,KAAK,QAASgG,EAAmB/2B,MAAM,GAAG,IAE7C,SAAC2wB,GAAW,OAEVA,EAAO35B,MAAK,SAACk+B,GAAc,OAAKxW,GAAAgJ,EAAIuP,GAAA,IAAAC,SAAJxP,EAAmBwN,EAAU,OAGnE5G,EAIIz5B,KAAKuyB,SAAS7mB,QAAQA,QAHxByoB,UACEmO,EAAM7I,EAAN6I,OAAQ1I,EAAKH,EAALG,MAAOC,EAAMJ,EAANI,OAAQ9B,EAAI0B,EAAJ1B,KAGrBrN,EAAM1qB,KAAKuyB,SAASmC,aAE1ByN,EACGnG,UAAU,KACVlsB,MAAK,SAACukB,GACL,IAAMkO,EACJ1P,EAAKN,SAASe,iBAAiBttB,IAAIquB,GACrC,GAAa,SAAT0D,EAAiB,CACnB,IAAMjqB,EAAMnO,KAAKmO,IAAGvL,MAAR5C,KAAI4/B,EACXgD,EAAqBnV,KAAI,SAACoU,GAAY,OAAKA,EAAE9zB,CAAC,MAEnD60B,EAAqBpV,SAAQ,SAACqU,EAAcxyB,GAC1CuzB,EAAqBvzB,GAAGtB,EAAI/N,KAAK6iC,IAAIhB,EAAE9zB,EAAII,EAC7C,GACF,CAEA,OAAOy0B,CACT,IACCl3B,MACC,SAACqM,GAAU,OAAKA,EACbukB,OAAO,KACP95B,MAAK,SAACk+B,GAAc,OAAKA,EACvBoC,OAAO,QACPvG,KAAK,SAAS,SAAC7H,GAAY,OAE1BxK,GAAAgJ,EAAeuP,GAAA,IAAAM,IAAAvgC,KAAf0wB,EAAgBwB,EAAEsH,EAAC,GAAAxsB,OAAKksB,GAAiBlwB,MAAM,GAAO,OAAE,IACzD+wB,KAAK,QAAStC,GACdsC,KAAK,SAAUrC,GACfqC,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAWwB,EAAE,IACzC6H,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAWwB,EAAG,IAC1CvI,GAAG,SAAS,SAAC6W,EAAkBtO,GAAY,OAE1C3J,EAAIjO,KAAK,QAASkmB,EAAItO,EAAEsH,EAAGtH,EAAEC,EAAG,IACjCxI,GAAG,aAAa,SAAC6W,EAAkBtO,GAAY,OAE9C3J,EAAIjO,KAAK,YAAakmB,EAAItO,EAAEsH,EAAGtH,EAAEC,EAAG,IACrCxI,GAAG,YAAY,SAAC6W,EAAkBtO,GAAY,OAE7C3J,EAAIjO,KAAK,WAAYkmB,EAAItO,EAAEsH,EAAGtH,EAAEC,EAAG,IACpC4H,KAAK,KAAMoG,EAAS,EAAIA,EAAS,MACjCpG,KAAK,KAAMoG,EAAS,EAAIA,EAAS,KAAK,IACxCngC,MAAK,SAACk+B,GAAc,OAAKxW,GAAAgJ,EAAgBuP,GAAA,IAAAQ,IAAAzgC,KAAhB0wB,EAAiBwN,KAAW,IACxD,SAACvE,GAAW,OAAKA,EACdE,UAAU,QACVE,KAAK,SAAS,SAAC7H,GAAY,OAE1BxK,GAAAgJ,EAAeuP,GAAA,IAAAM,IAAAvgC,KAAf0wB,EAAgBwB,EAAEsH,EAAC,GAAAxsB,OAAKksB,GAAiBlwB,MAAM,GAAO,OAAE,IACzD+wB,KAAK,QAAStC,GACdsC,KAAK,SAAUrC,GACfqC,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAWwB,EAAE,IACzC6H,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAgJ,aAAA1wB,KAAA0wB,EAAWwB,EAAE,IACzC6H,KAAK,KAAMoG,GACXpG,KAAK,KAAMoG,KAEpB,KAACL,CAAA,CA1FkC,8BAgGrB5B,GACZ,IAAQ30B,EAAY1L,KAAKuyB,SAAS7mB,QAA1BA,QACRm3B,EAGIn3B,EAAQ8L,OAFVuhB,EAAO8J,EAAP9J,QACSvT,EAAQqd,EAAjB9C,MAASva,SAGX6a,EACGnE,KAAK,KAAK,WACT,IAAI7W,EAAM0T,EAAQ/G,GAASgH,MAI3B,MAHiB,SAAbxT,IACFH,GAAO3Z,EAAQgC,EAAEstB,4BAEZ3V,CACT,IACC6W,KAAK,KAAK,WACT,IAAI7W,EAAM0T,EAAQ/G,GAASmH,KAI3B,MAHiB,QAAb3T,IACFH,GAAO3Z,EAAQgC,EAAE0tB,2BAEZ/V,CACT,GACJ,EAQWqd,GAAA,SAAAxD,GAA+C,IAAAf,EAAAn+B,KACxD66B,EAGI76B,KAAKuyB,SAAS7mB,QAAQA,QAFhBo3B,EAASjI,EAAjB1H,KAAQ2P,UACKh4B,EAAI+vB,EAAjB1G,UAAarpB,KAEXyxB,EAAY,GAEZuG,EAAUj8B,OAAS,GACrBi8B,EAAU3V,SAAQ,SAACkH,GACjB,IAAM0O,EAAS5E,EAAK5L,SAASU,mBAAmBjtB,IAAI8E,GAAMsoB,YAEtD2P,GAAQ1O,KAAO0O,EAAO7D,KACxB3C,EA5IkB,YA8ItB,IACD,IAAAyG,IAAAA,EAAAxgC,UAAAqE,OAfiCo8B,MAAsB1xB,MAAAyxB,EAAAA,EAAAA,OAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAtBD,EAAsBC,EAAA1gC,GAAAA,UAAA0gC,GAiBxD,MAAO,CAAC3G,GAASptB,OAAK8zB,GAAc53B,KAAK,KAAKy2B,MAChD,cAEYqB,GAAS,IAAA9E,EAAAr+B,KACnBi7B,EAAiCj7B,KAAKuyB,SAAS7mB,QAAQA,QAAQyoB,UAAvDyF,EAAKqB,EAALrB,MAAOC,EAAMoB,EAANpB,OAAQkG,EAAK9E,EAAL8E,MAEvB,OAAKA,EAIEoD,EACJlH,OAAO,QACPC,KAAK,SAAS,SAAC7H,GAAY,OAE1BxK,GAAAwU,EAAe+D,GAAA,IAAAM,IAAAvgC,KAAfk8B,EAAgBhK,EAAEsH,EAAC,GAAAxsB,OAAKksB,GAAiBlwB,MAAM,GAAS,SAAC,IAC1D+wB,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAwU,aAAAl8B,KAAAk8B,EAAWhK,GAAKuF,EAAQ,CAAC,IACrDsC,KAAK,KAAK,SAAC7H,GAAY,OAAKxK,GAAAwU,aAAAl8B,KAAAk8B,EAAWhK,GAAKwF,EAAS,CAAE,IACvDqC,KAAK,cAAe,UACpBA,KAAK,oBAAqB,WAC1B8D,MAAK,SAAC3L,EAAcrlB,EAAWoxB,GAAY,OAE1C/B,EAAK9L,SAASyB,WAAW0I,OAAOrI,EAAEsH,EAAGoE,EAAO1L,EAAEC,EAAG8L,EAAMpxB,OAdlD,IAeX,EAACo0B,GAAA,SAEeC,EAAiBhP,GAC/B,IAAQF,EAAcn0B,KAAKuyB,SAAS7mB,QAAQA,QAApCyoB,UACR,OACEE,EAAEgP,IACDlP,EAAmB,MAATkP,EAAe,QAAU,UAAYlP,EAAUwG,OAE9D,cAEMtG,GACJ,OAAOxK,GAAA7pB,KAAIoiC,GAAA,IAAAgB,IAAJjhC,KAAAnC,KAAqB,IAAKq0B,EACnC,cAEMA,GACJ,OAAOxK,GAAA7pB,KAAIoiC,GAAA,IAAAgB,IAAJjhC,KAAAnC,KAAqB,IAAKq0B,EACnC,ECnLF,IAAMiP,GAAgB,uBAChBC,GAAuB,gBAEvBC,GAAuB,WAe3B,SAAAA,EAAYjR,GAAoBC,OAAAgR,gBAC9BxjC,KAAKuyB,SAAWA,EAEhBvyB,KAAKs5B,cAAgB,IAAIgC,GAAc/I,GACvCvyB,KAAKyjC,iBAAmB,IAAIxB,GAAiB1P,GAC7CvyB,KAAK0jC,mBAAqB,IAAI5D,GAAmBvN,GACjDvyB,KAAK25B,WAAa,CAChBC,MAAO,EACPC,OAAQ,GAEV75B,KAAK2jC,sBAAwB,CAC/B,CA4DC,OA5DAhR,EAAA6Q,EAAA,CAAA,CAAAhjC,IAAA,QAAAC,MAED,WACET,KAAKw7B,KAAOx7B,KAAKuyB,SAASyO,gBAAgBxF,KACvCU,KAAK,IAAK,GACVA,KAAK,IAAK,GACVD,OAAO,OACPC,KAAK,QAASoH,GAAcn4B,MAAM,IAClC8wB,OAAO,OACPC,KAAK,QAAO/sB,GAAAA,OAAKm0B,GAAcn4B,MAAM,GAAE,sBAC5C,GAAC,CAAA3K,IAAA,QAAAC,MAED,SAAM+4B,GAAgC,IAAA3G,EAAA7yB,KACpC6pB,GAAA7pB,KAAI4jC,GAAA,IAAAC,IAAJ1hC,KAAAnC,MAEA,IAAM+H,EAAS/H,KAAKs5B,cAAcwK,MAAMtK,EAAiBx5B,KAAKw7B,MAU9D,OATAx7B,KAAKyjC,iBAAiBK,MAAM9jC,KAAKs5B,cAAckC,MAC/Cx7B,KAAK0jC,mBAAmBI,MAAM9jC,KAAKs5B,cAAckC,MAEjD3R,GAAA7pB,KAAI4jC,GAAA,IAAAG,IAAJ5hC,KAAAnC,MAEAmX,QAAQ6N,WAAWjd,GAAQ2O,MAAK,WAC9BmT,GAAAgJ,EAAI+Q,GAAA,IAAAI,IAAJ7hC,KAAA0wB,EACF,IAEO9qB,CACT,GAAC,CAAAvH,IAAA,iBAAAC,MAED,iBACE,KAAc,QAATwjC,EAAAjkC,KAAKw7B,YAAI,IAAAyI,OAAA,EAAAA,EAAEztB,QACd,OAAOW,QAAQQ,UAGjB,IAAQ+jB,EAAsB17B,KAAKuyB,SAAS7mB,QAAQA,QAA5CgwB,kBACFwI,EAAYlkC,KAAKuyB,SAAS4R,cAAcC,sBAAsB,OAC9DC,EAAYrkC,KAAKuyB,SAAS4R,cAAcG,qBAAqB,QAEnE,MAAO,CACLC,EAAAA,OAAOvkC,KAAKw7B,KAAKhlB,OAAOguB,YACrB5I,aACAC,SAASH,GACTv5B,MAAK,SAACk+B,GACLA,EAAUnE,KAAK,IAAKmI,GAAWnI,KAAK,IAAKgI,EAC3C,IACCxb,MAEP,GAAC,CAAAloB,IAAA,QAAAC,MAED,WACE,OAAOT,KAAK25B,WAAWC,KACzB,GAAC,CAAAp5B,IAAA,SAAAC,MAED,WACE,OAAOT,KAAK25B,WAAWE,MACzB,GAAC,CAAAr5B,IAAA,UAAAC,MAED,WAGE,OAFAopB,GAAA7pB,KAAI4jC,GAAA,IAAAC,IAAJ1hC,KAAAnC,MAEOmX,QAAQQ,SACjB,KAAC6rB,CAAA,CAtF0B,+CAyFrBS,EAAAjkC,KAAKw7B,2BAAMhlB,UACbxW,KAAK2jC,uBAAyB,EAC9BY,SAAOvkC,KAAKw7B,KAAKhlB,OAAOguB,YAAYC,QAAQlB,IAAsB,GAEtE,EAACS,GAAA,0BAGKC,EAAAjkC,KAAKw7B,2BAAMhlB,UACbxW,KAAK2jC,uBAAyB,EAEK,IAA/B3jC,KAAK2jC,uBACPY,SAAOvkC,KAAKw7B,KAAKhlB,OAAOguB,YAAYC,QAClClB,IACA,GAIR,EAACQ,GAAA,WAGC,IAAAtK,EAIIz5B,KAAKuyB,SAAS7mB,QAAQA,QAHxBgwB,EAAiBjC,EAAjBiC,kBACAhC,EAAmBD,EAAnBC,oBACUiB,EAAMlB,EAAhBjiB,OAAUmjB,OAEQ+J,EAAsB1kC,KAAKs5B,cAAvCK,WAER35B,KAAK25B,WAAa,CAChBC,MAAO8K,EAAkB9K,OAASF,EAAsB,EAAIiB,GAC5Dd,OAAQ6K,EAAkB7K,QAAWH,EAA0BiB,EAAJ,IAG7D36B,KAAKw7B,KACFI,aACAC,SAASH,GACTQ,KAAK,QAASl8B,KAAK25B,WAAWC,OAC9BsC,KAAK,SAAUl8B,KAAK25B,WAAWE,OACpC,kBCxII8K,GAAa,WAGjB,SAAAA,EAAYpS,GAAoBC,OAAAmS,GAC9B3kC,KAAKuyB,SAAWA,CAClB,CA4FC,OA5FAI,EAAAgS,EAAA,CAAA,CAAAnkC,IAAA,QAAAC,MAED,WACE,IAAIs7B,EAA+B,GAKnC,OAFAA,GADAA,EAAWA,EAAS5sB,OAAOnP,KAAKuyB,SAAS4R,cAAcS,aACnCz1B,OAAOnP,KAAK6kC,qBAGlC,GAAC,CAAArkC,IAAA,qBAAAC,MAED,WACE,IAAQ0jC,EAAkBnkC,KAAKuyB,SAAvB4R,cACAzI,EAAsB17B,KAAKuyB,SAAS7mB,QAAQA,QAA5CgwB,kBACAuF,EAA4BjhC,KAAKuyB,SAASyO,gBAA1CC,wBAEF6D,EAAMX,EAAcY,gBAAgB,OACpClO,EAAQsN,EAAcY,gBAAgB,SACtCC,EAASb,EAAcY,gBAAgB,UACvCnO,EAAOuN,EAAcY,gBAAgB,QAErCb,EAAYC,EAAcC,sBAAsB,OAChDC,EAAYF,EAAcG,qBAAqB,QAE/CvI,EAA+B,GAEjCkJ,EAAY,EAChBH,EAAI3X,SAAQ,SAAC+X,GACXnJ,EAAS56B,KACP+jC,EAAO1J,KACJI,aACAC,SAASH,GACTQ,KAAK,IAAK+I,GACV/I,KAAK,IAAKmI,GACV3b,OAELuc,GAAaC,EAAOx5B,QAAQiuB,WAAYE,MAC1C,IAEA,IAAIsL,EAAa,EAsCjB,OArCAvO,EAAKzJ,SAAQ,SAAC+X,GACZnJ,EAAS56B,KACP+jC,EAAO1J,KACJI,aACAC,SAASH,GACTQ,KAAK,IAAKiJ,GACVjJ,KAAK,IAAKgI,GACVxb,OAELyc,GAAcD,EAAOx5B,QAAQiuB,WAAYC,KAC3C,IAEAoL,EAAO7X,SAAQ,SAAC+X,GACdnJ,EAAS56B,KACP+jC,EAAO1J,KACJI,aACAC,SAASH,GACTQ,KAAK,IAAKmI,GACVnI,KAAK,IAAKgI,EAAYjD,EAAwBpH,UAC9CnR,MAEP,IAEAyc,GAAclE,EAAwBrH,QAEtC/C,EAAM1J,SAAQ,SAAC+X,GACbnJ,EAAS56B,KACP+jC,EAAO1J,KACJI,aACAC,SAASH,GACTQ,KAAK,IAAKiJ,GACVjJ,KAAK,IAAKgI,GACVxb,OAELyc,GAAcD,EAAOx5B,QAAQiuB,WAAYC,KAC3C,IAEOmC,CACT,GAAC,CAAAv7B,IAAA,cAAAC,MAED,WACE,OACET,KAAKuyB,SAAS4R,cAAcG,qBAAqB,QACjDtkC,KAAKuyB,SAAS4R,cAAcG,qBAAqB,QAErD,GAAC,CAAA9jC,IAAA,eAAAC,MAED,WACE,OACET,KAAKuyB,SAAS4R,cAAcC,sBAAsB,OAClDpkC,KAAKuyB,SAAS4R,cAAcC,sBAAsB,SAEtD,KAACO,CAAA,CAjGgB,GCSES,GAAe,WAWlC,SAAAA,EAAY7S,GAAoBC,OAAA4S,gBAC9BplC,KAAKuyB,SAAWA,EAChBvyB,KAAK25B,WAAa,CAChBC,MAAO,EACPC,OAAQ,GAEV75B,KAAKw7B,KAAO,KACZx7B,KAAKihC,wBAA0B,IAAIuC,GAAwBjR,GAC3DvyB,KAAKqlC,cAAgB,IAAIV,GAAcpS,EACzC,CA4FC,OA5FAI,EAAAyS,EAAA,CAAA,CAAA5kC,IAAA,QAAAC,MAED,WACE,IAAAg5B,EAAgCz5B,KAAKuyB,SAAS7mB,QAAQA,QAA9C45B,EAAY7L,EAAZ6L,aAAcC,EAAK9L,EAAL8L,MAYtB,OAVKvlC,KAAKw7B,OACRx7B,KAAKw7B,KAAO+I,SAAOe,GAChBrJ,OAAO,OACPC,KAAK,aAAcqJ,GACnBrJ,KAAK,QA/BkB,gBA+BQ/wB,MAAM,IACxCnL,KAAKihC,wBAAwBuE,SAG/BxlC,KAAKuyB,SAAS4R,cAAcsB,YAErB,CACT,GAAC,CAAAjlC,IAAA,QAAAC,MAED,WAAkE,IAA5DilC,EAAAljC,UAAAqE,OAAArE,QAAAtB,IAAAsB,UAAAtB,GAAAsB,UAAiCuvB,GAAAA,GAAgBgB,YAC/C4S,EAAc3lC,KAAKihC,wBACtB6C,MAAM4B,GACNv2B,OAAOnP,KAAKqlC,cAAcvB,SAC1B30B,OAAOnP,KAAKihC,wBAAwB2E,kBAIvC,OAFA/b,GAAA7pB,KAAI6lC,GAAA,IAAAC,IAAJ3jC,KAAAnC,MAEOmX,QAAQ6N,WAAW2gB,EAC5B,GAAC,CAAAnlC,IAAA,UAAAC,MA6CD,WACE,IAAMsH,EAA6B/H,KAAKuyB,SAAS4R,cAC9C4B,aACA52B,OAAOnP,KAAKihC,wBAAwB+E,WAEvC,OAAKhmC,KAAKw7B,MAIVzzB,EAAO5G,KACLnB,KAAKw7B,KACFI,aACAC,SAAS77B,KAAKuyB,SAAS7mB,QAAQA,QAAQgwB,mBACvCQ,KAAK,QAAS,GACdA,KAAK,SAAU,GACfI,SACA5T,OAGEvR,QAAQ6N,WAAWjd,IAbjBoP,QAAQ6N,WAAWjd,EAc9B,KAACq9B,CAAA,CAhHiC,gCAkDhC,OACEplC,KAAKihC,wBAAwBpH,SAAW75B,KAAKqlC,cAAcY,cAE/D,EAACC,GAAA,WAGC,OACElmC,KAAKihC,wBAAwBrH,QAAU55B,KAAKqlC,cAAcc,aAE9D,EAACL,GAAA,WAGC,IAAQp6B,EAAY1L,KAAKuyB,SAAS7mB,QAA1BA,QAEF06B,EAAWvc,GAAA7pB,gBAAAmC,KAAAnC,MACXqmC,EAAYxc,GAAA7pB,gBAAAmC,KAAAnC,MAElBA,KAAKw7B,KACFI,aACAC,SAASnwB,EAAQgwB,mBACjBQ,KAAK,QAASkK,GACdlK,KAAK,SAAUmK,GAGhBD,IAAapmC,KAAK25B,WAAWC,OAC7ByM,IAAcrmC,KAAK25B,WAAWE,QAE9B75B,KAAKuyB,SAASmC,aAAajY,KACzB,SACA2pB,EACAC,EACArmC,KAAK25B,WAAWC,MAChB55B,KAAK25B,WAAWE,QAIpB75B,KAAK25B,WAAa,CAChBC,MAAOwM,EACPvM,OAAQwM,EAEZ,ECpGF,IAEAC,GAFkC,iBAAV1mC,QAAsBA,QAAUA,OAAOU,SAAWA,QAAUV,OCEhF2mC,GAA0B,iBAARxmC,MAAoBA,MAAQA,KAAKO,SAAWA,QAAUP,KAK5EymC,GAFWC,IAAcF,IAAYtmC,SAAS,cAATA,GCDrCymC,GAFalL,GAAKh3B,OCAdmiC,GAAcrmC,OAAO4B,UAGrBH,GAAiB4kC,GAAY5kC,eAO7B6kC,GAAuBD,GAAYrjC,SAGnCujC,GAAiBriC,GAASA,GAAOsiC,iBAAc5lC,ECfnD,IAOI0lC,GAPctmC,OAAO4B,UAOcoB,SCHvC,IAAIyjC,GAAU,gBACVC,GAAe,qBAGfH,GAAiBriC,GAASA,GAAOsiC,iBAAc5lC,EASnD,SAAS+lC,GAAWxmC,GAClB,OAAa,MAATA,OACeS,IAAVT,EAAsBumC,GAAeD,GAEtCF,IAAkBA,MAAkBvmC,OAAOG,GFGrD,SAAmBA,GACjB,IAAIymC,EAAQnlC,GAAeI,KAAK1B,EAAOomC,IACnCp6B,EAAMhM,EAAMomC,IAEhB,IACEpmC,EAAMomC,SAAkB3lC,EACxB,IAAIimC,GAAW,CACnB,CAAI,MAAOxd,GAAK,CAEd,IAAI5hB,EAAS6+B,GAAqBzkC,KAAK1B,GAQvC,OAPI0mC,IACED,EACFzmC,EAAMomC,IAAkBp6B,SAEjBhM,EAAMomC,KAGV9+B,CACT,CEpBMq/B,CAAU3mC,GDNhB,SAAwBA,GACtB,OAAOmmC,GAAqBzkC,KAAK1B,EACnC,CCKM4mC,CAAe5mC,EACrB,CCAA,SAASwF,GAASxF,GAChB,IAAIqK,SAAcrK,EAClB,OAAgB,MAATA,IAA0B,UAARqK,GAA4B,YAARA,EAC/C,CCxBA,IAAIw8B,GAAW,yBACXC,GAAU,oBACVC,GAAS,6BACTC,GAAW,iBAmBf,SAASC,GAAWjnC,GAClB,IAAKwF,GAASxF,GACZ,OAAO,EAIT,IAAIgM,EAAMw6B,GAAWxmC,GACrB,OAAOgM,GAAO86B,IAAW96B,GAAO+6B,IAAU/6B,GAAO66B,IAAY76B,GAAOg7B,EACtE,CCjCA,IACI3kC,GAAWjC,EACX8mC,GAAavjC,GAFThE,GASN,CAAEkQ,OAAQ,SAAUQ,MAAM,EAAME,OANtBnM,GAEoB,WAAc8iC,GAAW,EAAG,KAIK,CAC/D59B,KAAM,SAAcrK,GAClB,OAAOioC,GAAW7kC,GAASpD,GAC5B,ICZH,ICkBMuN,GDlBFhH,GAAW7F,GACXoM,GAAU3L,GAGV+mC,GAFkBxjC,GAEM,SEJxByjC,GFQa,SAAUnoC,GACzB,IAAImoC,EACJ,OAAO5hC,GAASvG,UAAmCwB,KAA1B2mC,EAAWnoC,EAAGkoC,OAA0BC,EAA2B,WAAhBr7B,GAAQ9M,GACtF,EETIgD,GAAaC,UAEjBmlC,GAAiB,SAAUpoC,GACzB,GAAImoC,GAASnoC,GACX,MAAM,IAAIgD,GAAW,iDACrB,OAAOhD,CACX,ECNIkoC,GAFkBxnC,GAEM,SAE5B2nC,GAAiB,SAAUxf,GACzB,IAAIyf,EAAS,IACb,IACE,MAAMzf,GAAayf,EACpB,CAAC,MAAOC,GACP,IAEE,OADAD,EAAOJ,KAAS,EACT,MAAMrf,GAAayf,EAChC,CAAM,MAAOE,GAAuB,CACjC,CAAC,OAAO,CACX,EFdItuB,GAAIxZ,GACJ8C,GAAcrC,GACd0H,GAA2BnE,GAA2DuE,EACtFwF,GAAWtJ,GACXvB,GAAWyB,GACXojC,GAAaljC,GACbrC,GAAyBuH,EACzBi+B,GAAuBh+B,GAIvBi+B,GAAmBnlC,GAAY,GAAGolC,YAClCp9B,GAAchI,GAAY,GAAGiI,OAC7B4C,GAAMpO,KAAKoO,IAEXw6B,GAA0BH,GAAqB,cASnDxuB,GAAE,CAAEtJ,OAAQ,SAAUkB,OAAO,EAAMR,UAPCu3B,KAC9Bt7B,GAAa1E,GAAyB7E,OAAOxB,UAAW,eACrD+K,IAAeA,GAAWtM,aAK8B4nC,IAA2B,CAC1FD,WAAY,SAAoBE,GAC9B,IAAIn1B,EAAO/P,GAASV,GAAuB5C,OAC3CmoC,GAAWK,GACX,IAAIv6B,EAAQE,GAASJ,GAAIvL,UAAUqE,OAAS,EAAIrE,UAAU,QAAKtB,EAAWmS,EAAKxM,SAC3E4hC,EAASnlC,GAASklC,GACtB,OAAOH,GACHA,GAAiBh1B,EAAMo1B,EAAQx6B,GAC/B/C,GAAYmI,EAAMpF,EAAOA,EAAQw6B,EAAO5hC,UAAY4hC,CACzD,IGjCH,IAAIvgC,GAAc9H,GACdsB,GAAQb,EACRqC,GAAckB,EACdwe,GAAuB/d,GACvBub,GAAarb,GACbqI,GAAkBnI,GAGlB8H,GAAuB7J,GAFCiH,GAAsDxB,GAG9ExH,GAAO+B,GAAY,GAAG/B,MAItBunC,GAASxgC,IAAexG,IAAM,WAEhC,IAAIkH,EAAItI,OAAO4hB,OAAO,MAEtB,OADAtZ,EAAE,GAAK,GACCmE,GAAqBnE,EAAG,EAClC,IAGI0F,GAAe,SAAUq6B,GAC3B,OAAO,SAAUjpC,GAQf,IAPA,IAMIc,EANAoI,EAAIwE,GAAgB1N,GACpBqK,EAAOqW,GAAWxX,GAClBggC,EAAgBF,IAAsC,OAA5B9lB,GAAqBha,GAC/C/B,EAASkD,EAAKlD,OACdmI,EAAI,EACJjH,EAAS,GAENlB,EAASmI,GACdxO,EAAMuJ,EAAKiF,KACN9G,MAAgB0gC,EAAgBpoC,KAAOoI,EAAImE,GAAqBnE,EAAGpI,KACtEW,GAAK4G,EAAQ4gC,EAAa,CAACnoC,EAAKoI,EAAEpI,IAAQoI,EAAEpI,IAGhD,OAAOuH,CACX,CACA,ECrCI8gC,GDuCa,CAGfpkB,QAASnW,IAAa,GAGtBoR,OAAQpR,IAAa,IC7CgCmW,QCAhD,SAASqkB,GAAQp7B,GACtB,OAAY,MAALA,IAAcq7B,OAAOC,MAAMt7B,EACpC,CAEO,SAASu7B,GAAiB3iC,EAAG8T,GAClC,OAAQ0uB,GAAQ1uB,IAAM0uB,GAAQxiC,IAAM4iC,EAASA,UAAC5iC,EAAG8T,EACnD,CAUO,SAAS+uB,GAAOz7B,GACrB,OAAO07B,SAAS17B,GAAKA,EAAI27B,GAC3B,CAEO,SAASC,GAAS57B,GACvB,OAAOA,EAAI,GAAK07B,SAAS17B,GAAKA,EAAI27B,GACpC,CAEO,SAASE,GAAS77B,GACvB,OAAOA,EAAI,GAAK07B,SAAS17B,GAAKA,EAAI27B,GACpC,CD3BQjpC,GAKN,CAAEkQ,OAAQ,SAAUQ,MAAM,GAAQ,CAClC2T,QAAS,SAAiB7b,GACxB,OAAOigC,GAASjgC,EACjB,IETH,MAAM4gC,GAAK,6GAEI,SAASC,GAAMv5B,EAAQw5B,GACpC,OAAKF,GAAG3nC,KAAKqO,GAAU,IAChB,IAAI2kB,KAAK3kB,GADuC,mBAAbw5B,EAA0BA,EAASx5B,GAAUw5B,CAEzF,CCAA,MAAMC,GAAgB,IAAIpQ,IAAI,CAC5B,CAAC,SAAUqQ,EAAAA,YACX,CAAC,SAAUC,EAAAA,YACX,CAAC,OAAQC,EAAAA,UACT,CAAC,MAAOC,EAAAA,SACR,CAAC,OAAQC,EAAAA,UACT,CAAC,QAASC,EAAAA,WACV,CAAC,UAAWA,EAAAA,UAAU1c,MAAM,IAC5B,CAAC,OAAQ0c,EAAAA,UAAU1c,MAAM,IACzB,CAAC,OAAQ2c,EAAAA,UACT,CAAC,SAAUC,EAAAA,YACX,CAAC,UAAWC,EAAAA,aACZ,CAAC,YAAaC,EAAAA,eACd,CAAC,WAAYC,EAAAA,cACb,CAAC,SAAUC,EAAAA,YACX,CAAC,WAAYC,EAAAA,cACb,CAAC,SAAUC,EAAAA,cAGPC,GAAe,IAAInR,IAAI,CAC3B,CAAC,SAAUoR,EAAAA,WACX,CAAC,SAAUC,EAAAA,WACX,CAAC,OAAQC,EAAAA,SACT,CAAC,MAAOC,EAAAA,QACR,CAAC,OAAQC,EAAAA,SACT,CAAC,QAASC,EAAAA,UACV,CAAC,UAAWA,EAAAA,SAASzd,MAAM,IAC3B,CAAC,OAAQyd,EAAAA,SAASzd,MAAM,IACxB,CAAC,OAAQ0d,EAAAA,SACT,CAAC,SAAUC,EAAAA,WACX,CAAC,UAAWC,EAAAA,YACZ,CAAC,YAAaC,EAAAA,cACd,CAAC,WAAYC,EAAAA,aACb,CAAC,SAAUC,EAAAA,WACX,CAAC,WAAYC,EAAAA,aACb,CAAC,SAAUC,EAAAA,aAGN,SAASC,GAAkB/N,GAChC,MAAM1uB,EAAI26B,GAAc3jC,IAAI,GAAG03B,IAAWvtB,eAC1C,IAAKnB,EAAG,MAAM,IAAI08B,MAAM,qBAAqBhO,KAC7C,OAAO1uB,CACT,CAEO,SAAS28B,GAAiBjO,GAC/B,MAAM1uB,EAAI07B,GAAa1kC,IAAI,GAAG03B,IAAWvtB,eACzC,IAAKnB,EAAG,MAAM,IAAI08B,MAAM,qBAAqBhO,KAC7C,OAAO1uB,CACT,CChDO,MAAM48B,GAAatrC,OAAOmiB,eAAeopB,YAC1CxE,GAAiB/mC,OAAO4B,UAAUoB,SA6C3BwoC,GAAYp+B,GAAM,IAAMA,EAU9B,SAASq+B,GAAcrsB,GAC5B,OAAOA,aAAkBksB,GAAalsB,EAAS0N,GAAI1N,EAAQssB,GAAcC,aAC3E,CAKA,SAASD,GAAat+B,GACpB,OAAY,MAALA,EAAY27B,IAAMN,OAAOr7B,EAClC,CAEO,SAASw+B,GAAYxsB,GAC1B,OAAO0N,GAAI1N,EAAQysB,GACrB,CAQO,SAASA,GAAWz+B,GACzB,OAAOA,aAAamnB,OAASmU,MAAMt7B,GAC/BA,EACa,iBAANA,EACP0+B,GAAS1+B,GACJ,MAALA,GAAas7B,MAAOt7B,GAAKA,QACzBxM,EACA,IAAI2zB,KAAKnnB,EACf,CAiCO,SAAS2+B,GAASv8B,GACvB,OAAe,MAARA,GAAgBA,aAAgByB,OAASzB,aAAgB87B,GAAa97B,EAAOyB,MAAM4N,KAAKrP,EACjG,CAIO,SAASsd,GAAI1N,EAAQ/W,EAAGmC,EAAOyG,OACpC,OAAiB,MAAVmO,EAAiBA,EAASA,aAAkB5U,EAAO4U,EAAO0N,IAAIzkB,GAAKmC,EAAKqU,KAAKO,EAAQ/W,EAC9F,CAIO,SAASwC,GAAMuU,EAAQ5U,EAAOyG,OACnC,OAAOmO,aAAkB5U,EAAO4U,EAAOvU,QAAUL,EAAKqU,KAAKO,EAC7D,CAYO,SAAS4sB,GAAeC,GAC7B,OAVK,SAAkBA,GACvB,OAAOA,GAAQjpC,WAAa+jC,EAC9B,CAQSphC,CAASsmC,UAA4BrrC,IAAhBqrC,EAAOzhC,WAAwC5J,IAAlBqrC,EAAO/0B,OAClE,CA2HO,SAASg1B,GAAc9O,EAAU5yB,GACtC,GAAgB,MAAZ4yB,EAAJ,CACA,GAAwB,iBAAbA,EAAuB,CAC5B,EAAIA,GAAYA,EAAW,GAAKqL,OAAO0D,UAAU,EAAI/O,KAAWA,GAAY,EAAIA,GACpF,MAAM/vB,EAAIhO,KAAK6iC,IAAI9E,GACnB,OAAOA,EAAW,EACd,CACElwB,MAAQ6mB,GAAM10B,KAAK6N,MAAM6mB,EAAI1mB,GAAKA,EAClC8yB,OAASpM,IAAOA,EAAI1mB,EAAI,GAAKA,EAC7B+lB,MAAO,CAACgZ,EAAIC,IAAOC,EAAAA,MAAOjtC,KAAK4N,KAAKm/B,EAAK/+B,GAAIg/B,EAAKh/B,GAAGyf,KAAK1f,GAAMA,EAAIC,KAEtE,CACEH,MAAQ6mB,GAAM10B,KAAK6N,MAAM6mB,EAAI1mB,GAAKA,EAClC8yB,OAASpM,GAAMA,EAAI1mB,EACnB+lB,MAAO,CAACgZ,EAAIC,IAAOC,EAAAA,MAAOjtC,KAAK4N,KAAKm/B,EAAK/+B,GAAIg/B,EAAKh/B,GAAGyf,KAAK1f,GAAMA,EAAIC,IAE3E,CACD,GAAwB,iBAAb+vB,EAAuB,OAAiB,SAAT5yB,EAAkB2gC,GAAoBE,IAAkBjO,GAClG,GAA8B,mBAAnBA,EAASlwB,MAAsB,MAAM,IAAIk+B,MAAM,0CAC1D,GAA+B,mBAApBhO,EAAS+C,OAAuB,MAAM,IAAIiL,MAAM,2CAC3D,OAAOhO,CAnBsB,CAoB/B,CAGO,SAASmP,GAAmBnP,EAAU5yB,GAE3C,IADA4yB,EAAW8O,GAAc9O,EAAU5yB,KACO,mBAAnB4yB,EAAShK,MAAsB,MAAM,IAAIgY,MAAM,0CACtE,OAAOhO,CACT,CA6CO,SAASoP,GAAUptB,GACxB,IAAK,MAAMjf,KAASif,EAAQ,CAC1B,GAAa,MAATjf,EAAe,SACnB,MAAMqK,SAAcrK,EACpB,MAAgB,WAATqK,GAA8B,YAATA,CAC7B,CACH,CAEO,SAASiiC,GAAWrtB,GACzB,IAAK,MAAMjf,KAASif,EAClB,GAAa,MAATjf,EACJ,OAAOA,aAAiBo0B,IAE5B,CAMO,SAASmY,GAAiBttB,GAC/B,IAAK,MAAMjf,KAASif,EAClB,GAAa,MAATjf,EACJ,MAAwB,iBAAVA,GAAsBuoC,MAAMvoC,IAAU2rC,GAAS3rC,EAEjE,CAIO,SAASwsC,GAAgBvtB,GAC9B,IAAK,MAAMjf,KAASif,EAClB,GAAa,MAATjf,EAAJ,CACA,GAAqB,iBAAVA,EAAoB,OAAO,EACtC,GAAKA,EAAMqhC,OACX,OAAQkH,MAAMvoC,EAHc,CAKhC,CAyEO,SAASysC,GAAQxtB,GACtB,GAAc,MAAVA,EAAgB,OACpB,MAAM4F,EAAQ5F,EAAO,GACfqW,EAAOrW,EAAOA,EAAO7Y,OAAS,GACpC,OAAOsmC,EAAUA,WAAC7nB,EAAOyQ,EAC3B,CC1cO,MAAMvQ,GAAWhhB,OAAO,YAKlB4oC,GAAQ5oC,OAAO,SAIf89B,GAAS99B,OAAO,UAIhBqC,GAASrC,OAAO,UAIhB6oC,GAAU7oC,OAAO,WAGjBD,GAASC,OAAO,UAKhB8oC,GAAW,IAAI/T,IAAI,CAC9B,CAAC,IAAK/T,IACN,CAAC,IAAKA,IACN,CAAC,KAAMA,IACP,CAAC,KAAMA,IACP,CAAC,IAAK8c,IACN,CAAC,QAAS8K,IACV,CAAC,UAAWC,IACZ,CAAC,SAAU9oC,IACX,CAAC,SAAUsC,MChCA0mC,GAAU,EADF5tC,KAAK6tC,KAAK,GAGzBC,GAAgB,CACpBC,KAAKrjB,EAAS5E,GACZ,MAAMkoB,EAAKhuC,KAAK6tC,KAAK/nB,EAAO9lB,KAAKiuC,IAC/BC,EAAKF,EAAKJ,GACVO,EAAKD,EAAK,EACZxjB,EAAQ0jB,OAAO,EAAGF,GAClBxjB,EAAQ2jB,OAAOL,EAAIG,GACnBzjB,EAAQ2jB,OAAOL,GAAKG,GACpBzjB,EAAQ2jB,OAAO,GAAIH,GACnBxjB,EAAQ2jB,QAAQL,GAAKG,GACrBzjB,EAAQ2jB,QAAQL,EAAIG,GACpBzjB,EAAQ4jB,WACT,GAGGC,GAAU,IAAI3U,IAAI,CACtB,CAAC,WAAY4U,EAAAA,gBACb,CAAC,SAAUC,EAAAA,cACX,CAAC,QAASC,EAAAA,aACV,CAAC,UAAWC,EAAAA,eACZ,CAAC,WAAYC,EAAAA,gBACb,CAAC,UAAWd,IACZ,CAAC,OAAQe,EAAAA,YACT,CAAC,SAAUC,EAAAA,cACX,CAAC,UAAWC,EAAAA,eACZ,CAAC,OAAQC,EAAAA,YACT,CAAC,QAASC,EAAAA,aACV,CAAC,WAAYC,EAAAA,gBACb,CAAC,YAAaC,EAAAA,iBACd,CAAC,MAAOC,EAAAA,aAaH,SAASC,GAAYzqC,GAC1B,GAAc,MAAVA,GAXN,SAAwB9D,GACtB,OAAOA,GAA+B,mBAAfA,EAAMitC,IAC/B,CASwBuB,CAAe1qC,GAAS,OAAOA,EACrD,MAAM9D,EAAQytC,GAAQloC,IAAI,GAAGzB,IAAS4L,eACtC,GAAI1P,EAAO,OAAOA,EAClB,MAAM,IAAIirC,MAAM,mBAAmBnnC,IACrC,CC7CO,SAAS2qC,GAAKC,GACnB90B,QAAQ60B,KAAKC,EAEf,CCoEA,MAAMC,GAAiB,IAAI7V,IAAI,CAE7B,CAAC,SAAU8V,EAAAA,cACX,CAAC,aAAcC,EAAAA,kBACf,CAAC,QAASC,EAAAA,aACV,CAAC,SAAUC,EAAAA,cACX,CAAC,UAAWC,EAAAA,eACZ,CAAC,UAAWC,EAAAA,eACZ,CAAC,OAAQC,EAAAA,YACT,CAAC,OAAQC,EAAAA,YACT,CAAC,OAAQC,EAAAA,YACT,CAAC,YAAaC,EAAAA,iBAGd,CAAC,OAAQC,GAASC,EAAUA,WAAEC,EAAeA,kBAC7C,CAAC,OAAQF,GAASG,EAAUA,WAAEC,EAAeA,kBAC7C,CAAC,OAAQJ,GAASK,EAAUA,WAAEC,EAAeA,kBAC7C,CAAC,OAAQN,GAASO,EAAUA,WAAEC,EAAeA,kBAC7C,CAAC,OAAQR,GAASS,EAAUA,WAAEC,EAAeA,kBAC7C,CAAC,OAAQV,GAASW,EAAUA,WAAEC,EAAeA,kBAC7C,CAAC,SAAUZ,GAASa,EAAYA,aAAEC,EAAiBA,oBACnD,CAAC,SAAUd,GAASe,EAAYA,aAAEC,EAAiBA,oBACnD,CAAC,WAAYhB,GAASiB,EAAcA,eAAEC,EAAmBA,sBAGzD,CAAC,OAAQC,GAAUV,EAAUA,WAAEC,EAAeA,kBAC9C,CAAC,SAAUS,GAAUN,EAAYA,aAAEC,EAAiBA,oBAGpD,CAAC,QAASM,GAAQC,EAAWA,YAAEC,EAAgBA,mBAC/C,CAAC,SAAUF,GAAQG,EAAYA,aAAEC,EAAiBA,oBAClD,CAAC,QAASJ,GAAQK,EAAWA,YAAEC,EAAgBA,mBAC/C,CAAC,UAAWN,GAAQO,EAAaA,cAAEC,EAAkBA,qBACrD,CAAC,UAAWR,GAAQS,EAAaA,cAAEC,EAAkBA,qBACrD,CAAC,OAAQV,GAAQW,EAAUA,WAAEC,EAAeA,kBAG5C,CAAC,QAASC,GAAQC,EAAAA,mBAClB,CAAC,UAAWD,GAAQE,EAAAA,qBACpB,CAAC,QAASF,GAAQG,EAAAA,mBAClB,CAAC,UAAWH,GAAQI,EAAAA,qBACpB,CAAC,SAAUJ,GAAQK,EAAAA,oBACnB,CAAC,UAAWL,GAAQM,EAAAA,qBACpB,CAAC,YAAaN,GAAQO,EAAAA,8BACtB,CAAC,OAAQP,GAAQQ,EAAAA,kBACjB,CAAC,OAAQR,GAAQS,EAAAA,kBACjB,CAAC,OAAQtB,GAAQuB,EAAUA,WAAEC,EAAeA,kBAC5C,CAAC,OAAQxB,GAAQyB,EAAUA,WAAEC,EAAeA,kBAC5C,CAAC,OAAQ1B,GAAQ2B,EAAUA,WAAEC,EAAeA,kBAC5C,CAAC,OAAQ5B,GAAQ6B,EAAUA,WAAEC,EAAeA,kBAC5C,CAAC,OAAQ9B,GAAQ+B,EAAUA,WAAEC,EAAeA,kBAC5C,CAAC,SAAUhC,GAAQiC,EAAYA,aAAEC,EAAiBA,oBAClD,CAAC,OAAQlC,GAAQmC,EAAUA,WAAEC,EAAeA,kBAC5C,CAAC,OAAQpC,GAAQqC,EAAUA,WAAEC,EAAeA,kBAC5C,CAAC,OAAQtC,GAAQuC,EAAUA,WAAEC,EAAeA,kBAC5C,CAAC,SAAUxC,GAAQyC,EAAYA,aAAEC,EAAiBA,oBAClD,CAAC,SAAU1C,GAAQ2C,EAAYA,aAAEC,EAAiBA,oBAClD,CAAC,SAAU5C,GAAQ6C,EAAYA,aAAEC,EAAiBA,oBAGlD,CAAC,UAAWC,GAAgBC,EAAAA,qBAC5B,CAAC,UAAWD,GAAgBE,EAAAA,uBAG9B,SAASjD,GAAQkD,EAAQC,GACvB,MAAO,EAAEztC,OAAQ8G,KACL,IAANA,EAAgB,CAAC0mC,EAAO,GAAG,IACrB,IAAN1mC,EAAgB,CAAC0mC,EAAO,GAAG,GAAIA,EAAO,GAAG,KAC7C1mC,EAAIhO,KAAKmO,IAAI,EAAGnO,KAAK6N,MAAMG,KAChB,EAAI4mC,WAASD,EAAa3mC,GAAK0mC,EAAO1mC,EAErD,CAEA,SAASoiC,GAASsE,EAAQC,GACxB,MAAO,EAAEztC,OAAQ8G,KACL,IAANA,EAAgB,CAAC0mC,EAAO,GAAG,GAAIA,EAAO,GAAG,KAC7C1mC,EAAIhO,KAAKmO,IAAI,EAAGnO,KAAK6N,MAAMG,KAChB,GAAK4mC,WAASD,EAAa3mC,GAAK0mC,EAAO1mC,EAEtD,CAEA,SAASujC,GAAUmD,EAAQC,GACzB,MAAO,EAAEztC,OAAQ8G,KACL,IAANA,EAAgB,CAAC0mC,EAAO,GAAG,GAAIA,EAAO,GAAG,KAC7C1mC,EAAIhO,KAAKmO,IAAI,EAAGnO,KAAK6N,MAAMG,KAChB,GAAK4mC,EAAAA,UAAU5Y,GAAM2Y,EAAY,EAAI3Y,IAAIhuB,GAAK0mC,EAAO1mC,GAAGxC,QAAQ6uB,SAE/E,CAEA,SAASgY,GAAQsC,GACf,MAAO,EAAEztC,OAAQ8G,KAAO4mC,EAAAA,SAASD,EAAa30C,KAAKmO,IAAI,EAAGnO,KAAK6N,MAAMG,IACvE,CAEA,SAASumC,GAAgBI,GACvB,MAAO,EAAEztC,OAAQ8G,KAAO4mC,EAAQA,SAACD,EAAa30C,KAAK6N,MAAMG,GAAK,GAAGxC,MAAM,GAAI,EAC7E,CAEO,SAASqpC,GAAcH,GAC5B,MAAM7S,EAAI,GAAG6S,IAASlkC,cACtB,IAAKi/B,GAAe7lC,IAAIi4B,GAAI,MAAM,IAAIkK,MAAM,2BAA2BlK,KACvE,OAAO4N,GAAeppC,IAAIw7B,EAC5B,CAEO,SAASiT,GAAaJ,EAAQxtC,GACnC,MAAM26B,EAAIgT,GAAcH,GAClBr0B,EAAiB,mBAANwhB,EAAmBA,EAAE,CAAC36B,WAAW26B,EAClD,OAAOxhB,EAAEnZ,SAAWA,EAASmZ,EAAE7U,MAAM,EAAGtE,GAAUmZ,CACpD,CAiBA,MAAM00B,GAAsB,IAAInb,IAAI,CAElC,CAAC,OAAQ0W,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,SAAUE,EAAAA,mBACX,CAAC,SAAUE,EAAAA,mBACX,CAAC,WAAYE,EAAAA,qBAGb,CAAC,OAAStV,GAAM8U,EAAeA,gBAAC,EAAI9U,IACpC,CAAC,SAAWA,GAAMkV,EAAiBA,kBAAC,EAAIlV,IAGxC,CAAC,QAAS0V,EAAAA,kBACV,CAAC,SAAUE,EAAAA,mBACX,CAAC,QAASE,EAAAA,kBACV,CAAC,UAAWI,EAAAA,oBACZ,CAAC,OAAQE,EAAAA,iBACT,CAAC,UAAWJ,EAAAA,oBAGZ,CAAC,QAASM,EAAAA,kBACV,CAAC,UAAWC,EAAAA,oBACZ,CAAC,QAASC,EAAAA,kBACV,CAAC,UAAWC,EAAAA,oBACZ,CAAC,SAAUC,EAAAA,mBACX,CAAC,UAAWC,EAAAA,oBACZ,CAAC,YAAaC,EAAAA,6BACd,CAAC,OAAQC,EAAAA,iBACT,CAAC,OAAQC,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,SAAUI,EAAAA,mBACX,CAAC,OAAQF,EAAAA,iBACT,CAAC,OAAQI,EAAAA,iBACT,CAAC,OAAQE,EAAAA,iBACT,CAAC,SAAUI,EAAAA,mBACX,CAAC,OAAQF,EAAAA,iBACT,CAAC,SAAUI,EAAAA,mBACX,CAAC,SAAUE,EAAAA,mBAGX,CAAC,UAAWE,EAAAA,oBACZ,CAAC,UAAWC,EAAAA,sBAGP,SAASO,GAAmBN,GACjC,MAAM7S,EAAI,GAAG6S,IAASlkC,cACtB,IAAKukC,GAAoBnrC,IAAIi4B,GAAI,MAAM,IAAIkK,MAAM,gCAAgClK,KACjF,OAAOkT,GAAoB1uC,IAAIw7B,EACjC,CAEA,MAAMoT,GAAmB,IAAIC,IAAI,CAC/B,OACA,OACA,OACA,OACA,OACA,OACA,SACA,SACA,WACA,OACA,WAGK,SAASC,GAAkBT,GAChC,OAAiB,MAAVA,GAAkBO,GAAiBrrC,IAAI,GAAG8qC,IAASlkC,cAC5D,CCxPO,MAAM4kC,GAAQ/lC,GAAO2sB,GAAM3sB,EAAE,EAAI2sB,GAClCqZ,GAAO,CAAC,EAAG,GAEXC,GAAgB,IAAI1b,IAAI,CAE5B,CAAC,SAAU2b,EAAAA,mBAGX,CAAC,MAAOC,EAAAA,gBACR,CAAC,MAAOC,EAAAA,gBACR,CAAC,MAAOC,EAAAA,gBACR,CAAC,MAAOC,EAAAA,kBAGH,SAASC,GAAkBjB,GAChC,MAAMtlC,EAAI,GAAGslC,IAAcnkC,cAC3B,IAAK8kC,GAAc1rC,IAAIyF,GAAI,MAAM,IAAI08B,MAAM,yBAAyB18B,KACpE,OAAOimC,GAAcjvC,IAAIgJ,EAC3B,CAEO,SAASwmC,GACdh1C,EACAi1C,EACAC,GACA5qC,KACEA,EAAI6qC,KACJA,EAAIliB,MACJA,EAAKmiB,KACLA,EAAIp+B,OACJA,EAASq+B,GAAgBr1C,EAAKk1C,GAASI,QACvCA,EAAOC,MACPA,EAAK1B,OACLA,EAAM3W,SACNA,EAAQhK,MACRA,GAAQ4Z,GAAStnC,IAAIxF,KAAS8hC,GAC1B0T,GAAiBN,EAAUl+B,GAC3B81B,GAAStnC,IAAIxF,KAASqG,GACtBovC,GAAiBP,EAAUl+B,GAC3B81B,GAAStnC,IAAIxF,KAAS6sC,GACtB2H,QACA9zC,GAASozC,YACbA,GAAchH,GAAStnC,IAAIxF,KAAS4sC,GACtB,MAAViH,QAA4BnzC,IAAVwyB,EAChByhB,EAAcA,eACdR,QAA8BzzC,IAAXmzC,EAAuBA,EAAkB,aAATvpC,EAAsB,UAAY,SACvFirC,EACAG,EAAgBA,iBAChBhB,EAAiBA,mBAAAlb,QACrBA,IAkCF,GA/BA0D,EAAWmP,GAAmBnP,EAAU5yB,GAC3B,aAATA,GAAgC,eAATA,IAAuBA,EAAO,UACzDkvB,IAAYA,EAOe,mBAAhBsa,IACTA,EAAciB,GAAkBjB,IAEP,IAAvBA,EAAYztC,QACVmzB,IACFsa,EAAcS,GAAKT,GACnBta,GAAU,QAEE94B,IAAVwyB,GAEmB,KADrBA,EAAQuY,aAAa9sB,KAAK3H,GAAQ,CAAC2+B,EAAGnnC,IAAMA,GAAKwI,EAAO3Q,OAAS,MACvDA,SAAc6sB,EAAQshB,IAElCS,EAAMnB,aAAa5gB,IAAUshB,GAAOlJ,GAAWsK,IAAsB9B,KAErEmB,EAAMnB,YAAYA,GAQhBsB,EAAM,CACR,MAAO7nC,EAAKD,GAAOuoC,EAAMA,OAAC7+B,IACtBzJ,EAAM,GAAKD,EAAM,KAEfo/B,GADJ11B,EAASrM,GAAMqM,MACS7X,KAAK22C,KAAKvoC,GAAMyJ,EAAOA,EAAO3Q,OAAS,GAAK,EAE/D2Q,EAAO,GAAK,EAEpB,CAOD,OALIwiB,IAASxiB,EAAS++B,EAASvc,QAACxiB,IAChCi+B,EAAMj+B,OAAOA,GAAQs+B,QAAQA,GACzBH,IAAMF,EAAME,KAMlB,SAAmBA,EAAM7qC,GACvB,OAAgB,IAAT6qC,OAAgBz0C,EAA4B,iBAATy0C,EAAoBA,EL+KzD,SAA2BjY,EAAU5yB,GAE1C,IADA4yB,EAAWmP,GAAmBnP,EAAU5yB,KACC,mBAAlB4yB,EAASnwB,KAAqB,MAAM,IAAIm+B,MAAM,yCACrE,OAAOhO,CACT,CKnLuE8Y,CAAkBb,EAAM7qC,EAC/F,CARuB2rC,CAAUd,EAAM7qC,IAAS0M,EAASi+B,EAAMj+B,eAC/CtW,IAAVwyB,GAAqB+hB,EAAM/hB,MAAMA,GACjCD,GAAOgiB,EAAMhiB,MAAMA,GAChB,CAAC3oB,OAAM0M,SAAQkc,QAAO+hB,QAAOnB,cAAa5W,WACnD,CAcO,SAASgZ,GAAel2C,EAAKk1C,GAAUiB,SAACA,EAAW,KAAMjrC,IAC9D,OAAO8pC,GAAah1C,EAAKo2C,aAAWD,SAASA,GAAWjB,EAAU,IAAIhqC,EAASZ,KAAM,OACvF,CAwEO,SAAS+rC,GACdr2C,EACAk1C,GACAl+B,OACEA,EAAS,CAAC,GAAEs+B,QACZA,EAAOzB,OACPA,EAAS,SAAQC,YACjBA,EAAW5gB,MACXA,QAAwBxyB,IAAhBozC,EACJC,EAAAA,SAASD,EAAa98B,EAAO3Q,OAAS,GACtCymC,GAAStnC,IAAIxF,KAAS4sC,GACtBqH,GAAaJ,EAAQ78B,EAAO3Q,OAAS,QACrC3F,GAAS84B,QACbA,IAIF,MAAMsc,EAAOpJ,GADb11B,EAAS60B,GAAS70B,IAElB,IAAKwxB,MAAMsN,KAUb,SAAmB9+B,EAAQ8+B,GACzB,IAAK,IAAItnC,EAAI,EAAGrB,EAAI6J,EAAO3Q,OAAQwtB,EAAI7c,EAAO,GAAIxI,EAAIrB,IAAKqB,EAAG,CAC5D,MAAMwyB,EAAI2L,EAAAA,WAAW9Y,EAAIA,EAAI7c,EAAOxI,IACpC,GAAU,IAANwyB,GAAWA,IAAM8U,EAAM,OAAO,CACnC,CACD,OAAO,CACT,CAhBuBQ,CAAUt/B,EAAQ8+B,GAAO,MAAM,IAAI5K,MAAM,OAAOlrC,sCAErE,OADIw5B,IAAStG,EAAQ6iB,EAASvc,QAACtG,IACxB,CACL5oB,KAAM,YACN2qC,MAAOsB,EAAAA,eAAeT,EAAO,EAAIC,EAAAA,QAAU/+B,GAAUA,OAAkBtW,IAAVwyB,EAAsB,GAAKA,GAAOoiB,QAAQA,GACvGt+B,SACAkc,QAEJ,CAcO,SAASsjB,GAAYtB,EAAU/sC,EAAIwgC,IACxC,OAAOuM,EAAS7uC,OACZ,CACEkH,EAAAA,IAAI2nC,GAAU,EAAEj1C,gBAAsBS,IAAVT,EAAsBA,EAAQsN,EAAGA,IAACtN,EAAOkI,KACrEmF,EAAAA,IAAI4nC,GAAU,EAAEj1C,gBAAsBS,IAAVT,EAAsBA,EAAQqN,EAAGA,IAACrN,EAAOkI,MAEvE,CAAC,EAAG,EACV,CAEA,SAASktC,GAAgBr1C,EAAKk1C,GAC5B,MAAM5qC,EAAOwiC,GAAStnC,IAAIxF,GAC1B,OAAQsK,IAASw3B,IAAUx3B,IAASuiC,IAAWviC,IAASjE,GAASowC,GAAkBD,IAAatB,EAClG,CAEA,SAASuB,GAAgBvB,GACvB,MAAO,CAAC,EAAGA,EAAS7uC,OAASiH,EAAAA,IAAI4nC,GAAU,EAAEj1C,gBAAsBS,IAAVT,EAAsBA,EAAQqN,MAAIrN,EAAO0oC,MAAY,EAChH,CAKA,SAAS6M,GAAiBN,EAAUl+B,GAClC,MAAM0/B,EAAOxB,EAASloB,MAAK,EAAE8U,iBAAuBphC,IAAXohC,IACzC,QAAaphC,IAATg2C,EAAoB,MAAO,CAAC,EAAGA,EAAK5U,QACxC,MAAM6U,EAAMC,EAAAA,SAAS1B,EAAU,IAAK,EAAEj1C,gBAAsBS,IAAVT,EAAsB4oC,IAAM+N,EAAAA,SAAS32C,EAAO,IAAM6oC,MAC9F5V,EAAQlc,EAAO4V,KAAKiH,GAAM,EAAI10B,KAAK6tC,KAAKnZ,EAAI8iB,KAC5CntB,EAAI,GAAKlc,EAAGA,IAAC4lB,GACnB,OAAO1J,EAAI,EAAI0J,EAAMtG,KAAKpN,GAAMA,EAAIgK,IAAK0J,CAC3C,CAKA,SAASuiB,GAAiBP,EAAUl+B,GAClC,MAAM6/B,EAAMC,EAAAA,OAAO5B,GAAU,EAAEj1C,gBAAsBS,IAAVT,EAAsB4oC,IAAMiO,EAAMA,OAAC72C,EAAOd,KAAK6iC,OACpF9O,EAAQlc,EAAO4V,KAAKiH,GAAO,GAAKA,EAAKgjB,IACrCrtB,EAAI,GAAKlc,EAAGA,IAAC4lB,GACnB,OAAO1J,EAAI,EAAI0J,EAAMtG,KAAKpN,GAAMA,EAAIgK,IAAK0J,CAC3C,CAEA,SAAS6jB,GAAe7B,GACtB,IAAK,MAAMj1C,MAACA,KAAUi1C,EACpB,QAAcx0C,IAAVT,EACF,IAAK,IAAI6zB,KAAK7zB,EAAO,CACnB,GAAI6zB,EAAI,EAAG,OAAO0iB,GAAYtB,EAAUpM,IACxC,GAAIhV,EAAI,EAAG,OAAO0iB,GAAYtB,EAAUnM,GACzC,CAGL,MAAO,CAAC,EAAG,GACb,CAEA,SAASiO,GAAoB9B,GAC3B,MAAMl+B,EAAS,GACf,IAAK,MAAM/W,MAACA,KAAUi1C,EACpB,QAAcx0C,IAAVT,EACJ,IAAK,MAAM6zB,KAAK7zB,EAAO+W,EAAOrW,KAAKmzB,GAErC,OAAO9c,CACT,CAEO,SAAS4+B,GAAqB9B,GACnC,MAAO,CAACtlC,EAAG6c,IAAO8P,GAAM2Y,EAAYtlC,EAAI2sB,GAAK9P,EAAI7c,GACnD,CC/SA,SAASyoC,GACPj3C,EACAi1C,EACAiC,EACAhC,GACA5qC,KACEA,EAAI6qC,KACJA,EAAIliB,MACJA,EAAKjc,OACLA,EAASw/B,GAAYtB,GAASI,QAC9BA,EAAO6B,MACPA,EAAQ,EAACtD,OACTA,EAAM3gB,MACNA,EAAKkkB,UACLA,GAAY,EAAItD,YAChBA,GAAchH,GAAStnC,IAAIxF,KAAS4sC,GACtB,MAAViH,QAA4BnzC,IAAVwyB,EAChByhB,EAAcA,eACdR,QAA8BzzC,IAAXmzC,EAAuBA,EAAS,QACrDa,EAAiBA,mBAAAlb,QACrBA,IAGF2d,GAASA,EACT,IAAK5pC,EAAKD,GAAO0J,EAwBjB,GAvBI21B,EAAAA,WAAWp/B,EAAKD,GAAO,KAAKC,EAAKD,GAAO,CAACA,EAAKC,GAAQisB,GAAWA,GACrEjsB,EAAMpO,KAAKoO,IAAIA,EAAK4pC,GACpB7pC,EAAMnO,KAAKmO,IAAIA,EAAK6pC,GAOO,mBAAhBrD,IACTA,EAAciB,GAAkBjB,SAIpBpzC,IAAVwyB,IACF4gB,EACyB,IAAvBA,EAAYztC,OAAeuvC,GAAqB9B,EAArB8B,IAAqC1iB,GAASmkB,EAAAA,UAAUvD,EAAa5gB,IAIhGsG,IAASsa,EAAcS,GAAKT,IAG5BsD,EAAW,CACb,MAAME,EAAMJ,EAAUn1C,MAAMo1C,GACtBI,EAAWD,EAAMJ,EAAUn1C,MAAMwL,GACjCiqC,EAAWN,EAAUn1C,MAAMuL,GAAOgqC,EACpCC,EAAWC,EAAUjqC,EAAM2pC,EAAUO,OAAOH,EAAME,GAC7CD,EAAWC,IAAUlqC,EAAM4pC,EAAUO,OAAOH,EAAMC,GAC5D,CAKD,OAHAtC,EAAMj+B,OAAO,CAACzJ,EAAK4pC,EAAO7pC,IAAMgoC,QAAQA,GAASoC,aAAa5D,GAC1D7gB,GAAOgiB,EAAMhiB,MAAMA,GACnBkiB,GAAMF,EAAME,KAAKA,GACd,CAAC7qC,OAAM0M,OAAQ,CAACzJ,EAAKD,GAAM6pC,QAAOrD,cAAamB,QACxD,CAUO,SAAS0C,GAAwB33C,EAAKk1C,GAAUiB,SAACA,EAAW,KAAMjrC,IACvE,OAAO+rC,GAAaj3C,EAAK43C,EAAiBA,oBAAGzB,SAAUA,GAAYA,GAmDrE,SAAsBA,GACpB,MAAoB,KAAbA,EACH0B,GACA,CACE91C,MAAMmL,GACG/N,KAAK22C,KAAK5oC,GAAK/N,KAAK24C,IAAI34C,KAAK6iC,IAAI90B,GAAIipC,GAE9CsB,OAAOvqC,GACE/N,KAAK22C,KAAK5oC,GAAK/N,KAAK24C,IAAI34C,KAAK6iC,IAAI90B,GAAI,EAAIipC,GAG1D,CA9DiF4B,CAAa5B,GAAWjB,EAAU,IAC5GhqC,EACHZ,KAAM,iBAEV,CAcO,SAAS0tC,GAA2Bh4C,EAAKk1C,GAAU5J,SAACA,EAAW,KAAMpgC,IAC1E,OAAO+rC,GACLj3C,EACAi4C,EAAAA,uBAAuB3M,SAAUA,GAAYA,GA2CjD,SAAyBA,GACvB,MAAO,CACLvpC,MAAMmL,GACG/N,KAAK22C,KAAK5oC,GAAK/N,KAAK+4C,MAAM/4C,KAAK6iC,IAAI90B,EAAIo+B,IAEhDmM,OAAOvqC,GACE/N,KAAK22C,KAAK5oC,GAAK/N,KAAKg5C,MAAMh5C,KAAK6iC,IAAI90B,IAAMo+B,EAGtD,CAnDI8M,CAAgB9M,GAChB4J,EACAhqC,EAEJ,CAEA,MAAMmtC,GAAoB,CACxBt2C,MAAMmL,GACGA,EAETuqC,OAAOvqC,GACEA,GAILorC,GAAe,CACnBv2C,MAAO5C,KAAKo5C,IACZd,OAAQt4C,KAAKq5C,KAGTX,GAAgB,CACpB91C,MAAMmL,GACG/N,KAAK22C,KAAK5oC,GAAK/N,KAAK6tC,KAAK7tC,KAAK6iC,IAAI90B,IAE3CuqC,OAAOvqC,GACE/N,KAAK22C,KAAK5oC,IAAMA,EAAIA,IClI/B,SAASurC,GAAaz4C,EAAKi1C,EAAOC,EAAUhqC,GAC1C,OAAO8pC,GAAah1C,EAAKi1C,EAAOC,EAAUhqC,EAC5C,CCOO,MAAMwtC,GAAkB10C,OAAO,WAEtC,SAAS20C,GAAa34C,EAAKi1C,EAAOC,GAAU5qC,KAACA,EAAI4yB,SAAEA,EAAQlmB,OAAEA,EAAMkc,MAAEA,EAAKsG,QAAEA,EAAOkd,KAAEA,IAWnF,OAVAxZ,EAAWmP,GAAmBnP,EAAU5yB,QACzB5J,IAAXsW,IAAsBA,EAASw/B,GAAYtB,EAAUhY,EAAUl9B,IACtD,gBAATsK,GAA0BA,IAASouC,KAAiBpuC,EAAO,WAC3DkvB,IAASxiB,EAAS++B,EAASvc,QAACxiB,IAChCi+B,EAAMj+B,OAAOA,QACCtW,IAAVwyB,IAEmB,mBAAVA,IAAsBA,EAAQA,EAAMlc,IAC/Ci+B,EAAM/hB,MAAMA,IAEP,CAAC5oB,OAAM0M,SAAQkc,QAAO+hB,QAAOyB,OAAMxZ,WAC5C,CAEO,SAAS0b,GAAmB54C,EAAKk1C,GAAU5qC,KAACA,EAAI4yB,SAAEA,EAAQlmB,OAAEA,EAAMkc,MAAEA,EAAK2gB,OAAEA,EAAMyB,QAAEA,KAAYpqC,IAGpG,IAAIwrC,EACJ,GAHAxZ,EAAWmP,GAAmBnP,EAAU5yB,QACzB5J,IAAXsW,IAAsBA,EAASw/B,GAAYtB,EAAUhY,EAAUl9B,IAE/D8sC,GAAStnC,IAAIxF,KAAS+D,GACxB2yC,EAwFJ,SAAyBxB,GACvB,MAAO,CACLltB,KAAM6wB,GAAU3D,EAAU,QAC1B4D,OAAQD,GAAU3D,EAAU,UAEhC,CA7FW6D,CAAgB7D,GACvBhiB,OAAkBxyB,IAAVwyB,EA8FZ,SAA0BwjB,GACxB,ORySwBz2C,EQzSPy2C,EAAK1uB,KR0SN,MAAT/nB,GAGF,SAAgBA,GACrB,MAAO,gBAAgBoB,KAAKpB,EAC9B,CAL0B+4C,CAAO/4C,GQ1SDg5C,EAAAA,cAAgBC,EAAAA,YRySzC,IAAmBj5C,CQxS1B,CAhGkCk5C,CAAiBzC,GAAQ9pB,GAAIsG,EAAOsb,SAC7D,GAAI1B,GAAStnC,IAAIxF,KAAS4sC,UACjBlsC,IAAVwyB,GAAiC,YAAT5oB,GAAsBA,IAASouC,KACzDxlB,EJ0JC,SAA2Blc,EAAQ68B,EAAS,SACjD,MAAM3gB,EAAQ,IAAImhB,KACXlsC,EAAGgzB,GAAK8Y,GAAaJ,EAAQ,GACpC,IAAK,MAAM5zC,KAAS+W,EAClB,GAAa,MAAT/W,EACJ,IAAc,IAAVA,EAAgBizB,EAAMxd,IAAIylB,OACzB,KAAc,IAAVl7B,EACJ,OADqBizB,EAAMxd,IAAIvN,EACxB,CAEd,MAAO,IAAI+qB,EACb,CIpKckmB,CAAkBpiC,EAAQ68B,QACpBnzC,IAAVwyB,IAAqB2gB,OAASnzC,SAErBA,IAAXmzC,QAAkCnzC,IAAVwyB,IAC1B2gB,EAAkB,YAATvpC,EAAqB,QAAU,kBAE3B5J,IAAXmzC,GACF,QAAcnzC,IAAVwyB,EAAqB,CACvB,MAAM4gB,EAAcK,GAAmBN,GACjCwF,EAAKnmB,EAAM,GACfW,EAAIX,EAAM,GAAKA,EAAM,GACvBA,EAAQ,EAAE7sB,OAAQ8G,KAAO4mC,EAAAA,UAAU5Y,GAAM2Y,EAAYuF,EAAKxlB,EAAIsH,IAAIhuB,EAC1E,MACQ+lB,EAAQ8gB,GAAcH,GAI5B,GAAIyB,IAAYgE,EAAAA,cACd,MAAM,IAAIpO,MAAM,uBAAuBlrC,4BAEzC,OAAO24C,GAAa34C,EAAKu5C,EAAAA,eAAejE,QAAQA,GAAUJ,EAAU,IAAIhqC,EAASZ,OAAM0M,SAAQkc,QAAOwjB,QACxG,CAyBA,SAAS8C,GAAWvE,EAAOC,EAAUhqC,EAASlL,GAC5C,IAAIu1C,MAACA,GAASrqC,EAId,YAHcxK,IAAV60C,GAAqBN,EAAMM,MAAOA,IAAUA,IAChDN,EAAQ0D,GAAa34C,EAAKi1C,EAAOC,EAAUhqC,IACrCqqC,MAAQA,EACPN,CACT,CAEA,SAASuB,GAAYtB,EAAUhY,EAAUl9B,GACvC,MAAMkf,EAAS,IAAIu6B,EAAAA,UACnB,IAAK,MAAMx5C,MAACA,EAAK+W,OAAEA,KAAWk+B,EAAU,CACtC,QAAex0C,IAAXsW,EAAsB,OAAOA,IACjC,QAActW,IAAVT,EACJ,IAAK,MAAM6zB,KAAK7zB,EAAOif,EAAOxJ,IAAIoe,EACnC,CACD,QAAiBpzB,IAAbw8B,EAAwB,CAC1B,MAAO3vB,EAAKD,GAAOuoC,SAAO32B,GAAQ0N,IAAIsQ,EAASlwB,MAAOkwB,GACtD,OAAOA,EAAShK,MAAM3lB,EAAK2vB,EAAS+C,OAAO3yB,GAC5C,CACD,GAAI4R,EAAO+F,KAAO,KAAQ6nB,GAAStnC,IAAIxF,KAASglB,GAC9C,MAAM,IAAIkmB,MAAM,8BAA8BlrC,uCAEhD,OAAOu3B,EAAIA,KAACrY,EAAQupB,GACtB,CAGA,SAASoQ,GAAU3D,EAAUl1C,GAC3B,IAAIC,EACJ,IAAK,MAAMy2C,KAACA,KAASxB,EAAU,CAC7B,MAAMwE,EAAYhD,IAAO12C,GACzB,QAAkBU,IAAdg5C,EACJ,QAAch5C,IAAVT,EAAqBA,EAAQy5C,OAE5B,GAAIz5C,IAAUy5C,EAAW,MAC/B,CACD,OAAOz5C,CACT,CCuHO,SAAS05C,GAAe35C,EAAKi1C,EAAOyB,GACzC,OAGF,SAAqB12C,EAAKk1C,EAAW,GAAIhqC,EAAU,CAAA,GACjD,MAAMZ,EAyIR,SAAwBtK,EAAKk1C,GAAU5qC,KAACA,EAAI0M,OAAEA,EAAMkc,MAAEA,EAAK2gB,OAAEA,EAAMsD,MAAEA,EAAKyC,WAAEA,IAE1E,GAAY,OAAR55C,GAAwB,OAARA,EAAc,MAAO,OAK5B,MAARA,GAAuB,MAARA,GAA8B,MAAd45C,IAAoBtvC,EAAOuvC,IAK/D,IAAK,MAAOvvC,KAAM6wB,KAAM+Z,EACtB,QAAUx0C,IAANy6B,EACC,QAAaz6B,IAAT4J,EAAoBA,EAAO6wB,OAC/B,GAAI7wB,IAAS6wB,EAAG,MAAM,IAAI+P,MAAM,oCAAoC5gC,SAAY6wB,KAIvF,GAAI7wB,IAASuvC,GAAgB,OAC7B,QAAan5C,IAAT4J,EAAoB,OAAOA,EAG/B,QAAe5J,IAAXsW,IAAyBk+B,EAASpoB,MAAK,EAAE7sB,gBAAqBS,IAAVT,IAAsB,OAG9E,MAAMqd,EAAOwvB,GAAStnC,IAAIxF,GAC1B,GAAIsd,IAASwkB,GAAQ,MAAO,OAC5B,GAAIxkB,IAASuvB,IAAWvvB,IAASjX,GAAQ,MAAO,SAChD,GAAIiX,IAASvZ,GAAQ,MAAO,UAK5B,IAAKiT,GAAUkc,GAAS,IAAI7sB,OAAS,EAAG,OAAOyzC,GAAcx8B,GAO7D,QAAe5c,IAAXsW,EACF,OAAIs1B,GAAUt1B,GAAgB8iC,GAAcx8B,GACxCivB,GAAWv1B,GAAgB,MAC3BsG,IAASsvB,IAAmB,MAATuK,IAAiB7C,GAAkBT,GACnD,SADoE,YAK7E,MAAM30B,EAASg2B,EAAStoB,KAAI,EAAE3sB,WAAWA,IAAO4sB,QAAQ5sB,QAAoBS,IAAVT,IAClE,OAAIif,EAAO4N,KAAKwf,IAAmBwN,GAAcx8B,GAC7C4B,EAAO4N,KAAKyf,IAAoB,MAChCjvB,IAASsvB,IAAmB,MAATuK,IAAiB7C,GAAkBT,GACnD,SADoE,WAE7E,CA/LekG,CAAe/5C,EAAKk1C,EAAUhqC,GAO3C,QACmBxK,IAAjBwK,EAAQZ,WACW5J,IAAnBwK,EAAQ8L,aACUtW,IAAlBwK,EAAQgoB,OACY,MAApBhoB,EAAQgyB,UACA,OAARl9B,GACQ,OAARA,GAoMG,UAAwBsK,KAACA,IAC9B,MAAgB,YAATA,GAA+B,UAATA,GAA6B,SAATA,GAAmBA,IAASouC,EAC/E,CArMIsB,CAAe,CAAC1vC,SAChB,CACA,MAAM4U,EAASg2B,EAAStoB,KAAI,EAAE3sB,WAAWA,IAAO4sB,QAAQ5sB,QAAoBS,IAAVT,IAC9Dif,EAAO4N,KAAKyf,IACdmC,GACE,0CAA0C1uC,iGAAmGi6C,GAC3I3vC,yQACsQtK,0FAA4FA,eAAiBi6C,GACnX3vC,QAGG4U,EAAO4N,KAAK0f,IACnBkC,GACE,0CAA0C1uC,uNAAyNi6C,GACjQ3vC,8RAC2RtK,eAAiBi6C,GAC5S3vC,QAGG4U,EAAO4N,KAAK2f,KACnBiC,GACE,0CAA0C1uC,wMAA0Mi6C,GAClP3vC,6FAC0FtK,+FAAiGA,eAAiBi6C,GAC5M3vC,OAGP,CAMD,OAJAY,EAAQZ,KAAOA,EAIPA,GACN,IAAK,YACL,IAAK,iBACL,IAAK,gBACL,IAAK,gBACL,IAAK,mBACL,IAAK,WACL,IAAK,aACL,IAAK,SACL,IAAK,OACL,IAAK,YACL,IAAK,WACL,IAAK,MACL,IAAK,MACL,IAAK,SACHY,EAAUgvC,GAAWhF,EAAUhqC,EAASqgC,IACxC,MACF,IAAK,WACH,OAAQuB,GAAStnC,IAAIxF,IACnB,KAAKglB,GACH9Z,EAAUgvC,GAAWhF,EAAUhqC,EAASqgC,IACxC,MACF,KAAKxnC,GACHmH,EAAUgvC,GAAWhF,EAAUhqC,EAASivC,IAG5C,MACF,IAAK,MACL,IAAK,OACHjvC,EAAUgvC,GAAWhF,EAAUhqC,EAASwgC,IAI5C,OAAQphC,GACN,IAAK,YACH,OHxPC,SAA8BtK,EAAKk1C,EAAUhqC,GAClD,OAAO+rC,GAAaj3C,EAAKo6C,EAAcA,iBAAI/B,GAAmBnD,EAAUhqC,EAC1E,CGsPamvC,CAAqBr6C,EAAKk1C,EAAUhqC,GAC7C,IAAK,iBACH,OHtPC,SAAkClL,EAAKk1C,EAAUhqC,GACtD,OAAOysC,GAAwB33C,EAAKk1C,EAAU,IAAIhqC,EAASirC,SAAU,IACvE,CGoPamE,CAAyBt6C,EAAKk1C,EAAUhqC,GACjD,IAAK,gBACH,OAAOysC,GAAwB33C,EAAKk1C,EAAUhqC,GAChD,IAAK,gBACH,OH/OC,SACLlL,EACAk1C,GACAqF,KAACA,EAAO,GAAEpD,MAAEA,EAAQ,EAACngC,OAAEA,EAASw/B,GAAYtB,EAAUiC,EAAQ,EAAIpO,GAAWD,OAAc59B,IAE3F,OAAO+rC,GAAaj3C,EAAKw6C,EAAAA,oBAAoBD,KAAMA,GAAQA,GAAQjC,GAAcpD,EAAU,CACzFl+B,SACAmgC,WACGjsC,GAEP,CGqOauvC,CAAwBz6C,EAAKk1C,EAAUhqC,GAChD,IAAK,mBACH,OAAO8sC,GAA2Bh4C,EAAKk1C,EAAUhqC,GACnD,IAAK,cACL,IAAK,UACL,KAAKwtC,GACH,OAAOE,GAAmB54C,EAAKk1C,EAAUhqC,GAC3C,IAAK,WACL,IAAK,aACL,IAAK,SACH,OJhNC,SAA2BlL,EAAKk1C,EAAUhqC,GAC/C,OAAO8pC,GAAah1C,EAAK06C,EAAAA,cAAexF,EAAUhqC,EACpD,CI8MayvC,CAAkB36C,EAAKk1C,EAAUhqC,GAC1C,IAAK,OACH,OJ9MC,SAAyBlL,EAAKk1C,EAAUhqC,GAC7C,OAAOgrC,GAAel2C,EAAKk1C,EAAU,IAAIhqC,EAASirC,SAAU,IAC9D,CI4MayE,CAAgB56C,EAAKk1C,EAAUhqC,GACxC,IAAK,YACH,OAAOmrC,GAAqBr2C,EAAKk1C,EAAUhqC,GAC7C,IAAK,WACH,OJlMC,SACLlL,EACAk1C,GACAhiB,MACEA,EAAK2nB,UACLA,QAAsBn6C,IAAVwyB,EAAsB,GAAKA,EAAQ,IAAIA,IAAQ7sB,QAAM8G,EACjEA,EAAI0tC,EAAShH,OACbA,EAAS,SAAQ78B,OACjBA,EAASggC,GAAoB9B,GAASI,QACtCA,EAAOxB,YACPA,EAAWta,QACXA,IAcF,YAXc94B,IAAVwyB,IACFA,OACkBxyB,IAAhBozC,EACIC,EAAQA,SAACD,EAAa3mC,GACtB2/B,GAAStnC,IAAIxF,KAAS4sC,GACtBqH,GAAaJ,EAAQ1mC,QACrBzM,GAEJsW,EAAO3Q,OAAS,IAClB2Q,EAAS8jC,EAAaA,cAAC9jC,OAAkBtW,IAAVwyB,EAAsB,CAAC7sB,OAAQ8G,GAAK+lB,GAAO2nB,aAErExE,GAAqBr2C,EAAKk1C,EAAU,CAACl+B,SAAQkc,QAAOsG,UAAS8b,WACtE,CIwKayF,CAAoB/6C,EAAKk1C,EAAUhqC,GAC5C,IAAK,WACH,OJxKC,SACLlL,EACAk1C,GACAhiB,MACEA,EAAK/lB,EACLA,QAAczM,IAAVwyB,EAAsB,GAAKA,EAAQ,IAAIA,IAAQ7sB,QAAMwtC,OACzDA,EAAS,SAAQ78B,OACjBA,EAASq+B,GAAgBr1C,EAAKk1C,GAASI,QACvCA,EAAOxB,YACPA,EAAWta,QACXA,IAGF,MAAOjsB,EAAKD,GAAOuoC,EAAMA,OAAC7+B,GAC1B,IAAIgkC,EAiBJ,YAhBct6C,IAAVwyB,GACF8nB,EAAaC,EAAAA,MAAM1tC,EAAKD,EAAKH,GACzB6tC,EAAW,IAAMztC,GAAKytC,EAAW3rB,OAAO,EAAG,GAC3C2rB,EAAWA,EAAW30C,OAAS,IAAMiH,GAAK0tC,EAAWtnB,MACzDvmB,EAAI6tC,EAAW30C,OAAS,EACxB6sB,OACkBxyB,IAAhBozC,EACIC,EAAQA,SAACD,EAAa3mC,GACtB2/B,GAAStnC,IAAIxF,KAAS4sC,GACtBqH,GAAaJ,EAAQ1mC,QACrBzM,IAENs6C,EAAajH,EAAQA,SAACW,oBAAkBnnC,EAAKD,GAAMH,EAAI,GAAGxC,MAAM,GAAI,GAChE4C,aAAe8mB,OAAM2mB,EAAaA,EAAWpuB,KAAK1f,GAAM,IAAImnB,KAAKnnB,OAEnEw/B,GAAQb,GAAS70B,IAAW,GAAGgkC,EAAWxhB,UACvC6c,GAAqBr2C,EAAKk1C,EAAU,CAACl+B,OAAQgkC,EAAY9nB,QAAOsG,UAAS8b,WAClF,CIwIa4F,CAAoBl7C,EAAKk1C,EAAUhqC,GAC5C,IAAK,MACH,OAAOgrC,GAAel2C,EAAKk1C,EAAUhqC,GACvC,IAAK,MACH,OJhNC,SAAwBlL,EAAKk1C,GAAUqF,KAACA,EAAO,GAAEvjC,OAAEA,EAAS+/B,GAAe7B,MAAchqC,IAC9F,OAAO8pC,GAAah1C,EAAKm7C,EAAQA,WAAGZ,KAAKA,GAAOrF,EAAU,IAAIhqC,EAAS8L,UACzE,CI8MaokC,CAAep7C,EAAKk1C,EAAUhqC,GACvC,IAAK,SACH,OJ9MC,SAA2BlL,EAAKk1C,GAAU5J,SAACA,EAAW,KAAMpgC,IACjE,OAAO8pC,GAAah1C,EAAKq7C,gBAAc/P,SAASA,GAAW4J,EAAUhqC,EACvE,CI4MaowC,CAAkBt7C,EAAKk1C,EAAUhqC,GAC1C,IAAK,MACH,OF1VC,SAAwBlL,EAAKk1C,EAAUhqC,GAC5C,OAAOutC,GAAaz4C,EAAKu7C,EAAAA,WAAYrG,EAAUhqC,EACjD,CEwVaswC,CAAex7C,EAAKk1C,EAAUhqC,GACvC,IAAK,OACH,OFhWC,SAAyBlL,EAAKk1C,EAAUhqC,GAC7C,OAAOutC,GAAaz4C,EAAKy7C,EAAAA,YAAavG,EAAUhqC,EAClD,CE8VawwC,CAAgB17C,EAAKk1C,EAAUhqC,GACxC,IAAK,QACH,OD7SC,SAA0BlL,EAAKk1C,GAAUyG,MAACA,EAAQ,GAAGpjB,QAAEA,EAAU,MAAQrtB,IAC9E,OAAOsuC,GAAWoC,EAAAA,aAAaD,MAAMA,GAAOpjB,QAAQA,GAAU2c,EAAUhqC,EAASlL,EACnF,CC2Sa67C,CAAiB77C,EAAKk1C,EAAUhqC,GACzC,IAAK,OACH,OD3SC,SACLlL,EACAk1C,GACAyG,MACEA,EAAQ,GAAGpjB,QACXA,EAAU,GAAGujB,aACbA,EAAevjB,EAAOwjB,aACtBA,GAAuB,OAAR/7C,GAAwB,OAARA,EAAe,EAAIu4B,MAC/CrtB,IAGL,OAAOsuC,GACLwC,cAAYL,MAAMA,GAAOG,aAAaA,GAAcC,aAAaA,GACjE7G,EACAhqC,EACAlL,EAEJ,CC0Rai8C,CAAgBj8C,EAAKk1C,EAAUhqC,GACxC,IAAK,WACH,OAAO4hC,GAAStnC,IAAIxF,KAASglB,GJjH1B,CAAC1a,KAAM,WAAY2qC,MAAOiH,EAAAA,iBIiHmC,CAAC5xC,KAAM,YACzE,UAAK5J,EACH,OACF,QACE,MAAM,IAAIwqC,MAAM,uBAAuB5gC,KAE7C,CApIS6xC,CAAYn8C,OAAcU,IAATg2C,OAAqBh2C,EAAY,CAAC,CAACg2C,SAAQ,IAAIzB,GACzE,CAqIA,SAASgF,GAAgB3vC,GACvB,MAAuB,iBAATA,EAAoBA,EAAK8xC,YAAc9xC,CACvD,CAGA,MAAMuvC,GAAiB,CAAC/2C,SAAU,IAAM,cA2DxC,SAASg3C,GAAcx8B,GACrB,OAAQA,GACN,KAAK0H,GACH,MAAO,QACT,KAAK4nB,GACH,OAAO8L,GACT,QACE,MAAO,UAEb,CAuCA,SAASwB,GAAWhF,GAAUl+B,OAACA,KAAW9L,GAAUmxC,GAClD,IAAK,MAAMC,KAAKpH,OACEx0C,IAAZ47C,EAAEr8C,QACJq8C,EAAEr8C,MAAQo8C,EAAaC,EAAEr8C,QAG7B,MAAO,CACL+W,YAAmBtW,IAAXsW,EAAuBA,EAASqlC,EAAarlC,MAClD9L,EAEP,CAEA,SAASivC,GAAcj7B,GACrB,OAAO0N,GAAI1N,EAAQsvB,GACrB,CAuBA,SAAS+N,IAAYtH,MAACA,EAAK3qC,KAAEA,EAAI0M,OAAEA,EAAMkc,MAAEA,EAAK4gB,YAAEA,EAAW5W,SAAEA,EAAQga,UAAEA,EAASsF,QAAEA,EAAOrF,MAAEA,IAC3F,GAAa,aAAT7sC,EAAqB,MAAO,CAACA,KAAM,WAAYvI,MAAQ8xB,GAAMA,EAAG4jB,OAAS5jB,GAAMA,GACnF,MAAMyhB,EAAUL,EAAMK,QAAUL,EAAMK,eAAY50C,EAClD,MAAO,CACL4J,OACA0M,OAAQrM,GAAMqM,WACAtW,IAAVwyB,GAAuB,CAACA,MAAOvoB,GAAMuoB,YACvBxyB,IAAdw2C,GAA2B,CAACA,gBAC5BsF,GAAW,CAACA,mBACA97C,IAAZ40C,GAAyB,CAACA,mBACb50C,IAAbw8B,GAA0B,CAACA,oBAGXx8B,IAAhBozC,GAA6B,CAACA,kBAC9BmB,EAAMhiB,OAAS,CAACA,MAAOgiB,EAAMhiB,iBAGnBvyB,IAAVy2C,GAAuB,CAACA,QAAOC,WAAW,MAG1CnC,EAAMsF,MAAQ,CAACA,KAAMtF,EAAMsF,WAG3BtF,EAAMkB,UAAY,CAACA,SAAUlB,EAAMkB,eAGnClB,EAAM3J,UAAY,CAACA,SAAU2J,EAAM3J,eAGnC2J,EAAM0G,OAAS,CAACA,MAAO1G,EAAM0G,QAASpG,MAAON,EAAMM,YACnDN,EAAM1c,UACP0c,EAAM6G,aACH,CAACA,aAAc7G,EAAM6G,eAAgBC,aAAc9G,EAAM8G,gBACzD,CAACxjB,QAAS0c,EAAM1c,eAClB0c,EAAMwH,WAAa,CAACA,UAAWxH,EAAMwH,YAAaz+B,KAAMi3B,EAAMj3B,QAGlEjc,MAAQo5B,GAAM8Z,EAAM9Z,MAChB8Z,EAAMwC,QAAU,CAACA,OAAStc,GAAM8Z,EAAMwC,OAAOtc,IAErD,CCziBM,SAAUuhB,GAAgBC,GAC9B,IACE,IAAMC,EAAY98C,OAAOyJ,KAAKozC,GAAe,GAE7C,ODweG,SAAezxC,EAAU,IAC9B,IAAI+pC,EACJ,IAAK,MAAMj1C,KAAOkL,EAChB,GAAK4hC,GAAS/jC,IAAI/I,IACb8rC,GAAe5gC,EAAQlL,IAA5B,CACA,QAAcU,IAAVu0C,EAAqB,MAAM,IAAI/J,MAAM,qDACzC+J,EAAQsH,GAAY5C,GAAe35C,EAAKkL,EAAQlL,IAFJ,CAI9C,QAAcU,IAAVu0C,EAAqB,MAAM,IAAI/J,MAAM,4CACzC,OAAO+J,CACT,CClfWA,IAAK,KACT2H,IAAU98C,OAAAutB,OAAAvtB,OAAAutB,OAAA,CAAA,EACNsvB,EAAcC,IACjB,CAAA3pB,OAAO,0GAGZ,CAAC,MAAO7yB,GACP,OAAO,IACT,UACF,CAmBM,SAAUy8C,GACdla,EACAma,EACAH,EACAI,GAEAj9C,OAAOmkB,QAvBT,SAAoB64B,EAAaH,GAC/B,IAAMK,EAAyD,CAAA,EAa/D,OAXIL,EAAcp7C,eAAe,YAC/By7C,EAAOh1B,KAAO,WAAA,OAEZ20B,EAAc9P,QAASoQ,WAAarrB,EAAwB,EAC9DorB,EAAO,gBAAkB,SAACnpB,GAAY,OAAKipB,eAAAA,EAAQ/6C,MAAM8xB,EAAE,GAE3DmpB,EAAOh1B,KAAO,SAAC6L,GAAY,MAEX,iBAANA,IAAkBA,aAAC,EAADA,EAAGiU,WAAW,MAAOjU,EAAIipB,aAAA,EAAAA,EAAQ/6C,MAAM8xB,IAG9DmpB,CACT,CAQiBE,CAAWJ,EAAQH,IAAehwB,SAAQ,SAAAoR,GAAA,IAAAof,EAAAC,EAAArf,EAAA,GAAEsf,EAAIF,EAAA,GAAEh2C,EAAGg2C,EAAA,GAAA,OAElExa,EAAKxhB,MAAMk8B,GAAM,SAACxpB,GAAqB,OAErC1sB,EAAI41C,EAAWlpB,EAAgBkpB,GAA8BlpB,EAAE,MACrE,CClD4D,IAKvCypB,GAAS,WAG5B,SAAAA,EAAYvrB,GAAoBC,OAAAsrB,GAC9B99C,KAAKuyB,SAAWA,CAClB,CAwCC,OAxCAI,EAAAmrB,EAAA,CAAA,CAAAt9C,IAAA,WAAAC,MAED,WACE,IAAQ8xB,EAAavyB,KAAbuyB,SACRwrB,EAA6BxrB,EAAS7mB,QAAQA,QAAtC+pC,EAAKsI,EAALtI,MAAOthB,EAAS4pB,EAAT5pB,UACT6pB,EAAad,GAAgBzH,GAEnCljB,EAASyO,gBACNxF,KAAMQ,UAAU,cAChBA,UAAU,OACVA,UAAU,KACVlsB,MAAK,SAACukB,GAAY,OAAK9B,EAASe,iBAAiBttB,IAAIquB,IAAM,EAAE,IAC7DlyB,MAAK,SAACw0B,GACL0mB,GAAgB1mB,EAAQ4N,OAAO,QAASyZ,EAAYvI,EAAQ,IAC9D,IACCtzC,MAAK,SAACw0B,GACLA,EACG4N,OAAO,QACPrI,KAAK,SAAS,SAAC7H,GACd,IAAM4pB,EACJC,EAAAA,IAAIF,aAAU,EAAVA,EAAYz7C,MAAM8xB,EAAEC,IAAInJ,EAAI,GAAK,OAAS,OAC5CiiB,EAAQjZ,EAAUiZ,QAAU/Y,EAAEC,EAAI2pB,EAAe,MAMrD,OAJIvW,GAAW0F,KACbA,EAAQA,EAAM/Y,EAAEsH,EAAGtH,EAAEC,EAAG0pB,aAAU,EAAVA,EAAYz7C,MAAM8xB,EAAEC,KAGzC8Y,EAILj+B,SAAAA,OAAgBi+B,EAAK,KAHZ,IAIV,IACApN,MAAK,SAAC3L,EAAcrlB,EAAWoxB,GAAY,OAE1C7N,EAASyB,WAAW0I,OAAOrI,EAAEsH,EAAGxH,EAAU4L,MAAO1L,EAAEC,EAAG8L,EAAMpxB,MAClE,IACC7M,MAAK,WACJowB,EAASmC,aAAajY,KAAK,OAC7B,GACJ,KAACqhC,CAAA,CA7C2B,GCyB9B,SAASK,GAAG19C,EAAO29C,GACjB,OAAO39C,IAAU29C,GAAU39C,GAAUA,GAAS29C,GAAUA,CAC1D,CCxBA,SAASC,GAAar1B,EAAOxoB,GAE3B,IADA,IAAIqG,EAASmiB,EAAMniB,OACZA,KACL,GAAIs3C,GAAGn1B,EAAMniB,GAAQ,GAAIrG,GACvB,OAAOqG,EAGX,OAAQ,CACV,CCfA,IAGIgpB,GAHate,MAAMrP,UAGC2tB,OCOxB,SAASyuB,GAAU75B,GACjB,IAAIxW,GAAS,EACTpH,EAAoB,MAAX4d,EAAkB,EAAIA,EAAQ5d,OAG3C,IADA7G,KAAKkU,UACIjG,EAAQpH,GAAQ,CACvB,IAAIuP,EAAQqO,EAAQxW,GACpBjO,KAAKsJ,IAAI8M,EAAM,GAAIA,EAAM,GAC1B,CACH,CAGAkoC,GAAUp8C,UAAUgS,MClBpB,WACElU,KAAKu+C,SAAW,GAChBv+C,KAAKylB,KAAO,CACd,EDgBA64B,GAAUp8C,UAAkB,ODT5B,SAAyB1B,GACvB,IAAIsP,EAAO9P,KAAKu+C,SACZtwC,EAAQowC,GAAavuC,EAAMtP,GAE/B,QAAIyN,EAAQ,KAIRA,GADY6B,EAAKjJ,OAAS,EAE5BiJ,EAAKokB,MAELrE,GAAO1tB,KAAK2N,EAAM7B,EAAO,KAEzBjO,KAAKylB,MACA,EACT,ECLA64B,GAAUp8C,UAAU8D,IEhBpB,SAAsBxF,GACpB,IAAIsP,EAAO9P,KAAKu+C,SACZtwC,EAAQowC,GAAavuC,EAAMtP,GAE/B,OAAOyN,EAAQ,OAAI/M,EAAY4O,EAAK7B,GAAO,EAC7C,EFYAqwC,GAAUp8C,UAAUqH,IGjBpB,SAAsB/I,GACpB,OAAO69C,GAAar+C,KAAKu+C,SAAU/9C,IAAQ,CAC7C,EHgBA89C,GAAUp8C,UAAUoH,IIjBpB,SAAsB9I,EAAKC,GACzB,IAAIqP,EAAO9P,KAAKu+C,SACZtwC,EAAQowC,GAAavuC,EAAMtP,GAQ/B,OANIyN,EAAQ,KACRjO,KAAKylB,KACP3V,EAAK3O,KAAK,CAACX,EAAKC,KAEhBqP,EAAK7B,GAAO,GAAKxN,EAEZT,IACT,ECpBA,IAEAw+C,GAFiBhjB,GAAK,sBCAlBijB,GAAc,WAChB,IAAIl7C,EAAM,SAAS5B,KAAK+8C,IAAcA,GAAW30C,MAAQ20C,GAAW30C,KAAK6W,UAAY,IACrF,OAAOrd,EAAO,iBAAmBA,EAAO,EAC1C,ICLA,IAGIo7C,GAHY1+C,SAASiC,UAGIoB,SAS7B,SAASs7C,GAASr3C,GAChB,GAAY,MAARA,EAAc,CAChB,IACE,OAAOo3C,GAAax8C,KAAKoF,EAC/B,CAAM,MAAOoiB,GAAK,CACd,IACE,OAAQpiB,EAAO,EACrB,CAAM,MAAOoiB,GAAK,CACf,CACD,MAAO,EACT,CCdA,IAGIk1B,GAAe,8BAGfC,GAAY7+C,SAASiC,UACrBykC,GAAcrmC,OAAO4B,UAGrBy8C,GAAeG,GAAUx7C,SAGzBvB,GAAiB4kC,GAAY5kC,eAG7Bg9C,GAAapd,OAAO,IACtBgd,GAAax8C,KAAKJ,IAAgBqJ,QAjBjB,sBAiBuC,QACvDA,QAAQ,yDAA0D,SAAW,KAWhF,SAAS4zC,GAAav+C,GACpB,SAAKwF,GAASxF,KFxBE8G,EEwBiB9G,EFvBxBg+C,IAAeA,MAAcl3C,ME0BxBmgC,GAAWjnC,GAASs+C,GAAaF,IAChCh9C,KAAK+8C,GAASn+C,IF5B/B,IAAkB8G,CE6BlB,CCjCA,SAAS03C,GAAUn1C,EAAQtJ,GACzB,IAAIC,ECJN,SAAkBqJ,EAAQtJ,GACxB,OAAiB,MAAVsJ,OAAiB5I,EAAY4I,EAAOtJ,EAC7C,CDEc0+C,CAASp1C,EAAQtJ,GAC7B,OAAOw+C,GAAav+C,GAASA,OAAQS,CACvC,CEVA,IAEAi+C,GAFUF,GAAUzjB,GAAM,OCC1B4jB,GAFmBH,GAAU3+C,OAAQ,UCArC,IAMIyB,GAHczB,OAAO4B,UAGQH,eCNjC,IAGIA,GAHczB,OAAO4B,UAGQH,eCOjC,SAASs9C,GAAK56B,GACZ,IAAIxW,GAAS,EACTpH,EAAoB,MAAX4d,EAAkB,EAAIA,EAAQ5d,OAG3C,IADA7G,KAAKkU,UACIjG,EAAQpH,GAAQ,CACvB,IAAIuP,EAAQqO,EAAQxW,GACpBjO,KAAKsJ,IAAI8M,EAAM,GAAIA,EAAM,GAC1B,CACH,CCZA,SAASkpC,GAAWlyB,EAAK5sB,GACvB,ICJiBC,EACbqK,EDGAgF,EAAOsd,EAAImxB,SACf,OCHgB,WADZzzC,SADarK,EDKAD,KCHmB,UAARsK,GAA4B,UAARA,GAA4B,WAARA,EACrD,cAAVrK,EACU,OAAVA,GDEDqP,EAAmB,iBAAPtP,EAAkB,SAAW,QACzCsP,EAAKsd,GACX,CEFA,SAASmyB,GAAS96B,GAChB,IAAIxW,GAAS,EACTpH,EAAoB,MAAX4d,EAAkB,EAAIA,EAAQ5d,OAG3C,IADA7G,KAAKkU,UACIjG,EAAQpH,GAAQ,CACvB,IAAIuP,EAAQqO,EAAQxW,GACpBjO,KAAKsJ,IAAI8M,EAAM,GAAIA,EAAM,GAC1B,CACH,CHGAipC,GAAKn9C,UAAUgS,MIhBf,WACElU,KAAKu+C,SAAWiB,GAAeA,GAAa,MAAQ,CAAA,EACpDx/C,KAAKylB,KAAO,CACd,EJcA45B,GAAKn9C,UAAkB,OKhBvB,SAAoB1B,GAClB,IAAIuH,EAAS/H,KAAKuJ,IAAI/I,WAAeR,KAAKu+C,SAAS/9C,GAEnD,OADAR,KAAKylB,MAAQ1d,EAAS,EAAI,EACnBA,CACT,ELaAs3C,GAAKn9C,UAAU8D,IFPf,SAAiBxF,GACf,IAAIsP,EAAO9P,KAAKu+C,SAChB,GAAIiB,GAAc,CAChB,IAAIz3C,EAAS+H,EAAKtP,GAClB,MArBiB,8BAqBVuH,OAA4B7G,EAAY6G,CAChD,CACD,OAAOhG,GAAeI,KAAK2N,EAAMtP,GAAOsP,EAAKtP,QAAOU,CACtD,EECAm+C,GAAKn9C,UAAUqH,IDXf,SAAiB/I,GACf,IAAIsP,EAAO9P,KAAKu+C,SAChB,OAAOiB,QAA8Bt+C,IAAd4O,EAAKtP,GAAsBuB,GAAeI,KAAK2N,EAAMtP,EAC9E,ECSA6+C,GAAKn9C,UAAUoH,IMdf,SAAiB9I,EAAKC,GACpB,IAAIqP,EAAO9P,KAAKu+C,SAGhB,OAFAv+C,KAAKylB,MAAQzlB,KAAKuJ,IAAI/I,GAAO,EAAI,EACjCsP,EAAKtP,GAAQg/C,SAA0Bt+C,IAAVT,EAfV,4BAekDA,EAC9DT,IACT,EHKAu/C,GAASr9C,UAAUgS,MIdnB,WACElU,KAAKylB,KAAO,EACZzlB,KAAKu+C,SAAW,CACdkB,KAAQ,IAAIJ,GACZjyB,IAAO,IAAKmM,IAAO+kB,IACnBpuC,OAAU,IAAImvC,GAElB,EJQAE,GAASr9C,UAAkB,OKf3B,SAAwB1B,GACtB,IAAIuH,EAASu3C,GAAWt/C,KAAMQ,GAAa,OAAEA,GAE7C,OADAR,KAAKylB,MAAQ1d,EAAS,EAAI,EACnBA,CACT,ELYAw3C,GAASr9C,UAAU8D,IMhBnB,SAAqBxF,GACnB,OAAO8+C,GAAWt/C,KAAMQ,GAAKwF,IAAIxF,EACnC,ENeA++C,GAASr9C,UAAUqH,IOjBnB,SAAqB/I,GACnB,OAAO8+C,GAAWt/C,KAAMQ,GAAK+I,IAAI/I,EACnC,EPgBA++C,GAASr9C,UAAUoH,IQjBnB,SAAqB9I,EAAKC,GACxB,IAAIqP,EAAOwvC,GAAWt/C,KAAMQ,GACxBilB,EAAO3V,EAAK2V,KAIhB,OAFA3V,EAAKxG,IAAI9I,EAAKC,GACdT,KAAKylB,MAAQ3V,EAAK2V,MAAQA,EAAO,EAAI,EAC9BzlB,IACT,ECLA,SAAS0/C,GAAMj7B,GACb,IAAI3U,EAAO9P,KAAKu+C,SAAW,IAAID,GAAU75B,GACzCzkB,KAAKylB,KAAO3V,EAAK2V,IACnB,CAGAi6B,GAAMx9C,UAAUgS,MCXhB,WACElU,KAAKu+C,SAAW,IAAID,GACpBt+C,KAAKylB,KAAO,CACd,EDSAi6B,GAAMx9C,UAAkB,OEZxB,SAAqB1B,GACnB,IAAIsP,EAAO9P,KAAKu+C,SACZx2C,EAAS+H,EAAa,OAAEtP,GAG5B,OADAR,KAAKylB,KAAO3V,EAAK2V,KACV1d,CACT,EFOA23C,GAAMx9C,UAAU8D,IGbhB,SAAkBxF,GAChB,OAAOR,KAAKu+C,SAASv4C,IAAIxF,EAC3B,EHYAk/C,GAAMx9C,UAAUqH,IIdhB,SAAkB/I,GAChB,OAAOR,KAAKu+C,SAASh1C,IAAI/I,EAC3B,EJaAk/C,GAAMx9C,UAAUoH,IKPhB,SAAkB9I,EAAKC,GACrB,IAAIqP,EAAO9P,KAAKu+C,SAChB,GAAIzuC,aAAgBwuC,GAAW,CAC7B,IAAIqB,EAAQ7vC,EAAKyuC,SACjB,IAAKhlB,IAAQomB,EAAM94C,OAAS+4C,IAG1B,OAFAD,EAAMx+C,KAAK,CAACX,EAAKC,IACjBT,KAAKylB,OAAS3V,EAAK2V,KACZzlB,KAET8P,EAAO9P,KAAKu+C,SAAW,IAAIgB,GAASI,EACrC,CAGD,OAFA7vC,EAAKxG,IAAI9I,EAAKC,GACdT,KAAKylB,KAAO3V,EAAK2V,KACVzlB,IACT,EC7BA,IAAIK,GAAkB,WACpB,IACE,IAAIkH,EAAO03C,GAAU3+C,OAAQ,kBAE7B,OADAiH,EAAK,CAAE,EAAE,GAAI,CAAA,GACNA,CACX,CAAI,MAAOoiB,GAAK,CAChB,CANkB,GAQlBk2B,GAAex/C,GCCf,SAASy/C,GAAgBh2C,EAAQtJ,EAAKC,GACzB,aAAPD,GAAsBH,GACxBA,GAAeyJ,EAAQtJ,EAAK,CAC1BE,cAAgB,EAChBqI,YAAc,EACdtI,MAASA,EACTE,UAAY,IAGdmJ,EAAOtJ,GAAOC,CAElB,CCVA,SAASs/C,GAAiBj2C,EAAQtJ,EAAKC,SACtBS,IAAVT,IAAwB09C,GAAGr0C,EAAOtJ,GAAMC,SAC9BS,IAAVT,KAAyBD,KAAOsJ,KACnCg2C,GAAgBh2C,EAAQtJ,EAAKC,EAEjC,CCJA,ICNuBu/C,GDMnBC,GCLK,SAASn2C,EAAQo2C,EAAUC,GAMhC,IALA,IAAIlyC,GAAS,EACToQ,EAAW/d,OAAOwJ,GAClByW,EAAQ4/B,EAASr2C,GACjBjD,EAAS0Z,EAAM1Z,OAEZA,KAAU,CACf,IAAIrG,EAAM+f,EAAMy/B,GAAYn5C,IAAWoH,GACvC,IAA+C,IAA3CiyC,EAAS7hC,EAAS7d,GAAMA,EAAK6d,GAC/B,KAEH,CACD,OAAOvU,CACX,EDNAs2C,GAAeH,GEZXI,GAAgC,iBAAXlgD,SAAuBA,UAAYA,QAAQmgD,UAAYngD,QAG5EogD,GAAaF,IAAgC,iBAAVn0B,QAAsBA,SAAWA,OAAOo0B,UAAYp0B,OAMvFs0B,GAHgBD,IAAcA,GAAWpgD,UAAYkgD,GAG5B7kB,GAAKglB,YAASt/C,EACvCu/C,GAAcD,GAASA,GAAOC,iBAAcv/C,ECVhD,IAEAw/C,GAFiBllB,GAAKqQ,WCOtB,SAAS8U,GAAgBC,EAAYC,GACnC,ICFwBC,EACpB/4C,EDCA6mB,EAASiyB,GCFWC,EDEeF,EAAWhyB,OCD9C7mB,EAAS,IAAI+4C,EAAYh1C,YAAYg1C,EAAYC,YACrD,IAAIlV,GAAW9jC,GAAQuB,IAAI,IAAIuiC,GAAWiV,IACnC/4C,GDDqD64C,EAAWhyB,OACvE,OAAO,IAAIgyB,EAAW90C,YAAY8iB,EAAQgyB,EAAWI,WAAYJ,EAAW/5C,OAC9E,CEVA,IAAIob,GAAe3hB,OAAO4hB,OA0B1B++B,GAhBkB,WAChB,SAASn3C,IAAW,CACpB,OAAO,SAAS0H,GACd,IAAKvL,GAASuL,GACZ,MAAO,GAET,GAAIyQ,GACF,OAAOA,GAAazQ,GAEtB1H,EAAO5H,UAAYsP,EACnB,IAAIzJ,EAAS,IAAI+B,EAEjB,OADAA,EAAO5H,eAAYhB,EACZ6G,CACX,CACA,ICnBA,SAASm5C,GAAQ35C,EAAMmwC,GACrB,OAAO,SAASjiB,GACd,OAAOluB,EAAKmwC,EAAUjiB,GAC1B,CACA,CCTA,IAEA0rB,GAFmBD,GAAQ5gD,OAAOmiB,eAAgBniB,QCF9CqmC,GAAcrmC,OAAO4B,UASzB,SAASk/C,GAAY3gD,GACnB,IAAI4gD,EAAO5gD,GAASA,EAAMqL,YAG1B,OAAOrL,KAFqB,mBAAR4gD,GAAsBA,EAAKn/C,WAAcykC,GAG/D,CCSA,SAAS2a,GAAa7gD,GACpB,OAAgB,MAATA,GAAiC,iBAATA,CACjC,CCbA,SAAS8gD,GAAgB9gD,GACvB,OAAO6gD,GAAa7gD,IAVR,sBAUkBwmC,GAAWxmC,EAC3C,CCXA,IAAIkmC,GAAcrmC,OAAO4B,UAGrBH,GAAiB4kC,GAAY5kC,eAG7BgL,GAAuB45B,GAAY55B,qBAoBnCy0C,GAAcD,GAAgB,WAAa,OAAO/+C,SAAU,CAA9B,IAAsC++C,GAAkB,SAAS9gD,GACjG,OAAO6gD,GAAa7gD,IAAUsB,GAAeI,KAAK1B,EAAO,YACtDsM,GAAqB5K,KAAK1B,EAAO,SACtC,EAEAghD,GAAeD,GClCXE,GAAmB,iBA4BvB,SAASC,GAASlhD,GAChB,MAAuB,iBAATA,GACZA,GAAS,GAAKA,EAAQ,GAAK,GAAKA,GAASihD,EAC7C,CCJA,SAASE,GAAYnhD,GACnB,OAAgB,MAATA,GAAiBkhD,GAASlhD,EAAMoG,UAAY6gC,GAAWjnC,EAChE,CC1BA,IAAI4/C,GAAgC,iBAAXlgD,SAAuBA,UAAYA,QAAQmgD,UAAYngD,QAG5EogD,GAAaF,IAAgC,iBAAVn0B,QAAsBA,SAAWA,OAAOo0B,UAAYp0B,OAMvFs0B,GAHgBD,IAAcA,GAAWpgD,UAAYkgD,GAG5B7kB,GAAKglB,YAASt/C,EAwB3C2gD,IArBqBrB,GAASA,GAAOsB,cAAW5gD,ICHhD,WACE,OAAO,CACT,ECVI6gD,GAAY,kBAGZjD,GAAY7+C,SAASiC,UACrBykC,GAAcrmC,OAAO4B,UAGrBy8C,GAAeG,GAAUx7C,SAGzBvB,GAAiB4kC,GAAY5kC,eAG7BigD,GAAmBrD,GAAax8C,KAAK7B,QCbzC,IA2BI2hD,GAAiB,CAAA,EACrBA,GAZiB,yBAYYA,GAXZ,yBAYjBA,GAXc,sBAWYA,GAVX,uBAWfA,GAVe,uBAUYA,GATZ,uBAUfA,GATsB,8BASYA,GARlB,wBAShBA,GARgB,yBAQY,EAC5BA,GAjCc,sBAiCYA,GAhCX,kBAiCfA,GApBqB,wBAoBYA,GAhCnB,oBAiCdA,GApBkB,qBAoBYA,GAhChB,iBAiCdA,GAhCe,kBAgCYA,GA/Bb,qBAgCdA,GA/Ba,gBA+BYA,GA9BT,mBA+BhBA,GA9BgB,mBA8BYA,GA7BZ,mBA8BhBA,GA7Ba,gBA6BYA,GA5BT,mBA6BhBA,GA5BiB,qBA4BY,EC1C7B,ICImB16C,GDJf84C,GAAgC,iBAAXlgD,SAAuBA,UAAYA,QAAQmgD,UAAYngD,QAG5EogD,GAAaF,IAAgC,iBAAVn0B,QAAsBA,SAAWA,OAAOo0B,UAAYp0B,OAMvFg2B,GAHgB3B,IAAcA,GAAWpgD,UAAYkgD,IAGtB5Z,GAAW7iC,QAG1Cu+C,GAAY,WACd,IAEE,IAAIC,EAAQ7B,IAAcA,GAAW8B,SAAW9B,GAAW8B,QAAQ,QAAQD,MAE3E,OAAIA,GAKGF,IAAeA,GAAYI,SAAWJ,GAAYI,QAAQ,OACrE,CAAI,MAAO34B,GAAK,CAChB,IEtBI44B,GFwBWJ,OExB6BK,aAqB5CC,GAFmBF,IDjBAh7C,GCiB6Bg7C,GDhBvC,SAAS9hD,GACd,OAAO8G,GAAK9G,EAChB,GF4CA,SAA0BA,GACxB,OAAO6gD,GAAa7gD,IAClBkhD,GAASlhD,EAAMoG,WAAao7C,GAAehb,GAAWxmC,GAC1D,EIjDA,SAASiiD,GAAQ54C,EAAQtJ,GACvB,IAAY,gBAARA,GAAgD,mBAAhBsJ,EAAOtJ,KAIhC,aAAPA,EAIJ,OAAOsJ,EAAOtJ,EAChB,CCdA,IAGIuB,GAHczB,OAAO4B,UAGQH,eAYjC,SAAS4gD,GAAY74C,EAAQtJ,EAAKC,GAChC,IAAImiD,EAAW94C,EAAOtJ,GAChBuB,GAAeI,KAAK2H,EAAQtJ,IAAQ29C,GAAGyE,EAAUniD,UACxCS,IAAVT,GAAyBD,KAAOsJ,IACnCg2C,GAAgBh2C,EAAQtJ,EAAKC,EAEjC,CCxBA,IAAIihD,GAAmB,iBAGnBmB,GAAW,mBAUf,SAASC,GAAQriD,EAAOoG,GACtB,IAAIiE,SAAcrK,EAGlB,SAFAoG,EAAmB,MAAVA,EAAiB66C,GAAmB76C,KAGlC,UAARiE,GACU,UAARA,GAAoB+3C,GAAShhD,KAAKpB,KAChCA,GAAS,GAAKA,EAAQ,GAAK,GAAKA,EAAQoG,CACjD,CCdA,IAGI9E,GAHczB,OAAO4B,UAGQH,eAUjC,SAASghD,GAActiD,EAAOuiD,GAC5B,IAAIC,EAAQr6B,GAAQnoB,GAChByiD,GAASD,GAASzB,GAAY/gD,GAC9B0iD,GAAUF,IAAUC,GAASpB,GAASrhD,GACtC2iD,GAAUH,IAAUC,IAAUC,GAAUX,GAAa/hD,GACrD4iD,EAAcJ,GAASC,GAASC,GAAUC,EAC1Cr7C,EAASs7C,EClBf,SAAmB11C,EAAGuyC,GAIpB,IAHA,IAAIjyC,GAAS,EACTlG,EAASwJ,MAAM5D,KAEVM,EAAQN,GACf5F,EAAOkG,GAASiyC,EAASjyC,GAE3B,OAAOlG,CACT,CDU6Bu7C,CAAU7iD,EAAMoG,OAAQnD,QAAU,GACzDmD,EAASkB,EAAOlB,OAEpB,IAAK,IAAIrG,KAAOC,GACTuiD,IAAajhD,GAAeI,KAAK1B,EAAOD,IACvC6iD,IAEQ,UAAP7iD,GAEC2iD,IAAkB,UAAP3iD,GAA0B,UAAPA,IAE9B4iD,IAAkB,UAAP5iD,GAA0B,cAAPA,GAA8B,cAAPA,IAEtDsiD,GAAQtiD,EAAKqG,KAElBkB,EAAO5G,KAAKX,GAGhB,OAAOuH,CACT,CEzCA,IAGIhG,GAHczB,OAAO4B,UAGQH,eASjC,SAASwhD,GAAWz5C,GAClB,IAAK7D,GAAS6D,GACZ,OCVJ,SAAsBA,GACpB,IAAI/B,EAAS,GACb,GAAc,MAAV+B,EACF,IAAK,IAAItJ,KAAOF,OAAOwJ,GACrB/B,EAAO5G,KAAKX,GAGhB,OAAOuH,CACT,CDEWy7C,CAAa15C,GAEtB,IAAI25C,EAAUrC,GAAYt3C,GACtB/B,EAAS,GAEb,IAAK,IAAIvH,KAAOsJ,GACD,eAAPtJ,IAAyBijD,GAAY1hD,GAAeI,KAAK2H,EAAQtJ,KACrEuH,EAAO5G,KAAKX,GAGhB,OAAOuH,CACT,CEHA,SAAS27C,GAAO55C,GACd,OAAO83C,GAAY93C,GAAUi5C,GAAcj5C,GAAQ,GAAQy5C,GAAWz5C,EACxE,CCFA,SAAS65C,GAAcljD,GACrB,OCfF,SAAoBe,EAAQ+e,EAAOzW,EAAQ85C,GACzC,IAAIC,GAAS/5C,EACbA,IAAWA,EAAS,CAAA,GAKpB,IAHA,IAAImE,GAAS,EACTpH,EAAS0Z,EAAM1Z,SAEVoH,EAAQpH,GAAQ,CACvB,IAAIrG,EAAM+f,EAAMtS,GAEZ61C,EAAWF,EACXA,EAAW95C,EAAOtJ,GAAMgB,EAAOhB,GAAMA,EAAKsJ,EAAQtI,QAClDN,OAEaA,IAAb4iD,IACFA,EAAWtiD,EAAOhB,IAEhBqjD,EACF/D,GAAgBh2C,EAAQtJ,EAAKsjD,GAE7BnB,GAAY74C,EAAQtJ,EAAKsjD,EAE5B,CACD,OAAOh6C,CACT,CDTSi6C,CAAWtjD,EAAOijD,GAAOjjD,GAClC,CEEA,SAASujD,GAAcl6C,EAAQtI,EAAQhB,EAAKyjD,EAAUC,EAAWN,EAAYO,GAC3E,IAAIvB,EAAWF,GAAQ54C,EAAQtJ,GAC3B4jD,EAAW1B,GAAQlhD,EAAQhB,GAC3B6jD,EAAUF,EAAMn+C,IAAIo+C,GAExB,GAAIC,EACFtE,GAAiBj2C,EAAQtJ,EAAK6jD,OADhC,CAIA,ICZyB5jD,EDYrBqjD,EAAWF,EACXA,EAAWhB,EAAUwB,EAAW5jD,EAAM,GAAKsJ,EAAQtI,EAAQ2iD,QAC3DjjD,EAEAojD,OAAwBpjD,IAAb4iD,EAEf,GAAIQ,EAAU,CACZ,IAAIrB,EAAQr6B,GAAQw7B,GAChBjB,GAAUF,GAASnB,GAASsC,GAC5BG,GAAWtB,IAAUE,GAAUX,GAAa4B,GAEhDN,EAAWM,EACPnB,GAASE,GAAUoB,EACjB37B,GAAQg6B,GACVkB,EAAWlB,ECzBVtB,GADkB7gD,ED4BMmiD,IC3BDhB,GAAYnhD,GD4BpCqjD,EEjDR,SAAmBtiD,EAAQwnB,GACzB,IAAI/a,GAAS,EACTpH,EAASrF,EAAOqF,OAGpB,IADAmiB,IAAUA,EAAQzX,MAAM1K,MACfoH,EAAQpH,GACfmiB,EAAM/a,GAASzM,EAAOyM,GAExB,OAAO+a,CACT,CFwCmBw7B,CAAU5B,GAEdO,GACPmB,GAAW,EACXR,E9BtCR,SAAqBl1B,EAAQiyB,GAC3B,GAAIA,EACF,OAAOjyB,EAAOzjB,QAEhB,IAAItE,EAAS+nB,EAAO/nB,OAChBkB,EAAS04C,GAAcA,GAAY55C,GAAU,IAAI+nB,EAAO9iB,YAAYjF,GAGxE,OADA+nB,EAAO61B,KAAK18C,GACLA,CACT,C8B6BmB28C,CAAYN,GAAU,IAE1BG,GACPD,GAAW,EACXR,EAAWnD,GAAgByD,GAAU,IAGrCN,EAAW,GfpBnB,SAAuBrjD,GACrB,IAAK6gD,GAAa7gD,IAAUwmC,GAAWxmC,IAAUshD,GAC/C,OAAO,EAET,IAAIvwC,EAAQmzC,GAAalkD,GACzB,GAAc,OAAV+Q,EACF,OAAO,EAET,IAAI6vC,EAAOt/C,GAAeI,KAAKqP,EAAO,gBAAkBA,EAAM1F,YAC9D,MAAsB,mBAARu1C,GAAsBA,aAAgBA,GAClD1C,GAAax8C,KAAKk/C,IAASW,EAC/B,CeYa4C,CAAcR,IAAa5C,GAAY4C,IAC9CN,EAAWlB,EACPpB,GAAYoB,GACdkB,EAAWH,GAAcf,GAEjB38C,GAAS28C,KAAalb,GAAWkb,KACzCkB,EGlER,SAAyBh6C,GACvB,MAAqC,mBAAtBA,EAAOgC,aAA8Bs1C,GAAYt3C,GAE5D,GADA+6C,GAAWF,GAAa76C,GAE9B,CH8DmBg7C,CAAgBV,KAI7BE,GAAW,CAEd,CACGA,IAEFH,EAAM76C,IAAI86C,EAAUN,GACpBI,EAAUJ,EAAUM,EAAUH,EAAUL,EAAYO,GACpDA,EAAc,OAAEC,IAElBrE,GAAiBj2C,EAAQtJ,EAAKsjD,EAnD7B,CAoDH,CIxEA,SAASiB,GAAUj7C,EAAQtI,EAAQyiD,EAAUL,EAAYO,GACnDr6C,IAAWtI,GAGfy+C,GAAQz+C,GAAQ,SAAS4iD,EAAU5jD,GAEjC,GADA2jD,IAAUA,EAAQ,IAAIzE,IAClBz5C,GAASm+C,GACXJ,GAAcl6C,EAAQtI,EAAQhB,EAAKyjD,EAAUc,GAAWnB,EAAYO,OAEjE,CACH,IAAIL,EAAWF,EACXA,EAAWlB,GAAQ54C,EAAQtJ,GAAM4jD,EAAW5jD,EAAM,GAAKsJ,EAAQtI,EAAQ2iD,QACvEjjD,OAEaA,IAAb4iD,IACFA,EAAWM,GAEbrE,GAAiBj2C,EAAQtJ,EAAKsjD,EAC/B,CACF,GAAEJ,GACL,CCvBA,SAASsB,GAASvkD,GAChB,OAAOA,CACT,CCfA,IAAIwkD,GAAYtlD,KAAKmO,ICSrB,IAAIo3C,GAAmB7kD,GAA4B,SAASkH,EAAM2I,GAChE,OAAO7P,GAAekH,EAAM,WAAY,CACtC7G,cAAgB,EAChBqI,YAAc,EACdtI,OCGcA,EDHIyP,ECIb,WACL,OAAOzP,CACX,GDLIE,UAAY,ICEhB,IAAkBF,CDAlB,EAPwCukD,GASxCG,GAAeD,GEhBXE,GAAYvwB,KAAKxf,ICMrB,IAAIgwC,GDKJ,SAAkB99C,GAChB,IAAI+9C,EAAQ,EACRC,EAAa,EAEjB,OAAO,WACL,IAAIC,EAAQJ,KACRzlC,EApBO,IAoBiB6lC,EAAQD,GAGpC,GADAA,EAAaC,EACT7lC,EAAY,GACd,KAAM2lC,GAzBI,IA0BR,OAAO9iD,UAAU,QAGnB8iD,EAAQ,EAEV,OAAO/9C,EAAKhF,WAAMrB,EAAWsB,UACjC,CACA,CCvBkBijD,CAASP,IAE3BQ,GAAeL,GCDf,SAASM,GAASp+C,EAAMwiB,GACtB,OAAOs7B,GLCT,SAAkB99C,EAAMwiB,EAAO2tB,GAE7B,OADA3tB,EAAQk7B,QAAoB/jD,IAAV6oB,EAAuBxiB,EAAKV,OAAS,EAAKkjB,EAAO,GAC5D,WAML,IALA,IAAI5U,EAAO3S,UACPyL,GAAS,EACTpH,EAASo+C,GAAU9vC,EAAKtO,OAASkjB,EAAO,GACxCf,EAAQzX,MAAM1K,KAEToH,EAAQpH,GACfmiB,EAAM/a,GAASkH,EAAK4U,EAAQ9b,GAE9BA,GAAS,EAET,IADA,IAAI23C,EAAYr0C,MAAMwY,EAAQ,KACrB9b,EAAQ8b,GACf67B,EAAU33C,GAASkH,EAAKlH,GAG1B,OADA23C,EAAU77B,GAAS2tB,EAAU1uB,GMpBjC,SAAezhB,EAAMgiB,EAASpU,GAC5B,OAAQA,EAAKtO,QACX,KAAK,EAAG,OAAOU,EAAKpF,KAAKonB,GACzB,KAAK,EAAG,OAAOhiB,EAAKpF,KAAKonB,EAASpU,EAAK,IACvC,KAAK,EAAG,OAAO5N,EAAKpF,KAAKonB,EAASpU,EAAK,GAAIA,EAAK,IAChD,KAAK,EAAG,OAAO5N,EAAKpF,KAAKonB,EAASpU,EAAK,GAAIA,EAAK,GAAIA,EAAK,IAE3D,OAAO5N,EAAKhF,MAAMgnB,EAASpU,EAC7B,CNaW5S,CAAMgF,EAAMvH,KAAM4lD,EAC7B,CACA,CKpBqBC,CAASt+C,EAAMwiB,EAAOi7B,IAAWz9C,EAAO,GAC7D,CEoBA,ICxBwBu+C,GDwBpBC,ICxBoBD,GDwBO,SAASh8C,EAAQtI,EAAQyiD,EAAUL,GAChEmB,GAAUj7C,EAAQtI,EAAQyiD,EAAUL,EACtC,ECzBS+B,IAAS,SAAS77C,EAAQk8C,GAC/B,IAAI/3C,GAAS,EACTpH,EAASm/C,EAAQn/C,OACjB+8C,EAAa/8C,EAAS,EAAIm/C,EAAQn/C,EAAS,QAAK3F,EAChD+kD,EAAQp/C,EAAS,EAAIm/C,EAAQ,QAAK9kD,EAWtC,IATA0iD,EAAckC,GAASj/C,OAAS,GAA0B,mBAAd+8C,GACvC/8C,IAAU+8C,QACX1iD,EAEA+kD,GCNR,SAAwBxlD,EAAOwN,EAAOnE,GACpC,IAAK7D,GAAS6D,GACZ,OAAO,EAET,IAAIgB,SAAcmD,EAClB,SAAY,UAARnD,EACK82C,GAAY93C,IAAWg5C,GAAQ70C,EAAOnE,EAAOjD,QACrC,UAARiE,GAAoBmD,KAASnE,IAE7Bq0C,GAAGr0C,EAAOmE,GAAQxN,EAG7B,CDNiBylD,CAAeF,EAAQ,GAAIA,EAAQ,GAAIC,KAClDrC,EAAa/8C,EAAS,OAAI3F,EAAY0iD,EACtC/8C,EAAS,GAEXiD,EAASxJ,OAAOwJ,KACPmE,EAAQpH,GAAQ,CACvB,IAAIrF,EAASwkD,EAAQ/3C,GACjBzM,GACFskD,GAASh8C,EAAQtI,EAAQyM,EAAO21C,EAEnC,CACD,OAAO95C,CACX,KDKAq8C,GAAeJ,GG1Bf,SAASK,GAAS1mC,GAChB,IAAIzR,GAAS,EACTpH,EAAmB,MAAV6Y,EAAiB,EAAIA,EAAO7Y,OAGzC,IADA7G,KAAKu+C,SAAW,IAAIgB,KACXtxC,EAAQpH,GACf7G,KAAKkW,IAAIwJ,EAAOzR,GAEpB,CCVA,SAASo4C,GAAUr9B,EAAOs9B,GAIxB,IAHA,IAAIr4C,GAAS,EACTpH,EAAkB,MAATmiB,EAAgB,EAAIA,EAAMniB,SAE9BoH,EAAQpH,GACf,GAAIy/C,EAAUt9B,EAAM/a,GAAQA,EAAO+a,GACjC,OAAO,EAGX,OAAO,CACT,CDGAo9B,GAASlkD,UAAUgU,IAAMkwC,GAASlkD,UAAUf,KEV5C,SAAqBV,GAEnB,OADAT,KAAKu+C,SAASj1C,IAAI7I,EAbC,6BAcZT,IACT,EFQAomD,GAASlkD,UAAUqH,IGfnB,SAAqB9I,GACnB,OAAOT,KAAKu+C,SAASh1C,IAAI9I,EAC3B,ECNA,IAAI8lD,GAAuB,EACvBC,GAAyB,EAe7B,SAASC,GAAYz9B,EAAOo1B,EAAOsI,EAAS9C,EAAY+C,EAAWxC,GACjE,IAAIyC,EAAYF,EAAUH,GACtBM,EAAY79B,EAAMniB,OAClBigD,EAAY1I,EAAMv3C,OAEtB,GAAIggD,GAAaC,KAAeF,GAAaE,EAAYD,GACvD,OAAO,EAGT,IAAIE,EAAa5C,EAAMn+C,IAAIgjB,GACvBg+B,EAAa7C,EAAMn+C,IAAIo4C,GAC3B,GAAI2I,GAAcC,EAChB,OAAOD,GAAc3I,GAAS4I,GAAch+B,EAE9C,IAAI/a,GAAS,EACTlG,GAAS,EACTk/C,EAAQP,EAAUF,GAA0B,IAAIJ,QAAWllD,EAM/D,IAJAijD,EAAM76C,IAAI0f,EAAOo1B,GACjB+F,EAAM76C,IAAI80C,EAAOp1B,KAGR/a,EAAQ44C,GAAW,CAC1B,IAAIK,EAAWl+B,EAAM/a,GACjBk5C,EAAW/I,EAAMnwC,GAErB,GAAI21C,EACF,IAAIwD,EAAWR,EACXhD,EAAWuD,EAAUD,EAAUj5C,EAAOmwC,EAAOp1B,EAAOm7B,GACpDP,EAAWsD,EAAUC,EAAUl5C,EAAO+a,EAAOo1B,EAAO+F,GAE1D,QAAiBjjD,IAAbkmD,EAAwB,CAC1B,GAAIA,EACF,SAEFr/C,GAAS,EACT,KACD,CAED,GAAIk/C,GACF,IAAKZ,GAAUjI,GAAO,SAAS+I,EAAUE,GACnC,GCtDa7mD,EDsDO6mD,GAANJ,ECrDX19C,IAAI/I,KDsDF0mD,IAAaC,GAAYR,EAAUO,EAAUC,EAAUT,EAAS9C,EAAYO,IAC/E,OAAO8C,EAAK9lD,KAAKkmD,GCxD/B,IAAyB7mD,CD0DzB,IAAc,CACNuH,GAAS,EACT,KACD,OACI,GACDm/C,IAAaC,IACXR,EAAUO,EAAUC,EAAUT,EAAS9C,EAAYO,GACpD,CACLp8C,GAAS,EACT,KACD,CACF,CAGD,OAFAo8C,EAAc,OAAEn7B,GAChBm7B,EAAc,OAAE/F,GACTr2C,CACT,CE1EA,SAASu/C,GAAWl6B,GAClB,IAAInf,GAAS,EACTlG,EAASwJ,MAAM6b,EAAI3H,MAKvB,OAHA2H,EAAID,SAAQ,SAAS1sB,EAAOD,GAC1BuH,IAASkG,GAAS,CAACzN,EAAKC,EAC5B,IACSsH,CACT,CCRA,SAASw/C,GAAWj+C,GAClB,IAAI2E,GAAS,EACTlG,EAASwJ,MAAMjI,EAAImc,MAKvB,OAHAnc,EAAI6jB,SAAQ,SAAS1sB,GACnBsH,IAASkG,GAASxN,CACtB,IACSsH,CACT,CCPA,IAAIw+C,GAAuB,EACvBC,GAAyB,EAGzBgB,GAAU,mBACVC,GAAU,gBACVC,GAAW,iBACXC,GAAS,eACTC,GAAY,kBACZC,GAAY,kBACZC,GAAS,eACTC,GAAY,kBACZC,GAAY,kBAEZC,GAAiB,uBACjBC,GAAc,oBAGdC,GAAc3jD,GAASA,GAAOtC,eAAYhB,EAC1CknD,GAAgBD,GAAcA,GAAYvgD,aAAU1G,ECvBxD,IAGI6L,GAHczM,OAAO4B,UAGc6K,qBAGnCs7C,GAAmB/nD,OAAOgE,sBAS1BgkD,GAAcD,GAA+B,SAASv+C,GACxD,OAAc,MAAVA,EACK,IAETA,EAASxJ,OAAOwJ,GCdlB,SAAqBkf,EAAOs9B,GAM1B,IALA,IAAIr4C,GAAS,EACTpH,EAAkB,MAATmiB,EAAgB,EAAIA,EAAMniB,OACnC0hD,EAAW,EACXxgD,EAAS,KAEJkG,EAAQpH,GAAQ,CACvB,IAAIpG,EAAQuoB,EAAM/a,GACdq4C,EAAU7lD,EAAOwN,EAAO+a,KAC1BjhB,EAAOwgD,KAAc9nD,EAExB,CACD,OAAOsH,CACT,CDESygD,CAAYH,GAAiBv+C,IAAS,SAASvF,GACpD,OAAOwI,GAAqB5K,KAAK2H,EAAQvF,EAC7C,IACA,EETA,WACE,MAAO,EACT,EFSAkkD,GAAeH,GGxBfI,GAFiBxH,GAAQ5gD,OAAOyJ,KAAMzJ,QCIlCyB,GAHczB,OAAO4B,UAGQH,eCyBjC,SAASgI,GAAKD,GACZ,OAAO83C,GAAY93C,GAAUi5C,GAAcj5C,GDjB7C,SAAkBA,GAChB,IAAKs3C,GAAYt3C,GACf,OAAO69B,GAAW79B,GAEpB,IAAI/B,EAAS,GACb,IAAK,IAAIvH,KAAOF,OAAOwJ,GACjB/H,GAAeI,KAAK2H,EAAQtJ,IAAe,eAAPA,GACtCuH,EAAO5G,KAAKX,GAGhB,OAAOuH,CACT,CCMuD4gD,CAAS7+C,EAChE,CCvBA,SAAS8+C,GAAW9+C,GAClB,OCEF,SAAwBA,EAAQq2C,EAAU0I,GACxC,IAAI9gD,EAASo4C,EAASr2C,GACtB,OAAO8e,GAAQ9e,GAAU/B,ECR3B,SAAmBihB,EAAOtJ,GAKxB,IAJA,IAAIzR,GAAS,EACTpH,EAAS6Y,EAAO7Y,OAChB45B,EAASzX,EAAMniB,SAEVoH,EAAQpH,GACfmiB,EAAMyX,EAASxyB,GAASyR,EAAOzR,GAEjC,OAAO+a,CACT,CDDoC8/B,CAAU/gD,EAAQ8gD,EAAY/+C,GAClE,CDLSi/C,CAAej/C,EAAQC,GAAMu+C,GACtC,CGVA,IAAI/B,GAAuB,EAMvBxkD,GAHczB,OAAO4B,UAGQH,eCLjC,IAEAinD,GAFe/J,GAAUzjB,GAAM,YCE/BytB,GAFchK,GAAUzjB,GAAM,WCE9B0tB,GAFUjK,GAAUzjB,GAAM,OCE1B2tB,GAFclK,GAAUzjB,GAAM,WCK1BmsB,GAAS,eAETyB,GAAa,mBACbtB,GAAS,eACTuB,GAAa,mBAEbnB,GAAc,oBAGdoB,GAAqB1K,GAAS2K,IAC9BC,GAAgB5K,GAASrlB,IACzBkwB,GAAoB7K,GAASznC,IAC7BuyC,GAAgB9K,GAAS/J,IACzB8U,GAAoB/K,GAASp1C,IAS7BogD,GAAS3iB,IAGRsiB,IAAYK,GAAO,IAAIL,GAAS,IAAI56B,YAAY,MAAQu5B,IACxD3uB,IAAOqwB,GAAO,IAAIrwB,KAAQouB,IAC1BxwC,IAAWyyC,GAAOzyC,GAAQQ,YAAcyxC,IACxCvU,IAAO+U,GAAO,IAAI/U,KAAQiT,IAC1Bt+C,IAAWogD,GAAO,IAAIpgD,KAAY6/C,MACrCO,GAAS,SAASnpD,GAChB,IAAIsH,EAASk/B,GAAWxmC,GACpB4gD,EA/BQ,mBA+BDt5C,EAAsBtH,EAAMqL,iBAAc5K,EACjD2oD,EAAaxI,EAAOzC,GAASyC,GAAQ,GAEzC,GAAIwI,EACF,OAAQA,GACN,KAAKP,GAAoB,OAAOpB,GAChC,KAAKsB,GAAe,OAAO7B,GAC3B,KAAK8B,GAAmB,OAAOL,GAC/B,KAAKM,GAAe,OAAO5B,GAC3B,KAAK6B,GAAmB,OAAON,GAGnC,OAAOthD,CACX,GAGA,IAAA+hD,GAAeF,GC/CXrD,GAAuB,EAGvBwD,GAAU,qBACVC,GAAW,iBACXjI,GAAY,kBAMZhgD,GAHczB,OAAO4B,UAGQH,eAgBjC,SAASkoD,GAAgBngD,EAAQs0C,EAAOsI,EAAS9C,EAAY+C,EAAWxC,GACtE,IAAI+F,EAAWthC,GAAQ9e,GACnBqgD,EAAWvhC,GAAQw1B,GACnBgM,EAASF,EAAWF,GAAWJ,GAAO9/C,GACtCugD,EAASF,EAAWH,GAAWJ,GAAOxL,GAKtCkM,GAHJF,EAASA,GAAUL,GAAUhI,GAAYqI,IAGhBrI,GACrBwI,GAHJF,EAASA,GAAUN,GAAUhI,GAAYsI,IAGhBtI,GACrByI,EAAYJ,GAAUC,EAE1B,GAAIG,GAAa1I,GAASh4C,GAAS,CACjC,IAAKg4C,GAAS1D,GACZ,OAAO,EAET8L,GAAW,EACXI,GAAW,CACZ,CACD,GAAIE,IAAcF,EAEhB,OADAnG,IAAUA,EAAQ,IAAIzE,IACdwK,GAAY1H,GAAa14C,GAC7B28C,GAAY38C,EAAQs0C,EAAOsI,EAAS9C,EAAY+C,EAAWxC,GhBdnE,SAAoBr6C,EAAQs0C,EAAO3xC,EAAKi6C,EAAS9C,EAAY+C,EAAWxC,GACtE,OAAQ13C,GACN,KAAKy7C,GACH,GAAKp+C,EAAOi3C,YAAc3C,EAAM2C,YAC3Bj3C,EAAOk3C,YAAc5C,EAAM4C,WAC9B,OAAO,EAETl3C,EAASA,EAAO8kB,OAChBwvB,EAAQA,EAAMxvB,OAEhB,KAAKq5B,GACH,QAAKn+C,EAAOi3C,YAAc3C,EAAM2C,aAC3B4F,EAAU,IAAI9a,GAAW/hC,GAAS,IAAI+hC,GAAWuS,KAKxD,KAAKoJ,GACL,KAAKC,GACL,KAAKG,GAGH,OAAOzJ,IAAIr0C,GAASs0C,GAEtB,KAAKsJ,GACH,OAAO59C,EAAOxE,MAAQ84C,EAAM94C,MAAQwE,EAAOqlC,SAAWiP,EAAMjP,QAE9D,KAAK0Y,GACL,KAAKE,GAIH,OAAOj+C,GAAWs0C,EAAQ,GAE5B,KAAKuJ,GACH,IAAI8C,EAAUnD,GAEhB,KAAKQ,GACH,IAAIlB,EAAYF,EAAUH,GAG1B,GAFAkE,IAAYA,EAAUlD,IAElBz9C,EAAO2b,MAAQ24B,EAAM34B,OAASmhC,EAChC,OAAO,EAGT,IAAIvC,EAAUF,EAAMn+C,IAAI8D,GACxB,GAAIu6C,EACF,OAAOA,GAAWjG,EAEpBsI,GAAWF,GAGXrC,EAAM76C,IAAIQ,EAAQs0C,GAClB,IAAIr2C,EAAS0+C,GAAYgE,EAAQ3gD,GAAS2gD,EAAQrM,GAAQsI,EAAS9C,EAAY+C,EAAWxC,GAE1F,OADAA,EAAc,OAAEr6C,GACT/B,EAET,KAAKigD,GACH,GAAII,GACF,OAAOA,GAAcjmD,KAAK2H,IAAWs+C,GAAcjmD,KAAKi8C,GAG9D,OAAO,CACT,CgBhDQsM,CAAW5gD,EAAQs0C,EAAOgM,EAAQ1D,EAAS9C,EAAY+C,EAAWxC,GAExE,KAAMuC,EAAUH,IAAuB,CACrC,IAAIoE,EAAeL,GAAYvoD,GAAeI,KAAK2H,EAAQ,eACvD8gD,EAAeL,GAAYxoD,GAAeI,KAAKi8C,EAAO,eAE1D,GAAIuM,GAAgBC,EAAc,CAChC,IAAIC,EAAeF,EAAe7gD,EAAOrJ,QAAUqJ,EAC/CghD,EAAeF,EAAexM,EAAM39C,QAAU29C,EAGlD,OADA+F,IAAUA,EAAQ,IAAIzE,IACfiH,EAAUkE,EAAcC,EAAcpE,EAAS9C,EAAYO,EACnE,CACF,CACD,QAAKqG,IAGLrG,IAAUA,EAAQ,IAAIzE,INtDxB,SAAsB51C,EAAQs0C,EAAOsI,EAAS9C,EAAY+C,EAAWxC,GACnE,IAAIyC,EAAYF,EAAUH,GACtBwE,EAAWnC,GAAW9+C,GACtBkhD,EAAYD,EAASlkD,OAIzB,GAAImkD,GAHWpC,GAAWxK,GACDv3C,SAEM+/C,EAC7B,OAAO,EAGT,IADA,IAAI34C,EAAQ+8C,EACL/8C,KAAS,CACd,IAAIzN,EAAMuqD,EAAS98C,GACnB,KAAM24C,EAAYpmD,KAAO49C,EAAQr8C,GAAeI,KAAKi8C,EAAO59C,IAC1D,OAAO,CAEV,CAED,IAAIyqD,EAAa9G,EAAMn+C,IAAI8D,GACvBk9C,EAAa7C,EAAMn+C,IAAIo4C,GAC3B,GAAI6M,GAAcjE,EAChB,OAAOiE,GAAc7M,GAAS4I,GAAcl9C,EAE9C,IAAI/B,GAAS,EACbo8C,EAAM76C,IAAIQ,EAAQs0C,GAClB+F,EAAM76C,IAAI80C,EAAOt0C,GAGjB,IADA,IAAIohD,EAAWtE,IACN34C,EAAQ+8C,GAAW,CAE1B,IAAIpI,EAAW94C,EADftJ,EAAMuqD,EAAS98C,IAEXk5C,EAAW/I,EAAM59C,GAErB,GAAIojD,EACF,IAAIwD,EAAWR,EACXhD,EAAWuD,EAAUvE,EAAUpiD,EAAK49C,EAAOt0C,EAAQq6C,GACnDP,EAAWhB,EAAUuE,EAAU3mD,EAAKsJ,EAAQs0C,EAAO+F,GAGzD,UAAmBjjD,IAAbkmD,EACGxE,IAAauE,GAAYR,EAAU/D,EAAUuE,EAAUT,EAAS9C,EAAYO,GAC7EiD,GACD,CACLr/C,GAAS,EACT,KACD,CACDmjD,IAAaA,EAAkB,eAAP1qD,EACzB,CACD,GAAIuH,IAAWmjD,EAAU,CACvB,IAAIC,EAAUrhD,EAAOgC,YACjBs/C,EAAUhN,EAAMtyC,YAGhBq/C,GAAWC,KACV,gBAAiBthD,MAAU,gBAAiBs0C,IACzB,mBAAX+M,GAAyBA,aAAmBA,GACjC,mBAAXC,GAAyBA,aAAmBA,IACvDrjD,GAAS,EAEZ,CAGD,OAFAo8C,EAAc,OAAEr6C,GAChBq6C,EAAc,OAAE/F,GACTr2C,CACT,CMRSsjD,CAAavhD,EAAQs0C,EAAOsI,EAAS9C,EAAY+C,EAAWxC,GACrE,CC/DA,SAASmH,GAAY7qD,EAAO29C,EAAOsI,EAAS9C,EAAYO,GACtD,OAAI1jD,IAAU29C,IAGD,MAAT39C,GAA0B,MAAT29C,IAAmBkD,GAAa7gD,KAAW6gD,GAAalD,GACpE39C,GAAUA,GAAS29C,GAAUA,EAE/B6L,GAAgBxpD,EAAO29C,EAAOsI,EAAS9C,EAAY0H,GAAanH,GACzE,CCKA,SAASoH,GAAQ9qD,EAAO29C,GACtB,OAAOkN,GAAY7qD,EAAO29C,EAC5B,CC/BA,IAGIr8C,GAHczB,OAAO4B,UAGQH,eAUjC,SAASypD,GAAQ1hD,EAAQtJ,GACvB,OAAiB,MAAVsJ,GAAkB/H,GAAeI,KAAK2H,EAAQtJ,EACvD,CCZA,IAAIwnD,GAAY,kBAmBhB,SAAShhD,GAASvG,GAChB,MAAuB,iBAATA,GACX6gD,GAAa7gD,IAAUwmC,GAAWxmC,IAAUunD,EACjD,CCtBA,IAAIyD,GAAe,mDACfC,GAAgB,QCFpB,IAAIC,GAAkB,sBA8CtB,SAASC,GAAQrkD,EAAMskD,GACrB,GAAmB,mBAARtkD,GAAmC,MAAZskD,GAAuC,mBAAZA,EAC3D,MAAM,IAAIlpD,UAAUgpD,IAEtB,IAAIG,EAAW,WACb,IAAI32C,EAAO3S,UACPhC,EAAMqrD,EAAWA,EAAStpD,MAAMvC,KAAMmV,GAAQA,EAAK,GACnD42C,EAAQD,EAASC,MAErB,GAAIA,EAAMxiD,IAAI/I,GACZ,OAAOurD,EAAM/lD,IAAIxF,GAEnB,IAAIuH,EAASR,EAAKhF,MAAMvC,KAAMmV,GAE9B,OADA22C,EAASC,MAAQA,EAAMziD,IAAI9I,EAAKuH,IAAWgkD,EACpChkD,CACX,EAEE,OADA+jD,EAASC,MAAQ,IAAKH,GAAQI,OAASzM,IAChCuM,CACT,CAGAF,GAAQI,MAAQzM,GCnEhB,IAAI0M,GAAa,mGAGbC,GAAe,WASfC,GCFJ,SAAuB5kD,GACrB,IAAIQ,EAAS6jD,GAAQrkD,GAAM,SAAS/G,GAIlC,OAfmB,MAYfurD,EAAMtmC,MACRsmC,EAAM73C,QAED1T,CACX,IAEMurD,EAAQhkD,EAAOgkD,MACnB,OAAOhkD,CACT,CDRmBqkD,EAAc,SAASl8C,GACxC,IAAInI,EAAS,GAOb,OAN6B,KAAzBmI,EAAOiV,WAAW,IACpBpd,EAAO5G,KAAK,IAEd+O,EAAO9E,QAAQ6gD,IAAY,SAASxqD,EAAOoM,EAAQw+C,EAAOC,GACxDvkD,EAAO5G,KAAKkrD,EAAQC,EAAUlhD,QAAQ8gD,GAAc,MAASr+C,GAAUpM,EAC3E,IACSsG,CACT,IAEAwkD,GAAeJ,GEpBf,IAAIK,GAAW,IAGXrE,GAAc3jD,GAASA,GAAOtC,eAAYhB,EAC1CurD,GAAiBtE,GAAcA,GAAY7kD,cAAWpC,EAU1D,SAASwrD,GAAajsD,GAEpB,GAAoB,iBAATA,EACT,OAAOA,EAET,GAAImoB,GAAQnoB,GAEV,OClBJ,SAAkBuoB,EAAOk3B,GAKvB,IAJA,IAAIjyC,GAAS,EACTpH,EAAkB,MAATmiB,EAAgB,EAAIA,EAAMniB,OACnCkB,EAASwJ,MAAM1K,KAEVoH,EAAQpH,GACfkB,EAAOkG,GAASiyC,EAASl3B,EAAM/a,GAAQA,EAAO+a,GAEhD,OAAOjhB,CACT,CDSW4kD,CAASlsD,EAAOisD,IAAgB,GAEzC,GAAI1lD,GAASvG,GACX,OAAOgsD,GAAiBA,GAAetqD,KAAK1B,GAAS,GAEvD,IAAIsH,EAAUtH,EAAQ,GACtB,MAAkB,KAAVsH,GAAkB,EAAItH,IAAW+rD,GAAY,KAAOzkD,CAC9D,CErBA,SAAS6kD,GAASnsD,EAAOqJ,GACvB,OAAI8e,GAAQnoB,GACHA,ENAX,SAAeA,EAAOqJ,GACpB,GAAI8e,GAAQnoB,GACV,OAAO,EAET,IAAIqK,SAAcrK,EAClB,QAAY,UAARqK,GAA4B,UAARA,GAA4B,WAARA,GAC/B,MAATrK,IAAiBuG,GAASvG,KAGvBirD,GAAc7pD,KAAKpB,KAAWgrD,GAAa5pD,KAAKpB,IAC1C,MAAVqJ,GAAkBrJ,KAASH,OAAOwJ,EACvC,CMTS+iD,CAAMpsD,EAAOqJ,GAAU,CAACrJ,GAAS0rD,GCM1C,SAAkB1rD,GAChB,OAAgB,MAATA,EAAgB,GAAKisD,GAAajsD,EAC3C,CDRuD6C,CAAS7C,GAChE,CEfA,IAAI+rD,GAAW,IASf,SAASM,GAAMrsD,GACb,GAAoB,iBAATA,GAAqBuG,GAASvG,GACvC,OAAOA,EAET,IAAIsH,EAAUtH,EAAQ,GACtB,MAAkB,KAAVsH,GAAkB,EAAItH,IAAW+rD,GAAY,KAAOzkD,CAC9D,CCYA,SAASwB,GAAIO,EAAQijD,GACnB,OAAiB,MAAVjjD,GCfT,SAAiBA,EAAQijD,EAAMC,GAO7B,IAJA,IAAI/+C,GAAS,EACTpH,GAHJkmD,EAAOH,GAASG,EAAMjjD,IAGJjD,OACdkB,GAAS,IAEJkG,EAAQpH,GAAQ,CACvB,IAAIrG,EAAMssD,GAAMC,EAAK9+C,IACrB,KAAMlG,EAAmB,MAAV+B,GAAkBkjD,EAAQljD,EAAQtJ,IAC/C,MAEFsJ,EAASA,EAAOtJ,EACjB,CACD,OAAIuH,KAAYkG,GAASpH,EAChBkB,KAETlB,EAAmB,MAAViD,EAAiB,EAAIA,EAAOjD,SAClB86C,GAAS96C,IAAWi8C,GAAQtiD,EAAKqG,KACjD+hB,GAAQ9e,IAAW03C,GAAY13C,GACpC,CDL2BmjD,CAAQnjD,EAAQijD,EAAMvB,GACjD,CELA,SAASxlD,GAAI8D,EAAQijD,EAAMx4B,GACzB,IAAIxsB,EAAmB,MAAV+B,OAAiB5I,ECjBhC,SAAiB4I,EAAQijD,GAMvB,IAHA,IAAI9+C,EAAQ,EACRpH,GAHJkmD,EAAOH,GAASG,EAAMjjD,IAGJjD,OAED,MAAViD,GAAkBmE,EAAQpH,GAC/BiD,EAASA,EAAOgjD,GAAMC,EAAK9+C,OAE7B,OAAQA,GAASA,GAASpH,EAAUiD,OAAS5I,CAC/C,CDO4CgsD,CAAQpjD,EAAQijD,GAC1D,YAAkB7rD,IAAX6G,EAAuBwsB,EAAexsB,CAC/C,CEAA,SAASuB,GAAIQ,EAAQijD,EAAMtsD,GACzB,OAAiB,MAAVqJ,EAAiBA,ECf1B,SAAiBA,EAAQijD,EAAMtsD,EAAOmjD,GACpC,IAAK39C,GAAS6D,GACZ,OAAOA,EAST,IALA,IAAImE,GAAS,EACTpH,GAHJkmD,EAAOH,GAASG,EAAMjjD,IAGJjD,OACdsmD,EAAYtmD,EAAS,EACrBumD,EAAStjD,EAEI,MAAVsjD,KAAoBn/C,EAAQpH,GAAQ,CACzC,IAAIrG,EAAMssD,GAAMC,EAAK9+C,IACjB61C,EAAWrjD,EAEf,GAAY,cAARD,GAA+B,gBAARA,GAAiC,cAARA,EAClD,OAAOsJ,EAGT,GAAImE,GAASk/C,EAAW,CACtB,IAAIvK,EAAWwK,EAAO5sD,QAELU,KADjB4iD,EAAWF,EAAaA,EAAWhB,EAAUpiD,EAAK4sD,QAAUlsD,KAE1D4iD,EAAW79C,GAAS28C,GAChBA,EACCE,GAAQiK,EAAK9+C,EAAQ,IAAM,GAAK,CAAA,EAExC,CACD00C,GAAYyK,EAAQ5sD,EAAKsjD,GACzBsJ,EAASA,EAAO5sD,EACjB,CACD,OAAOsJ,CACT,CDjBmCujD,CAAQvjD,EAAQijD,EAAMtsD,EACzD,CE3BA,ICkBM6sD,GACAC,GDnBSC,GAAA,CACb95B,MAAO,SAACjzB,GAAa,OAAad,KAAKmO,KAAKrN,EAAO,EAAE,EACrD,iBAAkB,SAAC0U,GAAmB,OAAaiX,GAAUjX,EAAK,EAClE,kBAAmB,SACjB1U,GAAgC,OEepC,SAAkBA,GAChB,MAAuB,iBAATA,IACVmoB,GAAQnoB,IAAU6gD,GAAa7gD,IArBrB,mBAqB+BwmC,GAAWxmC,EAC1D,CFfMgtD,CAAShtD,IAAoB,KAAVA,GAAiBinC,GAAWjnC,GAASA,EAAQ,IAAI,GG0HrDitD,GAAO,WAO1B,SAAAA,IAA6C,IAAjCC,EAAUnrD,UAAAqE,OAAA,QAAA3F,IAAAsB,UAAA,GAAAA,UAAA,GAAGgrD,GAAoBh7B,OAAAk7B,GAC3C1tD,KAAK4tD,cAAgBD,EAErB3tD,KAAK0L,QAAU,CAIb45B,avM9HuC,euMiIvC5R,MvMlI+B,GuMoI/Blc,OAAQ,CACN1M,KvM7ImC,OuMgJnC6vB,OAAQ,EAER5B,QAAS,CAAC,EAAG,EAAG,EAAG,GAKnB80B,kBAAkB,EAGlB91B,KAAM,MAENgI,MAAO,CASLC,UAAM9+B,EAGNskB,SAAU,SAGVya,UAAW,SAGXQ,OAAQ,CACN/yB,EAAG,EACH+qB,EAAG,GAGL8H,OAAQ,KAGR3G,MAAO,IAGPC,OAAQ,KAIZ1F,UAAW,CACTrpB,KvM5LsC,SuM+LtC8uB,MvM9LuC,GuMiMvCC,OvMhMwC,GuMmMxCc,OvMlMwC,EuMqMxC2H,OvMpMwC,EuM6MxCvC,MAAO,KAEPqN,WAAOlsC,EAEP62B,KAAM,OAGR5E,KAAM,CAGJpJ,MAAO,IAAI8K,KAEX9mB,SAAK7M,EAEL4M,SAAK5M,EAML4hC,UAAW,GAEXgrB,OvM9N8B,KuMgO9BC,cAAU7sD,GAMZw4B,qBAAqB,EAErB5pB,KAAM,CAGJtO,OAAQ,GAIRsJ,KAAM,OAENkjD,YAAa,CAAE,EAGftgD,EAAG,GAGH+qB,EAAG,GAGHiG,OAAQ,MAERnK,aAAc,MAGhBkhB,WAAOv0C,EAGPw6B,kBvMtQ4C,IuMyQ5C6J,MvMtQ+B,QuMyQ/B73B,EAAG,CACDstB,2BAA4B,EAC5BI,0BAA2B,GAGjC,CAwEC,OAtEDzI,EAAA+6B,EAAA,CAAA,CAAAltD,IAAA,MAAAC,MAMA,SAAID,EAAaC,GACf,SAAK8I,GAAIvJ,KAAK0L,QAASlL,IAAQ+qD,GAAQvlD,GAAIhG,KAAK0L,QAASlL,GAAMC,MAI/D6I,GACEtJ,KAAK0L,QACLlL,EACA+I,GAAIvJ,KAAK4tD,cAAeptD,GACtBwF,GAAIhG,KAAK4tD,cAAeptD,EAAxBwF,CAA6BvF,GAC7BA,IAGG,EACT,GAAC,CAAAD,IAAA,OAAAC,MAED,SAAKwtD,GAA0C,IAAAp7B,EAAA7yB,KAC7CA,KAAK0L,QAAOpL,OAAAutB,OAAA,CAAA,EAEPk4B,GAAU/lD,KAAK0L,QAASuiD,GAAM,SAAC9X,EAAGiO,GACnC,OAAO7yC,MAAMqX,QAAQw7B,GAAYA,OAAWljD,CAC7C,KAGH,IAAQwK,EAAY1L,KAAZ0L,QAERpL,OAAOyJ,KAAK/J,KAAK4tD,eAAezgC,SAAQ,SAAC3sB,GACvC8I,GAAIoC,EAASlL,EAAKwF,GAAI6sB,EAAK+6B,cAAeptD,EAAxBwF,CAA6BA,GAAI0F,EAASlL,IAC9D,SAE6B,IAAlBkL,EAAQ+pC,OACjBz1C,KAAKkuD,YAGPxiD,EAAQgC,EAAE0tB,0BAA4B1vB,EAAQ8L,OAAOuoB,MAAMlG,OAIvB,QAAlCnuB,EAAQ8L,OAAOuoB,MAAMva,UACa,WAAlC9Z,EAAQ8L,OAAOuoB,MAAMva,SAErB9Z,EAAQgC,EAAEstB,2BAA6B,GAEvCtvB,EAAQgC,EAAE0tB,0BAA4B,EACtC1vB,EAAQgC,EAAEstB,2BAA6BtvB,EAAQ8L,OAAOuoB,MAAMnG,OAI9B,OAA9BluB,EAAQ8L,OAAOuoB,MAAMC,MACS,KAA9Bt0B,EAAQ8L,OAAOuoB,MAAMC,OAErBt0B,EAAQgC,EAAE0tB,0BAA4B,EACtC1vB,EAAQgC,EAAEstB,2BAA6B,EAE3C,GAAC,CAAAx6B,IAAA,YAAAC,MAED,WACET,KAAK0L,QAAQ+pC,MAAQ,CACnBrI,MAAO,CACLiH,OvM7U+B,SuM8U/BvpC,KvM7U6B,WuM8U7B0M,OAAQ6a,IAGd,KAACq7B,CAAA,CAvOyB,GCrIxBlnD,GAAWpG,GCAXsB,GAAQtB,EAIR+tD,GAHSttD,EAGQ8gC,OAEjBysB,GAAgB1sD,IAAM,WACxB,IAAI8nC,EAAK2kB,GAAQ,IAAK,KAEtB,OADA3kB,EAAG2jB,UAAY,EACY,OAApB3jB,EAAG7nC,KAAK,OACjB,IAII0sD,GAAgBD,IAAiB1sD,IAAM,WACzC,OAAQysD,GAAQ,IAAK,KAAKG,MAC5B,IAEIC,GAAeH,IAAiB1sD,IAAM,WAExC,IAAI8nC,EAAK2kB,GAAQ,KAAM,MAEvB,OADA3kB,EAAG2jB,UAAY,EACW,OAAnB3jB,EAAG7nC,KAAK,MACjB,IAEA6sD,GAAiB,CACfD,aAAcA,GACdF,cAAeA,GACfD,cAAeA,IC5Bb1sD,GAAQtB,EAIR+tD,GAHSttD,EAGQ8gC,OAErB8sB,GAAiB/sD,IAAM,WACrB,IAAI8nC,EAAK2kB,GAAQ,IAAK,KACtB,QAAS3kB,EAAGklB,QAAUllB,EAAG3nC,KAAK,OAAsB,MAAb2nC,EAAGmlB,MAC5C,ICTIjtD,GAAQtB,EAIR+tD,GAHSttD,EAGQ8gC,OAErBitB,GAAiBltD,IAAM,WACrB,IAAI8nC,EAAK2kB,GAAQ,UAAW,KAC5B,MAAiC,MAA1B3kB,EAAG7nC,KAAK,KAAKktD,OAAOvoD,GACI,OAA7B,IAAI8E,QAAQo+B,EAAI,QACpB,INRIrnC,GAAO/B,GACP8C,GAAcrC,EACdyC,GAAWc,GACX0qD,GGDa,WACf,IAAIz7C,EAAO7M,GAASxG,MAChB+H,EAAS,GASb,OARIsL,EAAK07C,aAAYhnD,GAAU,KAC3BsL,EAAKzT,SAAQmI,GAAU,KACvBsL,EAAK27C,aAAYjnD,GAAU,KAC3BsL,EAAK47C,YAAWlnD,GAAU,KAC1BsL,EAAKq7C,SAAQ3mD,GAAU,KACvBsL,EAAK67C,UAASnnD,GAAU,KACxBsL,EAAK87C,cAAapnD,GAAU,KAC5BsL,EAAKi7C,SAAQvmD,GAAU,KACpBA,CACT,EHVIqnD,GAAgBrqD,GAEhBmd,GAAS/X,GACTc,GAAmBb,GAAuCpE,IAC1DqpD,GAAsB57C,GACtB67C,GAAkB/2C,GAElBg3C,GANStqD,EAMc,wBAAyBvB,OAAOxB,UAAUkJ,SACjEokD,GAAa7tB,OAAOz/B,UAAUP,KAC9B8tD,GAAcD,GACdtqC,GAAShiB,GAAY,GAAGgiB,QACxBrW,GAAU3L,GAAY,GAAG2L,SACzBzD,GAAUlI,GAAY,GAAGkI,SACzBF,GAAchI,GAAY,GAAGiI,OAE7BukD,IAEEnC,GAAM,MACVprD,GAAKqtD,GAFDlC,GAAM,IAEY,KACtBnrD,GAAKqtD,GAAYjC,GAAK,KACG,IAAlBD,GAAIH,WAAqC,IAAlBI,GAAIJ,WAGhCiB,GAAgBgB,GAAcb,aAG9BoB,QAAuCzuD,IAAvB,OAAOS,KAAK,IAAI,IAExB+tD,IAA4BC,IAAiBvB,IAAiBiB,IAAuBC,MAG/FG,GAAc,SAAcv/C,GAC1B,IAIInI,EAAQ6nD,EAAQzC,EAAW1rD,EAAOuN,EAAGlF,EAAQ+lD,EAJ7CrmB,EAAKxpC,KACLsK,EAAQW,GAAiBu+B,GACzBsmB,EAAMxsD,GAAS4M,GACf6/C,EAAMzlD,EAAMylD,IAGhB,GAAIA,EAIF,OAHAA,EAAI5C,UAAY3jB,EAAG2jB,UACnBplD,EAAS5F,GAAKstD,GAAaM,EAAKD,GAChCtmB,EAAG2jB,UAAY4C,EAAI5C,UACZplD,EAGT,IAAI8mD,EAASvkD,EAAMukD,OACfP,EAASF,IAAiB5kB,EAAG8kB,OAC7BK,EAAQxsD,GAAK2sD,GAAatlB,GAC1BhoC,EAASgoC,EAAGhoC,OACZwuD,EAAa,EACbC,EAAUH,EA+Cd,GA7CIxB,IACFK,EAAQvjD,GAAQujD,EAAO,IAAK,KACC,IAAzB9/C,GAAQ8/C,EAAO,OACjBA,GAAS,KAGXsB,EAAU/kD,GAAY4kD,EAAKtmB,EAAG2jB,WAE1B3jB,EAAG2jB,UAAY,KAAO3jB,EAAGylB,WAAazlB,EAAGylB,WAA+C,OAAlC/pC,GAAO4qC,EAAKtmB,EAAG2jB,UAAY,MACnF3rD,EAAS,OAASA,EAAS,IAC3ByuD,EAAU,IAAMA,EAChBD,KAIFJ,EAAS,IAAIjuB,OAAO,OAASngC,EAAS,IAAKmtD,IAGzCgB,KACFC,EAAS,IAAIjuB,OAAO,IAAMngC,EAAS,WAAYmtD,IAE7Ce,KAA0BvC,EAAY3jB,EAAG2jB,WAE7C1rD,EAAQU,GAAKqtD,GAAYlB,EAASsB,EAASpmB,EAAIymB,GAE3C3B,EACE7sD,GACFA,EAAMgG,MAAQyD,GAAYzJ,EAAMgG,MAAOuoD,GACvCvuD,EAAM,GAAKyJ,GAAYzJ,EAAM,GAAIuuD,GACjCvuD,EAAMwM,MAAQu7B,EAAG2jB,UACjB3jB,EAAG2jB,WAAa1rD,EAAM,GAAGoF,QACpB2iC,EAAG2jB,UAAY,EACbuC,IAA4BjuD,IACrC+nC,EAAG2jB,UAAY3jB,EAAG5pC,OAAS6B,EAAMwM,MAAQxM,EAAM,GAAGoF,OAASsmD,GAEzDwC,IAAiBluD,GAASA,EAAMoF,OAAS,GAG3C1E,GAAKotD,GAAe9tD,EAAM,GAAImuD,GAAQ,WACpC,IAAK5gD,EAAI,EAAGA,EAAIxM,UAAUqE,OAAS,EAAGmI,SACf9N,IAAjBsB,UAAUwM,KAAkBvN,EAAMuN,QAAK9N,EAErD,IAGQO,GAASotD,EAEX,IADAptD,EAAMotD,OAAS/kD,EAASoY,GAAO,MAC1BlT,EAAI,EAAGA,EAAI6/C,EAAOhoD,OAAQmI,IAE7BlF,GADA+lD,EAAQhB,EAAO7/C,IACF,IAAMvN,EAAMouD,EAAM,IAInC,OAAOpuD,CACX,GAGA,IAAAyuD,GAAiBT,GOnHTrvD,GAKN,CAAEkQ,OAAQ,SAAUkB,OAAO,EAAMR,OAAQ,IAAIrP,OAJpCd,IAIqD,CAC9Dc,KALSd,KCCX,UAAIqC,GAAcrC,GACdkL,GAAgB3H,GAChB8rD,GAAarrD,GACbnD,GAAQqD,EACRM,GAAkBJ,GAClB4E,GAA8BM,GAE9B0H,GAAUxM,GAAgB,WAC1B8qD,GAAkBxuB,OAAOz/B,UCVzBgjB,GAAS9kB,GAAyC8kB,OCAlDhiB,GAAc9C,EACd0C,GAAWjC,EAEX2M,GAAQ7N,KAAK6N,MACb0X,GAAShiB,GAAY,GAAGgiB,QACxB9Z,GAAUlI,GAAY,GAAGkI,SACzBF,GAAchI,GAAY,GAAGiI,OAE7BilD,GAAuB,8BACvBC,GAAgC,sBCThCluD,GAAO/B,GACPoG,GAAW3F,GACXgF,GAAazB,GACboI,GAAU3H,GACVqrD,GAAanrD,GAEbrC,GAAaC,UCNbJ,GAAQnC,GACR+B,GAAOtB,GACPqC,GAAckB,EACdksD,GJSa,SAAUrsC,EAAKtiB,EAAMmiB,EAAQysC,GAC5C,IAAIC,EAASnrD,GAAgB4e,GAEzBwsC,GAAuB/uD,IAAM,WAE/B,IAAIkH,EAAI,CAAA,EAER,OADAA,EAAE4nD,GAAU,WAAc,OAAO,CAAE,EACb,IAAf,GAAGvsC,GAAKrb,EACnB,IAEM8nD,EAAoBD,IAAwB/uD,IAAM,WAEpD,IAAIivD,GAAa,EACbnnB,EAAK,IAqBT,MAnBY,UAARvlB,KAIFulB,EAAK,CAAA,GAGF19B,YAAc,GACjB09B,EAAG19B,YAAY+F,IAAW,WAAc,OAAO23B,GAC/CA,EAAGmlB,MAAQ,GACXnlB,EAAGgnB,GAAU,IAAIA,IAGnBhnB,EAAG7nC,KAAO,WAER,OADAgvD,GAAa,EACN,IACb,EAEInnB,EAAGgnB,GAAQ,KACHG,CACZ,IAEE,IACGF,IACAC,GACD5sC,EACA,CACA,IAAI8sC,EAA8B1tD,GAAY,IAAIstD,IAC9CxsC,EAAUriB,EAAK6uD,EAAQ,GAAGvsC,IAAM,SAAU4sC,EAAc7oB,EAAQ8nB,EAAKgB,EAAMC,GAC7E,IAAIhgC,EAAwB7tB,GAAY2tD,GACpCG,EAAQhpB,EAAOrmC,KACnB,OAAIqvD,IAAUd,IAAcc,IAAUb,GAAgBxuD,KAChD8uD,IAAwBM,EAInB,CAAEn0C,MAAM,EAAMnc,MAAOmwD,EAA4B5oB,EAAQ8nB,EAAKgB,IAEhE,CAAEl0C,MAAM,EAAMnc,MAAOswB,EAAsB++B,EAAK9nB,EAAQ8oB,IAE1D,CAAEl0C,MAAM,EACrB,IAEI7Q,GAAcrI,OAAOxB,UAAW+hB,EAAKD,EAAQ,IAC7CjY,GAAcokD,GAAiBK,EAAQxsC,EAAQ,GAChD,CAEGusC,GAAM1mD,GAA4BsmD,GAAgBK,GAAS,QAAQ,EACzE,EIvEI9uD,GAAQqD,EACRyB,GAAWvB,GACXY,GAAasE,GACb1H,GAAoB2H,EACpBwD,GAAsB6F,GACtBtF,GAAWoK,GACXjV,GAAWwQ,GACXlR,GAAyBoR,EACzBi9C,GHRa,SAAUj3C,EAAG/L,EAAOihD,GACnC,OAAOjhD,GAASihD,EAAUhqC,GAAOlL,EAAG/L,GAAOpH,OAAS,EACtD,EGOIO,GAAYkc,GACZ4tC,GFDa,SAAUC,EAASrB,EAAKtqC,EAAU4rC,EAAUC,EAAe3hD,GAC1E,IAAI4hD,EAAU9rC,EAAW2rC,EAAQtqD,OAC7B0qD,EAAIH,EAASvqD,OACbqnC,EAAUmiB,GAKd,YAJsBnvD,IAAlBmwD,IACFA,EAAgBvuD,GAASuuD,GACzBnjB,EAAUkiB,IAELhlD,GAAQsE,EAAaw+B,GAAS,SAAUzsC,EAAO+vD,GACpD,IAAIC,EACJ,OAAQvsC,GAAOssC,EAAI,IACjB,IAAK,IAAK,MAAO,IACjB,IAAK,IAAK,OAAOL,EACjB,IAAK,IAAK,OAAOjmD,GAAY4kD,EAAK,EAAGtqC,GACrC,IAAK,IAAK,OAAOta,GAAY4kD,EAAKwB,GAClC,IAAK,IACHG,EAAUJ,EAAcnmD,GAAYsmD,EAAI,GAAI,IAC5C,MACF,QACE,IAAI7jD,GAAK6jD,EACT,GAAU,IAAN7jD,EAAS,OAAOlM,EACpB,GAAIkM,EAAI4jD,EAAG,CACT,IAAI5oD,EAAI6E,GAAMG,EAAI,IAClB,OAAU,IAANhF,EAAgBlH,EAChBkH,GAAK4oD,OAA8BrwD,IAApBkwD,EAASzoD,EAAI,GAAmBuc,GAAOssC,EAAI,GAAKJ,EAASzoD,EAAI,GAAKuc,GAAOssC,EAAI,GACzF/vD,CACR,CACDgwD,EAAUL,EAASzjD,EAAI,GAE3B,YAAmBzM,IAAZuwD,EAAwB,GAAKA,CACxC,GACA,EE7BIC,GDLa,SAAUC,EAAG33C,GAC5B,IAAIrY,EAAOgwD,EAAEhwD,KACb,GAAIkE,GAAWlE,GAAO,CACpB,IAAIoG,EAAS5F,GAAKR,EAAMgwD,EAAG33C,GAE3B,OADe,OAAXjS,GAAiBvB,GAASuB,GACvBA,CACR,CACD,GAAmB,WAAfyE,GAAQmlD,GAAiB,OAAOxvD,GAAK+tD,GAAYyB,EAAG33C,GACxD,MAAM,IAAItX,GAAW,8CACvB,ECDIkvD,GAFkBC,GAEQ,WAC1B/jD,GAAMnO,KAAKmO,IACXC,GAAMpO,KAAKoO,IACXoB,GAASjM,GAAY,GAAGiM,QACxBhO,GAAO+B,GAAY,GAAG/B,MACtB2wD,GAAgB5uD,GAAY,GAAG2L,SAC/B3D,GAAchI,GAAY,GAAGiI,OAQ7B4mD,GAEgC,OAA3B,IAAI3mD,QAAQ,IAAK,MAItB4mD,KACE,IAAIJ,KAC6B,KAA5B,IAAIA,IAAS,IAAK,MAKzBK,IAAiCvwD,IAAM,WACzC,IAAI8nC,EAAK,IAOT,OANAA,EAAG7nC,KAAO,WACR,IAAIoG,EAAS,GAEb,OADAA,EAAO8mD,OAAS,CAAEvoD,EAAG,KACdyB,CACX,EAEoC,MAA3B,GAAGqD,QAAQo+B,EAAI,OACxB,IAGA8mB,GAA8B,WAAW,SAAUna,EAAGoZ,EAAe2C,GACnE,IAAIC,EAAoBH,GAA+C,IAAM,KAE7E,MAAO,CAGL,SAAiBI,EAAaC,GAC5B,IAAIzpD,EAAIhG,GAAuB5C,MAC3BsyD,EAAW7vD,GAAkB2vD,QAAelxD,EAAYkG,GAAUgrD,EAAaR,IACnF,OAAOU,EACHnwD,GAAKmwD,EAAUF,EAAaxpD,EAAGypD,GAC/BlwD,GAAKotD,EAAejsD,GAASsF,GAAIwpD,EAAaC,EACnD,EAGD,SAAUniD,EAAQmiD,GAChB,IAAI1kB,EAAKnnC,GAASxG,MACdga,EAAI1W,GAAS4M,GAEjB,GACyB,iBAAhBmiD,IAC6C,IAApDP,GAAcO,EAAcF,KACW,IAAvCL,GAAcO,EAAc,MAC5B,CACA,IAAIE,EAAML,EAAgB3C,EAAe5hB,EAAI3zB,EAAGq4C,GAChD,GAAIE,EAAI31C,KAAM,OAAO21C,EAAI9xD,KAC1B,CAED,IAAI+xD,EAAoB3sD,GAAWwsD,GAC9BG,IAAmBH,EAAe/uD,GAAS+uD,IAEhD,IACII,EADA7yD,EAAS+tC,EAAG/tC,OAEZA,IACF6yD,EAAc9kB,EAAGuhB,QACjBvhB,EAAGwf,UAAY,GAKjB,IAFA,IACIplD,EADAi3B,EAAU,GAIG,QADfj3B,EAAS2pD,GAAW/jB,EAAI3zB,MAGxB7Y,GAAK69B,EAASj3B,GACTnI,IALM,CAQM,KADF0D,GAASyE,EAAO,MACV4lC,EAAGwf,UAAY8D,GAAmBj3C,EAAG7L,GAASw/B,EAAGwf,WAAYsF,GACnF,CAID,IAFA,IAlFwB/yD,EAkFpBgzD,EAAoB,GACpBC,EAAqB,EAChB3jD,EAAI,EAAGA,EAAIgwB,EAAQn4B,OAAQmI,IAAK,CAYvC,IATA,IAGIU,EAHAyhD,EAAU7tD,IAFdyE,EAASi3B,EAAQhwB,IAEa,IAC1BwW,EAAW1X,GAAIC,GAAIH,GAAoB7F,EAAOkG,OAAQ+L,EAAEnT,QAAS,GACjEuqD,EAAW,GAONvlC,EAAI,EAAGA,EAAI9jB,EAAOlB,OAAQglB,IAAK1qB,GAAKiwD,OA/FrClwD,KADcxB,EAgG+CqI,EAAO8jB,IA/FxDnsB,EAAKgE,OAAOhE,IAgGhC,IAAI2xD,EAAgBtpD,EAAO8mD,OAC3B,GAAI2D,EAAmB,CACrB,IAAII,EAAezjD,GAAO,CAACgiD,GAAUC,EAAU5rC,EAAUxL,QACnC9Y,IAAlBmwD,GAA6BlwD,GAAKyxD,EAAcvB,GACpD3hD,EAAcpM,GAASf,GAAM8vD,OAAcnxD,EAAW0xD,GAChE,MACUljD,EAAcwhD,GAAgBC,EAASn3C,EAAGwL,EAAU4rC,EAAUC,EAAegB,GAE3E7sC,GAAYmtC,IACdD,GAAqBxnD,GAAY8O,EAAG24C,EAAoBntC,GAAY9V,EACpEijD,EAAqBntC,EAAW2rC,EAAQtqD,OAE3C,CAED,OAAO6rD,EAAoBxnD,GAAY8O,EAAG24C,EAC3C,EAEL,IAAIV,KAAkCF,IAAoBC,IC3IxC,IAMGa,GAAW,WAG9B,SAAAA,EAAYtgC,GAAoBC,OAAAqgC,gBAC9B7yD,KAAKuyB,SAAWA,CAClB,CA2CC,OAzCDI,EAAAkgC,EAAA,CAAA,CAAAryD,IAAA,WAAAC,MASM,SACJe,EACAsxD,EACAC,mIAEsB,iBAAXvxD,GAAuBA,EAAOqF,OAAS,GAAC,CAAAmsD,EAAA38C,KAAA,EAAA,KAAA,CAAA,OAAA28C,EAAAC,OAC1CppC,SAAAA,GAAA7pB,KAAWkzD,GAAA,IAAAC,IAAAhxD,KAAXnC,KAAYwB,EAAQsxD,EAAgBC,IAAa,KAAA,EAMzD,OAHG1+B,EAAkB,GAClB9iB,MAAMqX,QAAQpnB,KAChB6yB,EAAI7yB,GACLwxD,EAAAC,OAAA,SAEM,IAAI97C,SAAQ,SAACQ,GAClBA,EAAQ0c,EACT,KAAC,KAAA,EAAA,IAAA,MAAA,OAAA2+B,EAAAn0C,OAAA,GAAAu0C,EAAApzD,KACH,IAAA,GAAA,CAAAQ,IAAA,WAAAC,MAED,SACEqvD,EACAgD,EACAC,GAAuB,IAAAlgC,EAAA7yB,KAEnBqzD,EAASvD,EAAI1kD,QAAQ,wBAAwB,SAAC+qC,EAAGzZ,GAAM,OAEzD7J,EAAKN,SAASyB,WAAWb,KAAK2/B,GAAgBp2B,OAAOA,MAKvD,OAJA22B,EAASA,EAAOjoD,QAAQ,sBAAsB,SAAC+qC,EAAGzZ,GAAM,OAEtD7J,EAAKN,SAASyB,WAAWb,KAAK4/B,GAAcr2B,OAAOA,KAGvD,KAACm2B,CAAA,CAhD6B,8BAmD5BrxD,EACAsxD,EACAC,GAEA,IAAAt5B,EAA8Bz5B,KAAKuyB,SAAS7mB,QAAQA,QAAQoE,KAApDhF,EAAI2uB,EAAJ3uB,KAAMkjD,EAAWv0B,EAAXu0B,YAERsF,EAAMtzD,KAAKuzD,SAAS/xD,EAAkBsxD,EAAgBC,GAE5D,OAAQjoD,GACN,IAAK,OACH,OAAO0oD,EAAIA,KAACF,EAAKtF,GACnB,IAAK,MACH,OAAOyF,EAAGA,IAACH,EAAKtF,GAClB,IAAK,MACH,OAAO0F,MAAI,KAAMJ,EAAKtF,GACxB,IAAK,MACH,OAAOhuB,EAAIA,KAACszB,EAAKtF,GACnB,QACE,OAAO,IAAI72C,SAAQ,SAACQ,GAClBA,EAAQ,GACV,IAEN,EChFF,IAAIzP,GAAc9H,GACduzD,GAAuB9yD,GAAsCqF,OAC7DhD,GAAckB,EACdwN,GAAwB/M,GAExB5C,GAAoBhC,SAASiC,UAC7BkH,GAAmBlG,GAAYjB,GAAkBqB,UACjDswD,GAAS,mEACTlC,GAAaxuD,GAAY0wD,GAAOjyD,MAKhCuG,KAAgByrD,IAClB/hD,GAAsB3P,GALb,OAKsC,CAC7CvB,cAAc,EACdsF,IAAK,WACH,IACE,OAAO0rD,GAAWkC,GAAQxqD,GAAiBpJ,OAAO,EACnD,CAAC,MAAOY,GACP,MAAO,EACR,CACF,IAEL,IAAAizD,GAAA,CAAA1zD,QAAA,CAAA,kBCzBoE+rB,UAAwI,WAA0B,IAAIyP,EAAE,IAAIhS,EAAE,IAAIhc,EAAE,KAAKqS,EAAE,cAAchR,EAAE,SAASwyB,EAAE,SAASsyB,EAAE,OAAOxtD,EAAE,MAAMytD,EAAE,OAAOjX,EAAE,QAAQn0C,EAAE,UAAU2xB,EAAE,OAAOjG,EAAE,OAAOlJ,EAAE,eAAevR,EAAE,6FAA6F6e,EAAE,sFAAsFu7B,EAAE,CAAC1uD,KAAK,KAAK2uD,SAAS,2DAA2DjwD,MAAM,KAAKkwD,OAAO,wFAAwFlwD,MAAM,KAAKmwD,QAAQ,SAASx4B,GAAG,IAAIhS,EAAE,CAAC,KAAK,KAAK,KAAK,MAAMhc,EAAEguB,EAAE,IAAI,MAAM,IAAIA,GAAGhS,GAAGhc,EAAE,IAAI,KAAKgc,EAAEhc,IAAIgc,EAAE,IAAI,GAAG,GAAG4nC,EAAE,SAAS51B,EAAEhS,EAAEhc,GAAG,IAAIqS,EAAEtc,OAAOi4B,GAAG,OAAO3b,GAAGA,EAAEnZ,QAAQ8iB,EAAEgS,EAAE,GAAGpqB,MAAMoY,EAAE,EAAE3J,EAAEnZ,QAAQwE,KAAKsC,GAAGguB,CAAC,EAAErH,EAAE,CAACkN,EAAE+vB,EAAE6C,EAAE,SAASz4B,GAAG,IAAIhS,GAAGgS,EAAE04B,YAAY1mD,EAAEhO,KAAK6iC,IAAI7Y,GAAG3J,EAAErgB,KAAK6N,MAAMG,EAAE,IAAIqB,EAAErB,EAAE,GAAG,OAAOgc,GAAG,EAAE,IAAI,KAAK4nC,EAAEvxC,EAAE,EAAE,KAAK,IAAIuxC,EAAEviD,EAAE,EAAE,IAAI,EAAEuiD,EAAE,SAAS51B,EAAEhS,EAAEhc,GAAG,GAAGgc,EAAEwJ,OAAOxlB,EAAEwlB,OAAO,OAAOwI,EAAEhuB,EAAEgc,GAAG,IAAI3J,EAAE,IAAIrS,EAAEkvB,OAAOlT,EAAEkT,SAASlvB,EAAEivB,QAAQjT,EAAEiT,SAAS5tB,EAAE2a,EAAE2qC,QAAQp+C,IAAI8J,EAAE88B,GAAGtb,EAAE7zB,EAAEqB,EAAE,EAAE8kD,EAAEnqC,EAAE2qC,QAAQp+C,IAAI8J,GAAGwhB,GAAG,EAAE,GAAGsb,GAAG,UAAU98B,GAAGrS,EAAEqB,IAAIwyB,EAAExyB,EAAE8kD,EAAEA,EAAE9kD,KAAK,EAAE,EAAE1I,EAAE,SAASq1B,GAAG,OAAOA,EAAE,EAAEh8B,KAAK4N,KAAKouB,IAAI,EAAEh8B,KAAK6N,MAAMmuB,EAAE,EAAE44B,EAAE,SAAS54B,GAAG,MAAM,CAACq4B,EAAElX,EAAErkB,EAAE6B,EAAEH,EAAE45B,EAAE1/B,EAAE/tB,EAAEkuD,EAAEngC,EAAEiG,EAAEw5B,EAAEvC,EAAE/vB,EAAEA,EAAExyB,EAAEylD,GAAGz0C,EAAE00C,EAAE/rD,GAAGgzB,IAAIj4B,OAAOi4B,GAAG,IAAIxrB,cAAc/E,QAAQ,KAAK,GAAG,EAAE0oD,EAAE,SAASn4B,GAAG,YAAO,IAASA,CAAC,GAAGg5B,EAAE,KAAKH,EAAE,CAAE,EAACA,EAAEG,GAAGX,EAAE,IAAIO,EAAE,iBAAiBv6C,EAAE,SAAS2hB,GAAG,OAAOA,aAAawa,MAAMxa,IAAIA,EAAE44B,GAAG,EAAEp6B,EAAE,SAASwB,EAAEhS,EAAEhc,EAAEqS,GAAG,IAAIhR,EAAE,IAAI2a,EAAE,OAAOgrC,EAAE,GAAG,iBAAiBhrC,EAAE,CAAC,IAAI6X,EAAE7X,EAAExZ,cAAcqkD,EAAEhzB,KAAKxyB,EAAEwyB,GAAG7zB,IAAI6mD,EAAEhzB,GAAG7zB,EAAEqB,EAAEwyB,GAAG,IAAIsyB,EAAEnqC,EAAE3lB,MAAM,KAAK,IAAIgL,GAAG8kD,EAAEjtD,OAAO,EAAE,OAAO80B,EAAEm4B,EAAE,GAAG,KAAK,CAAC,IAAIxtD,EAAEqjB,EAAErkB,KAAKkvD,EAAEluD,GAAGqjB,EAAE3a,EAAE1I,CAAC,CAAC,OAAO0Z,GAAGhR,IAAI2lD,EAAE3lD,GAAGA,IAAIgR,GAAG20C,CAAC,EAAE/rD,EAAE,SAAS+yB,EAAEhS,GAAG,GAAG3P,EAAE2hB,GAAG,OAAOA,EAAE24B,QAAQ,IAAI3mD,EAAE,iBAAiBgc,EAAEA,EAAE,GAAG,OAAOhc,EAAEwlB,KAAKwI,EAAEhuB,EAAEwH,KAAK3S,UAAU,IAAI2zC,EAAExoC,EAAE,EAAEyM,EAAEka,EAAEla,EAAE+Q,EAAEgP,EAAE/f,EAAEpL,EAAEgL,EAAEI,EAAE+f,EAAE,SAASwB,EAAEhS,GAAG,OAAO/gB,EAAE+yB,EAAE,CAACmyB,OAAOnkC,EAAEirC,GAAGC,IAAIlrC,EAAEmrC,GAAGpnD,EAAEic,EAAEorC,GAAGC,QAAQrrC,EAAEqrC,SAAS,EAAE,IAAI7e,EAAE,WAAW,SAAS6d,EAAEr4B,GAAG37B,KAAK40D,GAAGz6B,EAAEwB,EAAEmyB,OAAO,MAAK,GAAI9tD,KAAKypC,MAAM9N,GAAG37B,KAAK+0D,GAAG/0D,KAAK+0D,IAAIp5B,EAAEjuB,GAAG,CAAA,EAAG1N,KAAKu0D,IAAG,CAAE,CAAC,IAAIhD,EAAEyC,EAAE9xD,UAAU,OAAOqvD,EAAE9nB,MAAM,SAAS9N,GAAG37B,KAAKi1D,GAAG,SAASt5B,GAAG,IAAIhS,EAAEgS,EAAExI,KAAKxlB,EAAEguB,EAAEk5B,IAAI,GAAG,OAAOlrC,EAAE,OAAO,IAAIkL,KAAKwU,KAAK,GAAGjvB,EAAE05C,EAAEnqC,GAAG,OAAO,IAAIkL,KAAK,GAAGlL,aAAakL,KAAK,OAAO,IAAIA,KAAKlL,GAAG,GAAG,iBAAiBA,IAAI,MAAM9nB,KAAK8nB,GAAG,CAAC,IAAI3J,EAAE2J,EAAEloB,MAAMmY,GAAG,GAAGoG,EAAE,CAAC,IAAIhR,EAAEgR,EAAE,GAAG,GAAG,EAAEwhB,GAAGxhB,EAAE,IAAI,KAAKk1C,UAAU,EAAE,GAAG,OAAOvnD,EAAE,IAAIknB,KAAKA,KAAKsgC,IAAIn1C,EAAE,GAAGhR,EAAEgR,EAAE,IAAI,EAAEA,EAAE,IAAI,EAAEA,EAAE,IAAI,EAAEA,EAAE,IAAI,EAAEwhB,IAAI,IAAI3M,KAAK7U,EAAE,GAAGhR,EAAEgR,EAAE,IAAI,EAAEA,EAAE,IAAI,EAAEA,EAAE,IAAI,EAAEA,EAAE,IAAI,EAAEwhB,EAAE,CAAC,CAAC,OAAO,IAAI3M,KAAKlL,EAAE,CAA3X,CAA6XgS,GAAG37B,KAAKmyB,MAAM,EAAEo/B,EAAEp/B,KAAK,WAAW,IAAIwJ,EAAE37B,KAAKi1D,GAAGj1D,KAAKo1D,GAAGz5B,EAAE05B,cAAcr1D,KAAKs1D,GAAG35B,EAAE45B,WAAWv1D,KAAKw1D,GAAG75B,EAAE85B,UAAUz1D,KAAK01D,GAAG/5B,EAAEg6B,SAAS31D,KAAK41D,GAAGj6B,EAAEk6B,WAAW71D,KAAK81D,GAAGn6B,EAAEo6B,aAAa/1D,KAAKg2D,GAAGr6B,EAAEs6B,aAAaj2D,KAAKk2D,IAAIv6B,EAAEw6B,iBAAiB,EAAE5E,EAAE6E,OAAO,WAAW,OAAOh8C,CAAC,EAAEm3C,EAAE8E,QAAQ,WAAW,QAAQr2D,KAAKi1D,GAAG3xD,aAAa6nB,EAAE,EAAEomC,EAAE+E,OAAO,SAAS36B,EAAEhS,GAAG,IAAIhc,EAAE/E,EAAE+yB,GAAG,OAAO37B,KAAKu2D,QAAQ5sC,IAAIhc,GAAGA,GAAG3N,KAAKw2D,MAAM7sC,EAAE,EAAE4nC,EAAEkF,QAAQ,SAAS96B,EAAEhS,GAAG,OAAO/gB,EAAE+yB,GAAG37B,KAAKu2D,QAAQ5sC,EAAE,EAAE4nC,EAAEmF,SAAS,SAAS/6B,EAAEhS,GAAG,OAAO3pB,KAAKw2D,MAAM7sC,GAAG/gB,EAAE+yB,EAAE,EAAE41B,EAAEoF,GAAG,SAASh7B,EAAEhS,EAAEhc,GAAG,OAAOyM,EAAE05C,EAAEn4B,GAAG37B,KAAK2pB,GAAG3pB,KAAKsJ,IAAIqE,EAAEguB,EAAE,EAAE41B,EAAEqF,KAAK,WAAW,OAAOj3D,KAAK6N,MAAMxN,KAAK4H,UAAU,IAAI,EAAE2pD,EAAE3pD,QAAQ,WAAW,OAAO5H,KAAKi1D,GAAG4B,SAAS,EAAEtF,EAAEgF,QAAQ,SAAS56B,EAAEhS,GAAG,IAAIhc,EAAE3N,KAAKggB,IAAI5F,EAAE05C,EAAEnqC,IAAIA,EAAEhhB,EAAEyR,EAAEm6C,EAAE54B,GAAGxQ,EAAE,SAASwQ,EAAEhS,GAAG,IAAI3a,EAAEoL,EAAE+f,EAAExsB,EAAEmnD,GAAGjgC,KAAKsgC,IAAIxnD,EAAEynD,GAAGzrC,EAAEgS,GAAG,IAAI9G,KAAKlnB,EAAEynD,GAAGzrC,EAAEgS,GAAGhuB,GAAG,OAAOqS,EAAEhR,EAAEA,EAAEwnD,MAAMlwD,EAAE,EAAEsT,EAAE,SAAS+hB,EAAEhS,GAAG,OAAOvP,EAAE+f,EAAExsB,EAAEmpD,SAASn7B,GAAGp5B,MAAMoL,EAAEmpD,OAAO,MAAM92C,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,MAAM7U,MAAMwe,IAAIhc,EAAE,EAAE8qB,EAAEz4B,KAAK01D,GAAG1B,EAAEh0D,KAAKs1D,GAAG/D,EAAEvxD,KAAKw1D,GAAGlhC,EAAE,OAAOt0B,KAAK80D,GAAG,MAAM,IAAI,OAAOnsD,GAAG,KAAK2xB,EAAE,OAAOta,EAAEmL,EAAE,EAAE,GAAGA,EAAE,GAAG,IAAI,KAAK2xB,EAAE,OAAO98B,EAAEmL,EAAE,EAAE6oC,GAAG7oC,EAAE,EAAE6oC,EAAE,GAAG,KAAKD,EAAE,IAAIY,EAAE30D,KAAK+2D,UAAUC,WAAW,EAAExC,GAAG/7B,EAAEk8B,EAAEl8B,EAAE,EAAEA,GAAGk8B,EAAE,OAAOxpC,EAAEnL,EAAEuxC,EAAEiD,EAAEjD,GAAG,EAAEiD,GAAGR,GAAG,KAAK1tD,EAAE,KAAK+tB,EAAE,OAAOza,EAAE0a,EAAE,QAAQ,GAAG,KAAKw/B,EAAE,OAAOl6C,EAAE0a,EAAE,UAAU,GAAG,KAAKkN,EAAE,OAAO5nB,EAAE0a,EAAE,UAAU,GAAG,KAAKtlB,EAAE,OAAO4K,EAAE0a,EAAE,eAAe,GAAG,QAAQ,OAAOt0B,KAAKs0D,QAAQ,EAAE/C,EAAEiF,MAAM,SAAS76B,GAAG,OAAO37B,KAAKu2D,QAAQ56B,GAAE,EAAG,EAAE41B,EAAE0F,KAAK,SAASt7B,EAAEhS,GAAG,IAAIhc,EAAEomD,EAAE35C,EAAEm6C,EAAE54B,GAAGhzB,EAAE,OAAO3I,KAAK80D,GAAG,MAAM,IAAI3pC,GAAGxd,EAAE,CAAA,EAAGA,EAAErH,GAAGqC,EAAE,OAAOgF,EAAE0mB,GAAG1rB,EAAE,OAAOgF,EAAEmvC,GAAGn0C,EAAE,QAAQgF,EAAE2sB,GAAG3xB,EAAE,WAAWgF,EAAEmmD,GAAGnrD,EAAE,QAAQgF,EAAE6zB,GAAG74B,EAAE,UAAUgF,EAAEqB,GAAGrG,EAAE,UAAUgF,EAAEqS,GAAGrX,EAAE,eAAegF,GAAGomD,GAAGn6C,EAAEm6C,IAAIztD,EAAEtG,KAAKw1D,IAAI7rC,EAAE3pB,KAAK01D,IAAI/rC,EAAE,GAAGoqC,IAAIjX,GAAGiX,IAAIz5B,EAAE,CAAC,IAAI7B,EAAEz4B,KAAKs0D,QAAQhrD,IAAI+qB,EAAE,GAAGoE,EAAEw8B,GAAG9pC,GAAGvR,GAAG6e,EAAEtG,OAAOnyB,KAAKi1D,GAAGx8B,EAAEnvB,IAAI+qB,EAAE10B,KAAKoO,IAAI/N,KAAKw1D,GAAG/8B,EAAEy+B,gBAAgBjC,EAAE,MAAM9pC,GAAGnrB,KAAKi1D,GAAG9pC,GAAGvR,GAAG,OAAO5Z,KAAKmyB,OAAOnyB,IAAI,EAAEuxD,EAAEjoD,IAAI,SAASqyB,EAAEhS,GAAG,OAAO3pB,KAAKs0D,QAAQ2C,KAAKt7B,EAAEhS,EAAE,EAAE4nC,EAAEvrD,IAAI,SAAS21B,GAAG,OAAO37B,KAAKoa,EAAEm6C,EAAE54B,KAAK,EAAE41B,EAAEr7C,IAAI,SAAS8J,EAAErX,GAAG,IAAI0rB,EAAElJ,EAAEnrB,KAAKggB,EAAE+oB,OAAO/oB,GAAG,IAAIpG,EAAEQ,EAAEm6C,EAAE5rD,GAAG8vB,EAAE,SAASkD,GAAG,IAAIhS,EAAE/gB,EAAEuiB,GAAG,OAAO/Q,EAAE+f,EAAExQ,EAAEwJ,KAAKxJ,EAAEwJ,OAAOxzB,KAAKo2C,MAAMpa,EAAE3b,IAAImL,EAAE,EAAE,GAAGvR,IAAIkjC,EAAE,OAAO98C,KAAKsJ,IAAIwzC,EAAE98C,KAAKs1D,GAAGt1C,GAAG,GAAGpG,IAAI0gB,EAAE,OAAOt6B,KAAKsJ,IAAIgxB,EAAEt6B,KAAKo1D,GAAGp1C,GAAG,GAAGpG,IAAItT,EAAE,OAAOmyB,EAAE,GAAG,GAAG7e,IAAIm6C,EAAE,OAAOt7B,EAAE,GAAG,IAAIu7B,GAAG3/B,EAAE,CAAE,EAACA,EAAEmN,GAAG7X,EAAE0K,EAAEy/B,GAAGnmD,EAAE0mB,EAAErlB,GAAG2sB,EAAEtH,GAAGza,IAAI,EAAE23C,EAAEvxD,KAAKi1D,GAAG4B,UAAU72C,EAAEg0C,EAAE,OAAO55C,EAAE+f,EAAEo3B,EAAEvxD,KAAK,EAAEuxD,EAAE4F,SAAS,SAASx7B,EAAEhS,GAAG,OAAO3pB,KAAKkW,KAAK,EAAEylB,EAAEhS,EAAE,EAAE4nC,EAAE70B,OAAO,SAASf,GAAG,IAAIhS,EAAE3pB,KAAK2N,EAAE3N,KAAK+2D,UAAU,IAAI/2D,KAAKq2D,UAAU,OAAO1oD,EAAEypD,aAAajsC,EAAE,IAAInL,EAAE2b,GAAG,uBAAuB3sB,EAAEoL,EAAEg6C,EAAEp0D,MAAMwhC,EAAExhC,KAAK41D,GAAG9B,EAAE9zD,KAAK81D,GAAGxvD,EAAEtG,KAAKs1D,GAAGvB,EAAEpmD,EAAEsmD,SAASnX,EAAEnvC,EAAEumD,OAAOvrD,EAAEgF,EAAE0pD,SAAS/8B,EAAE,SAASqB,EAAEhuB,EAAEqB,EAAEwyB,GAAG,OAAO7F,IAAIA,EAAEhuB,IAAIguB,EAAEhS,EAAE3J,KAAKhR,EAAErB,GAAGxC,MAAM,EAAEq2B,EAAE,EAAEnN,EAAE,SAASsH,GAAG,OAAOvhB,EAAEonB,EAAEA,EAAE,IAAI,GAAG7F,EAAE,IAAI,EAAE/hB,EAAEjR,GAAG,SAASgzB,EAAEhS,EAAEhc,GAAG,IAAIqS,EAAE2b,EAAE,GAAG,KAAK,KAAK,OAAOhuB,EAAEqS,EAAE7P,cAAc6P,CAAC,EAAE,OAAOA,EAAE5U,QAAQqtB,GAAG,SAASkD,EAAE3b,GAAG,OAAOA,GAAG,SAAS2b,GAAG,OAAOA,GAAG,IAAI,KAAK,OAAOj4B,OAAOimB,EAAEyrC,IAAIjqD,OAAO,GAAG,IAAI,OAAO,OAAOiP,EAAEonB,EAAE7X,EAAEyrC,GAAG,EAAE,KAAK,IAAI,IAAI,OAAO9uD,EAAE,EAAE,IAAI,KAAK,OAAO8T,EAAEonB,EAAEl7B,EAAE,EAAE,EAAE,KAAK,IAAI,MAAM,OAAOg0B,EAAE3sB,EAAE2pD,YAAYhxD,EAAEw2C,EAAE,GAAG,IAAI,OAAO,OAAOxiB,EAAEwiB,EAAEx2C,GAAG,IAAI,IAAI,OAAOqjB,EAAE6rC,GAAG,IAAI,KAAK,OAAOp7C,EAAEonB,EAAE7X,EAAE6rC,GAAG,EAAE,KAAK,IAAI,IAAI,OAAO9xD,OAAOimB,EAAE+rC,IAAI,IAAI,KAAK,OAAOp7B,EAAE3sB,EAAE4pD,YAAY5tC,EAAE+rC,GAAG3B,EAAE,GAAG,IAAI,MAAM,OAAOz5B,EAAE3sB,EAAE6pD,cAAc7tC,EAAE+rC,GAAG3B,EAAE,GAAG,IAAI,OAAO,OAAOA,EAAEpqC,EAAE+rC,IAAI,IAAI,IAAI,OAAOhyD,OAAO89B,GAAG,IAAI,KAAK,OAAOpnB,EAAEonB,EAAEA,EAAE,EAAE,KAAK,IAAI,IAAI,OAAOnN,EAAE,GAAG,IAAI,KAAK,OAAOA,EAAE,GAAG,IAAI,IAAI,OAAOza,EAAE4nB,EAAEsyB,GAAE,GAAI,IAAI,IAAI,OAAOl6C,EAAE4nB,EAAEsyB,GAAE,GAAI,IAAI,IAAI,OAAOpwD,OAAOowD,GAAG,IAAI,KAAK,OAAO15C,EAAEonB,EAAEsyB,EAAE,EAAE,KAAK,IAAI,IAAI,OAAOpwD,OAAOimB,EAAEqsC,IAAI,IAAI,KAAK,OAAO57C,EAAEonB,EAAE7X,EAAEqsC,GAAG,EAAE,KAAK,IAAI,MAAM,OAAO57C,EAAEonB,EAAE7X,EAAEusC,IAAI,EAAE,KAAK,IAAI,IAAI,OAAOlnD,EAAE,OAAO,IAAI,CAAptB,CAAstB2sB,IAAI3sB,EAAE5D,QAAQ,IAAI,GAAI,GAAE,EAAEmmD,EAAE8C,UAAU,WAAW,OAAO,IAAI10D,KAAKo2C,MAAM/1C,KAAKi1D,GAAGwC,oBAAoB,GAAG,EAAElG,EAAEmG,KAAK,SAAS13C,EAAEqU,EAAElJ,GAAG,IAAIvR,EAAE6e,EAAEz4B,KAAKg0D,EAAE55C,EAAEm6C,EAAElgC,GAAGk9B,EAAE3oD,EAAEoX,GAAGsU,GAAGi9B,EAAE8C,YAAYr0D,KAAKq0D,aAAa1qC,EAAEgrC,EAAE30D,KAAKuxD,EAAEiD,EAAE,WAAW,OAAOp6C,EAAEm3C,EAAE94B,EAAE84B,EAAE,EAAE,OAAOyC,GAAG,KAAK15B,EAAE1gB,EAAE46C,IAAI,GAAG,MAAM,KAAK1X,EAAEljC,EAAE46C,IAAI,MAAM,KAAK7rD,EAAEiR,EAAE46C,IAAI,EAAE,MAAM,KAAKT,EAAEn6C,GAAG+6C,EAAErgC,GAAG,OAAO,MAAM,KAAKhuB,EAAEsT,GAAG+6C,EAAErgC,GAAG,MAAM,MAAM,KAAKw/B,EAAEl6C,EAAE+6C,EAAEhnD,EAAE,MAAM,KAAK6zB,EAAE5nB,EAAE+6C,EAAEhrC,EAAE,MAAM,KAAK3a,EAAE4K,EAAE+6C,EAAEh5B,EAAE,MAAM,QAAQ/hB,EAAE+6C,EAAE,OAAOxpC,EAAEvR,EAAEQ,EAAE9T,EAAEsT,EAAE,EAAE23C,EAAE2F,YAAY,WAAW,OAAOl3D,KAAKw2D,MAAM1Z,GAAG0Y,EAAE,EAAEjE,EAAEwF,QAAQ,WAAW,OAAOvC,EAAEx0D,KAAK40D,GAAG,EAAErD,EAAEzD,OAAO,SAASnyB,EAAEhS,GAAG,IAAIgS,EAAE,OAAO37B,KAAK40D,GAAG,IAAIjnD,EAAE3N,KAAKs0D,QAAQt0C,EAAEma,EAAEwB,EAAEhS,GAAE,GAAI,OAAO3J,IAAIrS,EAAEinD,GAAG50C,GAAGrS,CAAC,EAAE4jD,EAAE+C,MAAM,WAAW,OAAOl6C,EAAE+f,EAAEn6B,KAAKi1D,GAAGj1D,KAAK,EAAEuxD,EAAEuF,OAAO,WAAW,OAAO,IAAIjiC,KAAK70B,KAAK4H,UAAU,EAAE2pD,EAAEoG,OAAO,WAAW,OAAO33D,KAAKq2D,UAAUr2D,KAAK43D,cAAc,IAAI,EAAErG,EAAEqG,YAAY,WAAW,OAAO53D,KAAKi1D,GAAG2C,aAAa,EAAErG,EAAEjuD,SAAS,WAAW,OAAOtD,KAAKi1D,GAAG4C,aAAa,EAAE7D,CAAC,CAA/sJ,GAAmtJhqC,EAAEmsB,EAAEj0C,UAAU,OAAO0G,EAAE1G,UAAU8nB,EAAE,CAAC,CAAC,MAAMhK,GAAG,CAAC,KAAKhR,GAAG,CAAC,KAAKwyB,GAAG,CAAC,KAAKsyB,GAAG,CAAC,KAAKxtD,GAAG,CAAC,KAAKw2C,GAAG,CAAC,KAAKxiB,GAAG,CAAC,KAAKjG,IAAIlH,SAAS,SAASwO,GAAG3R,EAAE2R,EAAE,IAAI,SAAShS,GAAG,OAAO3pB,KAAK22D,GAAGhtC,EAAEgS,EAAE,GAAGA,EAAE,GAAG,CAAE,IAAG/yB,EAAEkvD,OAAO,SAASn8B,EAAEhS,GAAG,OAAOgS,EAAEo8B,KAAKp8B,EAAEhS,EAAEwsB,EAAEvtC,GAAG+yB,EAAEo8B,IAAG,GAAInvD,CAAC,EAAEA,EAAEklD,OAAO3zB,EAAEvxB,EAAEovD,QAAQh+C,EAAEpR,EAAEguD,KAAK,SAASj7B,GAAG,OAAO/yB,EAAE,IAAI+yB,EAAE,EAAE/yB,EAAEqvD,GAAGzD,EAAEG,GAAG/rD,EAAEsvD,GAAG1D,EAAE5rD,EAAE2rD,EAAE,GAAG3rD,CAAE,CAAl6N+gB,4DCA6I,IAA4BA,EAASgS,EAAjMzP,EAAe/rB,SAAyKwpB,EAAE,OAAOgS,EAAE,OAAc,SAAS3sB,EAAErB,EAAEqS,GAAG,IAAIrX,EAAEgF,EAAEzL,UAAUyG,EAAEg0B,KAAK,SAAS3tB,GAAG,QAAG,IAASA,IAAIA,EAAE,MAAM,OAAOA,EAAE,OAAOhP,KAAKkW,IAAI,GAAGlH,EAAEhP,KAAK28B,QAAQ,OAAO,IAAIhvB,EAAE3N,KAAK+2D,UAAUoB,WAAW,EAAE,GAAG,KAAKn4D,KAAK48B,SAAS58B,KAAKmzB,OAAO,GAAG,CAAC,IAAIxqB,EAAEqX,EAAEhgB,MAAMu2D,QAAQ56B,GAAGzlB,IAAI,EAAEylB,GAAGxI,KAAKxlB,GAAG6zB,EAAExhB,EAAEhgB,MAAMw2D,MAAM7sC,GAAG,GAAGhhB,EAAE+tD,SAASl1B,GAAG,OAAO,CAAC,CAAC,IAAIl7B,EAAE0Z,EAAEhgB,MAAMu2D,QAAQ56B,GAAGxI,KAAKxlB,GAAG4oD,QAAQ5sC,GAAGwtC,SAAS,EAAE,eAAepD,EAAE/zD,KAAK03D,KAAKpxD,EAAEqjB,GAAE,GAAI,OAAOoqC,EAAE,EAAE/zC,EAAEhgB,MAAMu2D,QAAQ,QAAQ55B,OAAOh9B,KAAK4N,KAAKwmD,EAAE,EAAEprD,EAAEyvD,MAAM,SAASzuC,GAAG,YAAO,IAASA,IAAIA,EAAE,MAAM3pB,KAAK28B,KAAKhT,EAAE,CAAC,4DCA9rBuC,EAAe/rB,QAA2K,SAASwpB,EAAEgS,EAAEhuB,GAAGguB,EAAEz5B,UAAUm2D,UAAU,SAAS1uC,GAAG,IAAIgS,EAAEh8B,KAAKo2C,OAAOpoC,EAAE3N,MAAMu2D,QAAQ,OAAO5oD,EAAE3N,MAAMu2D,QAAQ,SAAS,OAAO,EAAE,OAAO,MAAM5sC,EAAEgS,EAAE37B,KAAKkW,IAAIyT,EAAEgS,EAAE,MAAM,CAAC,2DCA5VzP,EAAA/rB,QAAwL,SAASwpB,EAAEgS,GAAGA,EAAEz5B,UAAUo2D,QAAQ,SAAS3uC,GAAG,IAAIgS,EAAE37B,KAAK+2D,UAAUC,WAAW,EAAEhoD,EAAEhP,KAAK01D,GAAG/nD,GAAGqB,EAAE2sB,EAAE3sB,EAAE,EAAEA,GAAG2sB,EAAE,OAAO37B,KAAKo2D,SAAStC,EAAEnqC,GAAGhc,EAAE3N,KAAKm3D,SAASxpD,EAAE,OAAOuI,IAAIyT,EAAE,MAAM,CAAC,2DCAlWuC,EAAA/rB,QAAuL,SAASwpB,EAAEhc,EAAEguB,GAAG,IAAI3sB,EAAE,SAAS2a,EAAEhc,GAAG,IAAIA,IAAIA,EAAE9G,QAAQ,IAAI8G,EAAE9G,SAAS8G,EAAE,IAAI,IAAIA,EAAE9G,QAAQ0K,MAAMqX,QAAQjb,EAAE,MAAMA,EAAE,GAAG9G,OAAO,OAAO,KAAK,IAAI80B,EAAE,IAAIhuB,EAAE9G,QAAQ8G,EAAE,GAAG9G,OAAO,IAAI8G,EAAEA,EAAE,IAAIguB,GAAGhuB,EAAEA,EAAE0f,QAAM,SAAW1D,GAAG,OAAOA,CAAE,KAAI,GAAG,IAAI,IAAI3a,EAAE,EAAEA,EAAErB,EAAE9G,OAAOmI,GAAG,EAAErB,EAAEqB,GAAGqnD,YAAY1oD,EAAEqB,GAAG2a,GAAGgS,KAAKA,EAAEhuB,EAAEqB,IAAI,OAAO2sB,CAAC,EAAEA,EAAE7tB,IAAI,WAAW,IAAI6b,EAAE,GAAGxe,MAAMhJ,KAAKK,UAAU,GAAG,OAAOwM,EAAE,UAAU2a,EAAE,EAAEgS,EAAE5tB,IAAI,WAAW,IAAI4b,EAAE,GAAGxe,MAAMhJ,KAAKK,UAAU,GAAG,OAAOwM,EAAE,WAAW2a,EAAE,CAAC,2DCAnnBuC,EAAA/rB,QAA+L,SAASwpB,EAAEhc,GAAGA,EAAEzL,UAAUq2D,eAAe,WAAW,IAAI5uC,EAAE3pB,KAAKw4D,aAAa7qD,EAAE3N,KAAKw2D,MAAM,KAAKj5B,MAAM,OAAO,IAAI5vB,GAAGgc,GAAG,IAAIhc,EAAE,GAAG,EAAE,CAAC,2DCAvK,IAA4Bgc,EAArLuC,EAAe/rB,SAAsKwpB,EAAE,MAAa,SAASgS,EAAE3sB,EAAEwyB,GAAG,IAAIl7B,EAAE,SAASq1B,GAAG,OAAOA,EAAEzlB,IAAI,EAAEylB,EAAE88B,aAAa9uC,EAAE,EAAE0K,EAAErlB,EAAE9M,UAAUmyB,EAAEqkC,YAAY,WAAW,OAAOpyD,EAAEtG,MAAM68B,MAAM,EAAExI,EAAEskC,QAAQ,SAASh9B,GAAG,IAAI37B,KAAKo2D,SAAStC,EAAEn4B,GAAG,OAAO37B,KAAKkW,IAAI,GAAGylB,EAAE37B,KAAK24D,WAAWhvC,GAAG,IAAI3a,EAAIrB,EAAEomD,EAAE/zC,EAAE1Z,EAAEtG,MAAM8zD,GAAG9kD,EAAEhP,KAAK04D,cAAgE3E,EAAE,GAA1CpmD,GAAR3N,KAAK80D,GAAQtzB,EAAEqzB,IAAIrzB,KAAK3E,KAAK7tB,GAAGunD,QAAQ,SAAckC,aAAa9qD,EAAE8qD,aAAa,IAAI1E,GAAG,GAAGpmD,EAAEuI,IAAI69C,EAAEpqC,IAAI,OAAO3J,EAAE03C,KAAK5D,EAAE,QAAQ,CAAC,EAAEz/B,EAAEokC,WAAW,SAAS9uC,GAAG,OAAO3pB,KAAKo2D,SAAStC,EAAEnqC,GAAG3pB,KAAKu9B,OAAO,EAAEv9B,KAAKu9B,IAAIv9B,KAAKu9B,MAAM,EAAE5T,EAAEA,EAAE,EAAE,EAAE,IAAIhc,EAAE0mB,EAAEkiC,QAAQliC,EAAEkiC,QAAQ,SAAS5sC,EAAEgS,GAAG,IAAI3sB,EAAEhP,KAAKo2D,SAAS50B,IAAIxyB,EAAE8kD,EAAEn4B,IAAIA,EAAE,MAAM,YAAY3sB,EAAEulD,EAAE5qC,GAAG6X,EAAExhC,KAAKmzB,KAAKnzB,KAAKmzB,QAAQnzB,KAAKy4D,aAAa,IAAIlC,QAAQ,OAAOv2D,KAAKmzB,KAAKnzB,KAAKmzB,OAAO,GAAGnzB,KAAKy4D,aAAa,GAAG,GAAGjC,MAAM,OAAO7oD,EAAE7L,KAAK9B,KAAP2N,CAAagc,EAAEgS,EAAE,CAAC,4DCA95BzP,UAA2L,SAASvC,EAAEgS,GAAGA,EAAEz5B,UAAUs2D,WAAW,WAAW,OAAOx4D,KAAKo1D,GAAG,GAAG,GAAGp1D,KAAKo1D,GAAG,KAAK,GAAGp1D,KAAKo1D,GAAG,KAAK,CAAC,CAAC,2DCA/RlpC,EAAA/rB,QAA+L,SAASwpB,EAAEgS,GAAG,IAAI3b,EAAE2b,EAAEz5B,UAAUyL,EAAEqS,EAAE0c,OAAO1c,EAAE0c,OAAO,SAAS/S,GAAG,IAAIgS,EAAE37B,KAAKggB,EAAEhgB,KAAK+2D,UAAU,IAAI/2D,KAAKq2D,UAAU,OAAO1oD,EAAE7L,KAAK9B,KAAP2N,CAAagc,GAAG,IAAI6X,EAAExhC,KAAKo2D,SAAS9vD,GAAGqjB,GAAG,wBAAwBve,QAAQ,wEAAwEue,GAAG,OAAOA,GAAG,IAAI,IAAI,OAAOhqB,KAAK4N,MAAMouB,EAAE25B,GAAG,GAAG,GAAG,IAAI,KAAK,OAAOt1C,EAAEm0C,QAAQx4B,EAAE65B,IAAI,IAAI,OAAO,OAAO75B,EAAEi9B,WAAW,IAAI,OAAO,OAAOj9B,EAAE+8B,cAAc,IAAI,KAAK,OAAO14C,EAAEm0C,QAAQx4B,EAAEgB,OAAO,KAAK,IAAI,IAAI,IAAI,KAAK,OAAO6E,EAAEA,EAAE7F,EAAEgB,OAAO,MAAMhT,EAAE,EAAE,EAAE,KAAK,IAAI,IAAI,IAAI,KAAK,OAAO6X,EAAEA,EAAE7F,EAAEg9B,UAAU,MAAMhvC,EAAE,EAAE,EAAE,KAAK,IAAI,IAAI,IAAI,KAAK,OAAO6X,EAAEA,EAAE99B,OAAO,IAAIi4B,EAAEi6B,GAAG,GAAGj6B,EAAEi6B,IAAI,MAAMjsC,EAAE,EAAE,EAAE,KAAK,IAAI,IAAI,OAAOhqB,KAAK6N,MAAMmuB,EAAEs5B,GAAG4B,UAAU,KAAK,IAAI,IAAI,OAAOl7B,EAAEs5B,GAAG4B,UAAU,IAAI,IAAI,MAAM,IAAIl7B,EAAEk9B,aAAa,IAAI,IAAI,MAAM,MAAM,IAAIl9B,EAAEk9B,WAAW,QAAQ,IAAI,QAAQ,OAAOlvC,EAAG,IAAG,OAAOhc,EAAE7L,KAAK9B,KAAP2N,CAAarH,EAAE,CAAC,2DCA52B,IAA4Bq1B,EAAW3sB,EAAyB2a,EAArNuC,EAAA/rB,SAAiLw7B,EAAE,SAAS3sB,EAAE,uBAAuB2a,EAAE,eAAsB,SAAS6X,EAAE74B,EAAEgF,GAAG,IAAImmD,EAAEnrD,EAAEzG,UAAUyL,EAAEknD,IAAI,SAASl5B,GAAwC,OAAO,IAAIhzB,EAA1C,CAACwqB,KAAKwI,EAAEk5B,KAAI,EAAG1/C,KAAK3S,WAA0B,EAAEsxD,EAAEe,IAAI,SAAS7lD,GAAG,IAAI2a,EAAEhc,EAAE3N,KAAK82D,SAAS,CAAChJ,OAAO9tD,KAAK40D,GAAGC,KAAI,IAAK,OAAO7lD,EAAE2a,EAAEzT,IAAIlW,KAAKq0D,YAAY14B,GAAGhS,CAAC,EAAEmqC,EAAEgF,MAAM,WAAW,OAAOnrD,EAAE3N,KAAK82D,SAAS,CAAChJ,OAAO9tD,KAAK40D,GAAGC,KAAI,GAAI,EAAE,IAAId,EAAED,EAAErqB,MAAMqqB,EAAErqB,MAAM,SAAS9N,GAAGA,EAAEk5B,MAAM70D,KAAK80D,IAAG,GAAI90D,KAAKo2D,SAAStC,EAAEn4B,EAAEq5B,WAAWh1D,KAAKg1D,QAAQr5B,EAAEq5B,SAASjB,EAAE5xD,KAAKnC,KAAK27B,EAAE,EAAE,IAAI3b,EAAE8zC,EAAE3hC,KAAK2hC,EAAE3hC,KAAK,WAAW,GAAGnyB,KAAK80D,GAAG,CAAC,IAAIn5B,EAAE37B,KAAKi1D,GAAGj1D,KAAKo1D,GAAGz5B,EAAEo9B,iBAAiB/4D,KAAKs1D,GAAG35B,EAAEq9B,cAAch5D,KAAKw1D,GAAG75B,EAAEs9B,aAAaj5D,KAAK01D,GAAG/5B,EAAEu9B,YAAYl5D,KAAK41D,GAAGj6B,EAAEw9B,cAAcn5D,KAAK81D,GAAGn6B,EAAEy9B,gBAAgBp5D,KAAKg2D,GAAGr6B,EAAE09B,gBAAgBr5D,KAAKk2D,IAAIv6B,EAAE29B,oBAAoB,MAAMt5C,EAAE7d,KAAKnC,KAAK,EAAE,IAAIsG,EAAEwtD,EAAEO,UAAUP,EAAEO,UAAU,SAAS7yB,EAAE74B,GAAG,IAAIgF,EAAE3N,KAAKo2D,SAAStC,EAAE,GAAGnmD,EAAE6zB,GAAG,OAAOxhC,KAAK80D,GAAG,EAAEnnD,EAAE3N,KAAKg1D,SAAS1uD,EAAEnE,KAAKnC,MAAMA,KAAKg1D,QAAQ,GAAG,iBAAiBxzB,IAAIA,EAAE,SAAS7F,QAAG,IAASA,IAAIA,EAAE,IAAI,IAAI6F,EAAE7F,EAAEl6B,MAAMuN,GAAG,IAAIwyB,EAAE,OAAO,KAAK,IAAI74B,GAAG,GAAG64B,EAAE,IAAI//B,MAAMkoB,IAAI,CAAC,IAAI,EAAE,GAAGhc,EAAEhF,EAAE,GAAGmrD,EAAE,IAAInrD,EAAE,KAAKA,EAAE,GAAG,OAAO,IAAImrD,EAAE,EAAE,MAAMnmD,EAAEmmD,GAAGA,CAAC,CAA1J,CAA4JtyB,GAAG,OAAOA,GAAG,OAAOxhC,KAAK,IAAI8zD,EAAEn0D,KAAK6iC,IAAIhB,IAAI,GAAG,GAAGA,EAAEA,EAAEuyB,EAAE/zD,KAAK,GAAG2I,EAAE,OAAOorD,EAAEiB,QAAQlB,EAAEC,EAAEe,GAAG,IAAItzB,EAAEuyB,EAAE,GAAG,IAAIvyB,EAAE,CAAC,IAAIxhB,EAAEhgB,KAAK80D,GAAG90D,KAAK82D,SAASW,qBAAqB,EAAEz3D,KAAKq0D,aAAaN,EAAE/zD,KAAK84D,QAAQ5iD,IAAI49C,EAAE9zC,EAAE2b,IAAIq5B,QAAQlB,EAAEC,EAAEgB,GAAGwE,aAAav5C,CAAC,MAAM+zC,EAAE/zD,KAAK60D,MAAM,OAAOd,CAAC,EAAE,IAAIz5B,EAAEw5B,EAAEp3B,OAAOo3B,EAAEp3B,OAAO,SAASf,GAAG,IAAI3sB,EAAE2sB,IAAI37B,KAAK80D,GAAG,yBAAyB,IAAI,OAAOx6B,EAAEn4B,KAAKnC,KAAKgP,EAAE,EAAE8kD,EAAElsD,QAAQ,WAAW,IAAI+zB,EAAE37B,KAAKo2D,SAAStC,EAAE9zD,KAAKg1D,SAAS,EAAEh1D,KAAKg1D,SAASh1D,KAAK+0D,GAAGwE,cAAcv5D,KAAKi1D,GAAGwC,qBAAqB,OAAOz3D,KAAKi1D,GAAGrtD,UAAU,IAAI+zB,CAAC,EAAEm4B,EAAE0F,MAAM,WAAW,QAAQx5D,KAAK80D,EAAE,EAAEhB,EAAE8D,YAAY,WAAW,OAAO53D,KAAK82D,SAASc,aAAa,EAAE9D,EAAExwD,SAAS,WAAW,OAAOtD,KAAK82D,SAASe,aAAa,EAAE,IAAI1sC,EAAE2oC,EAAEgD,OAAOhD,EAAEgD,OAAO,SAASn7B,GAAG,MAAM,MAAMA,GAAG37B,KAAKg1D,QAAQrnD,EAAE3N,KAAK08B,OAAO,4BAA4Bo6B,SAAS3rC,EAAEhpB,KAAKnC,KAAK,EAAE,IAAI88C,EAAEgX,EAAE4D,KAAK5D,EAAE4D,KAAK,SAAS/7B,EAAE3sB,EAAE2a,GAAG,GAAGgS,GAAG37B,KAAK80D,KAAKn5B,EAAEm5B,GAAG,OAAOhY,EAAE36C,KAAKnC,KAAK27B,EAAE3sB,EAAE2a,GAAG,IAAI6X,EAAExhC,KAAK84D,QAAQnwD,EAAEgF,EAAEguB,GAAGm9B,QAAQ,OAAOhc,EAAE36C,KAAKq/B,EAAE74B,EAAEqG,EAAE2a,EAAE,CAAC,4DCA5+D,IAA8BgS,EAAkDhS,EAAxOuC,EAAe/rB,SAAuKw7B,EAAE,CAACkB,KAAK,EAAED,MAAM,EAAEW,IAAI,EAAEd,KAAK,EAAEe,OAAO,EAAEjY,OAAO,GAAGoE,EAAE,CAAA,EAAU,SAAShc,EAAEqB,EAAE+kD,GAAG,IAAI/zC,EAAE1Z,EAAE,SAASq1B,EAAEhuB,EAAEqB,QAAG,IAASA,IAAIA,EAAE,CAAA,GAAI,IAAI+kD,EAAE,IAAIl/B,KAAK8G,GAAG3b,EAAE,SAAS2b,EAAEhuB,QAAG,IAASA,IAAIA,EAAE,CAAE,GAAE,IAAIqB,EAAErB,EAAE8rD,cAAc,QAAQ1F,EAAEp4B,EAAE,IAAI3sB,EAAEgR,EAAE2J,EAAEoqC,GAAG,OAAO/zC,IAAIA,EAAE,IAAI05C,KAAKC,eAAe,QAAQ,CAACC,QAAO,EAAGC,SAASl+B,EAAEkB,KAAK,UAAUD,MAAM,UAAUW,IAAI,UAAUd,KAAK,UAAUe,OAAO,UAAUjY,OAAO,UAAUk0C,aAAazqD,IAAI2a,EAAEoqC,GAAG/zC,GAAGA,CAAC,CAA3Q,CAA6QrS,EAAEqB,GAAG,OAAOgR,EAAE85C,cAAc/F,EAAE,EAAED,EAAE,SAASnqC,EAAEhc,GAAG,IAAI,IAAIqB,EAAE1I,EAAEqjB,EAAEhc,GAAGqS,EAAE,GAAG8zC,EAAE,EAAEA,EAAE9kD,EAAEnI,OAAOitD,GAAG,EAAE,CAAC,IAAInrD,EAAEqG,EAAE8kD,GAAGtyB,EAAE74B,EAAEmC,KAAKymD,EAAE5oD,EAAElI,MAAMq8C,EAAEnhB,EAAE6F,GAAGsb,GAAG,IAAI98B,EAAE88B,GAAGjd,SAAS0xB,EAAE,IAAI,CAAC,IAAIl9B,EAAErU,EAAE,GAAGmL,EAAE,KAAKkJ,EAAE,EAAEA,EAAEiG,EAAEta,EAAE,GAAG,IAAIA,EAAE,GAAG,IAAIA,EAAE,GAAG,IAAImL,EAAE,IAAInL,EAAE,GAAG,IAAIA,EAAE,GAAG,OAAOsU,GAAG3K,EAAE,OAAOoqC,EAAEc,IAAIv6B,GAAG1yB,WAAW0sB,GAAGA,EAAE,MAAM,GAAG,EAAE3rB,EAAEqG,EAAE9M,UAAUyG,EAAEoxD,GAAG,SAASp+B,EAAEhS,QAAG,IAASgS,IAAIA,EAAE3b,GAAG,IAAIrS,EAAE3N,KAAKq0D,YAAYrlD,EAAEhP,KAAK82D,SAASxwD,EAAE0I,EAAEgrD,eAAe,QAAQ,CAACH,SAASl+B,IAAIm4B,EAAEn0D,KAAKo2C,OAAO/mC,EAAE,IAAI6lB,KAAKvuB,IAAI,IAAI,IAAIqC,EAAEorD,EAAEztD,EAAE,CAACwnD,OAAO9tD,KAAK40D,KAAKqC,KAAK,cAAcj3D,KAAKk2D,KAAK7B,UAAU,IAAI10D,KAAKo2C,MAAM/mC,EAAEyoD,oBAAoB,IAAI3D,GAAE,GAAI,GAAGnqC,EAAE,CAAC,IAAI6X,EAAE74B,EAAE0rD,YAAY1rD,EAAEA,EAAEuN,IAAIvI,EAAE6zB,EAAE,SAAS,CAAC,OAAO74B,EAAEosD,GAAGkF,UAAUt+B,EAAEhzB,CAAC,EAAEA,EAAEkwD,WAAW,SAASl9B,GAAG,IAAIhS,EAAE3pB,KAAK+0D,GAAGkF,WAAWlG,EAAEgG,GAAGG,QAAQvsD,EAAErH,EAAEtG,KAAK4H,UAAU+hB,EAAE,CAAC8vC,aAAa99B,IAAInO,MAAM,SAASmO,GAAG,MAAM,iBAAiBA,EAAE7wB,KAAKqF,aAAc,IAAG,OAAOxC,GAAGA,EAAElN,KAAK,EAAE,IAAI+gC,EAAE74B,EAAE4tD,QAAQ5tD,EAAE4tD,QAAQ,SAAS56B,EAAEhS,GAAG,IAAI3pB,KAAK+0D,KAAK/0D,KAAK+0D,GAAGkF,UAAU,OAAOz4B,EAAEr/B,KAAKnC,KAAK27B,EAAEhS,GAAG,IAAIhc,EAAEomD,EAAE/zD,KAAK08B,OAAO,2BAA2B,CAACoxB,OAAO9tD,KAAK40D,KAAK,OAAOpzB,EAAEr/B,KAAKwL,EAAEguB,EAAEhS,GAAGowC,GAAG/5D,KAAK+0D,GAAGkF,WAAU,EAAG,EAAElG,EAAEgG,GAAG,SAASp+B,EAAEhS,EAAEhc,GAAG,IAAIqB,EAAErB,GAAGgc,EAAErjB,EAAEqH,GAAGgc,GAAG3J,EAAErX,EAAEmrD,GAAGC,IAAIztD,GAAG,GAAG,iBAAiBq1B,EAAE,OAAOo4B,EAAEp4B,GAAGo+B,GAAGzzD,GAAG,IAAIk7B,EAAE,SAAS7F,EAAEhS,EAAEhc,GAAG,IAAIqB,EAAE2sB,EAAE,GAAGhS,EAAE,IAAIoqC,EAAED,EAAE9kD,EAAErB,GAAG,GAAGgc,IAAIoqC,EAAE,MAAM,CAAC/kD,EAAE2a,GAAG,IAAI3J,EAAE8zC,EAAE9kD,GAAG,IAAI+kD,EAAEpqC,GAAG,IAAIhc,GAAG,OAAOomD,IAAI/zC,EAAE,CAAChR,EAAE+kD,GAAG,CAACp4B,EAAE,GAAGh8B,KAAKoO,IAAIgmD,EAAE/zC,GAAG,IAAIrgB,KAAKmO,IAAIimD,EAAE/zC,GAAG,CAAnJ,CAAqJ+zC,EAAEc,IAAIl5B,EAAE3sB,GAAGpH,UAAUe,EAAErC,GAAGirD,EAAE/vB,EAAE,GAAGsb,EAAEtb,EAAE,GAAGnN,EAAE0/B,EAAExC,GAAG8C,UAAUvX,GAAG,OAAOzoB,EAAE0gC,GAAGkF,UAAU3zD,EAAE+tB,CAAC,EAAE0/B,EAAEgG,GAAGG,MAAM,WAAW,OAAOR,KAAKC,iBAAiBQ,kBAAkBN,QAAQ,EAAE9F,EAAEgG,GAAGK,WAAW,SAASz+B,GAAG3b,EAAE2b,CAAC,CAAC,4DCAthEzP,UAA2L,SAASve,EAAEgc,EAAEgS,GAAG,IAAI3b,EAAE2J,EAAEznB,UAAU6xD,EAAE,SAASpmD,GAAG,OAAOA,IAAIA,EAAEkB,QAAQlB,EAAEA,EAAE6zB,EAAE,EAAEsyB,EAAE,SAASnmD,EAAEgc,EAAEgS,EAAE3b,EAAE8zC,GAAG,IAAI9kD,EAAErB,EAAErI,KAAKqI,EAAEA,EAAEopD,UAAUzwD,EAAEytD,EAAE/kD,EAAE2a,IAAI6X,EAAEuyB,EAAE/kD,EAAE2sB,IAAIhzB,EAAErC,GAAGk7B,EAAEpU,cAAczf,GAAG,OAAOA,EAAExC,MAAM,EAAE6U,EAAG,IAAG,IAAI8zC,EAAE,OAAOnrD,EAAE,IAAI0rB,EAAErlB,EAAEgoD,UAAU,OAAOruD,EAAEykB,KAAK,SAASzf,EAAEgc,GAAG,OAAOhhB,GAAGghB,GAAG0K,GAAG,IAAI,EAAG,GAAE,EAAErlB,EAAE,WAAW,OAAO2sB,EAAEu8B,GAAGv8B,EAAEmyB,SAAS,EAAExnD,EAAE,SAASqH,EAAEgc,GAAG,OAAOhc,EAAE0sD,QAAQ1wC,IAAI,SAAShc,GAAG,OAAOA,EAAEvC,QAAQ,2CAA2CuC,EAAEgc,EAAEgS,GAAG,OAAOhS,GAAGgS,EAAExwB,MAAM,EAAG,GAAE,CAAtG,CAAwGwC,EAAE0sD,QAAQ1wC,EAAE2wC,eAAe,EAAE94B,EAAE,WAAW,IAAI7zB,EAAE3N,KAAK,MAAM,CAACk0D,OAAO,SAASvqC,GAAG,OAAOA,EAAEA,EAAE+S,OAAO,QAAQo3B,EAAEnmD,EAAE,SAAS,EAAE2pD,YAAY,SAAS3tC,GAAG,OAAOA,EAAEA,EAAE+S,OAAO,OAAOo3B,EAAEnmD,EAAE,cAAc,SAAS,EAAE,EAAE4sD,eAAe,WAAW,OAAO5sD,EAAEopD,UAAUC,WAAW,CAAC,EAAE/C,SAAS,SAAStqC,GAAG,OAAOA,EAAEA,EAAE+S,OAAO,QAAQo3B,EAAEnmD,EAAE,WAAW,EAAE4pD,YAAY,SAAS5tC,GAAG,OAAOA,EAAEA,EAAE+S,OAAO,MAAMo3B,EAAEnmD,EAAE,cAAc,WAAW,EAAE,EAAE6pD,cAAc,SAAS7tC,GAAG,OAAOA,EAAEA,EAAE+S,OAAO,OAAOo3B,EAAEnmD,EAAE,gBAAgB,WAAW,EAAE,EAAE6sD,eAAe,SAAS7wC,GAAG,OAAOrjB,EAAEqH,EAAEopD,UAAUptC,EAAE,EAAE0tC,SAASr3D,KAAK+2D,UAAUM,SAASlD,QAAQn0D,KAAK+2D,UAAU5C,QAAQ,EAAEn0C,EAAEy6C,WAAW,WAAW,OAAOj5B,EAAE1/B,KAAK9B,KAAPwhC,EAAc,EAAE7F,EAAE8+B,WAAW,WAAW,IAAI9sD,EAAEqB,IAAI,MAAM,CAACurD,eAAe,WAAW,OAAO5sD,EAAEqpD,WAAW,CAAC,EAAE/C,SAAS,WAAW,OAAOt4B,EAAEs4B,UAAU,EAAEuD,cAAc,WAAW,OAAO77B,EAAE67B,eAAe,EAAED,YAAY,WAAW,OAAO57B,EAAE47B,aAAa,EAAErD,OAAO,WAAW,OAAOv4B,EAAEu4B,QAAQ,EAAEoD,YAAY,WAAW,OAAO37B,EAAE27B,aAAa,EAAEkD,eAAe,SAAS7wC,GAAG,OAAOrjB,EAAEqH,EAAEgc,EAAE,EAAE0tC,SAAS1pD,EAAE0pD,SAASlD,QAAQxmD,EAAEwmD,QAAQ,EAAEx4B,EAAEu4B,OAAO,WAAW,OAAOJ,EAAE9kD,IAAI,SAAS,EAAE2sB,EAAE27B,YAAY,WAAW,OAAOxD,EAAE9kD,IAAI,cAAc,SAAS,EAAE,EAAE2sB,EAAEs4B,SAAS,SAAStmD,GAAG,OAAOmmD,EAAE9kD,IAAI,WAAW,KAAK,KAAKrB,EAAE,EAAEguB,EAAE67B,cAAc,SAAS7pD,GAAG,OAAOmmD,EAAE9kD,IAAI,gBAAgB,WAAW,EAAErB,EAAE,EAAEguB,EAAE47B,YAAY,SAAS5pD,GAAG,OAAOmmD,EAAE9kD,IAAI,cAAc,WAAW,EAAErB,EAAE,CAAC,2DCA3zD,IAA8Bgc,EAA7LuC,EAAA/rB,SAA6LwpB,EAAE,CAAC+wC,IAAI,YAAY15C,GAAG,SAAS25C,EAAE,aAAaC,GAAG,eAAeC,IAAI,sBAAsBC,KAAK,6BAAoC,SAASn/B,EAAEo4B,EAAEpmD,GAAG,IAAIqS,EAAE+zC,EAAE7xD,UAAU8M,EAAEgR,EAAE0c,OAAO/uB,EAAEsqD,GAAGoC,QAAQ1wC,EAAE3J,EAAE0c,OAAO,SAASf,QAAG,IAASA,IAAIA,EAAE,wBAAwB,IAAIo4B,EAAE/zD,KAAK+2D,UAAUsD,QAAQ1sD,EAAE,SAASguB,EAAEo4B,GAAG,OAAOp4B,EAAEvwB,QAAQ,8CAA8CuwB,EAAEhuB,EAAEqS,GAAG,IAAIhR,EAAEgR,GAAGA,EAAEs6C,cAAc,OAAO3sD,GAAGomD,EAAE/zC,IAAI2J,EAAE3J,IAAI+zC,EAAE/kD,GAAG5D,QAAQ,2CAA2Cue,EAAEgS,EAAEo4B,GAAG,OAAOp4B,GAAGo4B,EAAE5oD,MAAM,EAAG,GAAG,GAAE,CAA5N,CAA8NwwB,OAAE,IAASo4B,EAAE,CAAE,EAACA,GAAG,OAAO/kD,EAAE7M,KAAKnC,KAAK2N,EAAE,CAAC,4DCA9tBue,EAAe/rB,QAA8K,SAASwpB,EAAEhc,EAAEguB,GAAGA,EAAEo/B,aAAa,SAASpxC,EAAEhc,GAAG,IAAIomD,EAAEp4B,EAAEu8B,GAAGvuC,GAAG,GAAGoqC,EAAE,OAAOpmD,EAAErN,OAAOyJ,KAAK4D,GAAG,IAAIwf,SAAO,SAAWxD,GAAGoqC,EAAEpqC,GAAGhc,EAAEgc,EAAG,IAAGoqC,CAAC,CAAC,4BCmBjYiH,GAAMlD,OAAOmD,IACbD,GAAMlD,OAAOS,IACbyC,GAAMlD,OAAOa,IACbqC,GAAMlD,OAAOU,IACbwC,GAAMlD,OAAOO,IACb2C,GAAMlD,OAAOQ,IACb0C,GAAMlD,OAAOoD,IACbF,GAAMlD,OAAOqD,IACbH,GAAMlD,OAAOjD,IACbmG,GAAMlD,OAAO/J,IACbiN,GAAMlD,OAAO2C,IACbO,GAAMlD,OAAOsD,IACbJ,GAAMlD,OAAOiD,IAEb,IAAMM,GAAiB,KAEFC,GAAU,WAK7B,SAAAA,UAAA9oC,OAAA8oC,GACEt7D,KAAK8tD,OAASuN,GACdr7D,KAAK+tD,SAAWiN,GAAMjB,GAAGG,QACH,YAALqB,oBAANz7D,OAAMy7D,YAAAA,EAANz7D,YACTmkC,EAACnkC,QAAek7D,UAAAA,MAAUA,IAE9B,CAuMC,OAvMAroC,EAAA2oC,EAAA,CAAA,CAAA96D,IAAA,QAAAC,MAEK,SAAA89B,GAA2C,IAAnC7yB,EAAO6yB,EAAP7yB,qIAE0B,GADtC1L,KAAK+tD,SAAWriD,EAAQynB,KAAK46B,UAAYiN,GAAMjB,GAAGG,QAGxB,iBAFpBsB,EAAa9vD,EAAQynB,KAAK26B,SAEM0N,IAAeH,GAAc,CAAArI,EAAA38C,KAAA,GAAA,KAAA,CAAA,GAE3C,YAAL,oBAANvW,OAAM,YAAAy7D,EAANz7D,SAAmB,CAAAkzD,EAAA38C,KAAA,GAAA,KAAA,CAEmB,GAFnB28C,EAAAnZ,GAEzB/5C,uBAAcqP,OAAiBqsD,IAAaxI,EAAAnZ,GAAA,CAAAmZ,EAAA38C,KAAA,EAAA,KAAA,CAC5C,OAD4C28C,EAAA38C,KAAA,EACtCrW,KAAKy7D,kBAAkBD,GAAW,KAAA,EAAAxI,EAAAnZ,GAAAmZ,EAAA0I,KAAA,KAAA,EAF3C5N,EAAMkF,EAAAnZ,GAAAmZ,EAAA38C,KAAA,GAAA,MAAA,KAAA,GAIG,OAJH28C,EAAA38C,KAAA,GAISrW,KAAK27D,eAAeH,GAAW,KAAA,GAA9C1N,EAAMkF,EAAA0I,KAAA,KAAA,GAERV,GAAMlN,OAAO0N,GACbx7D,KAAK8tD,OAASA,EAAO,KAAA,GAGG,WAAtByN,EAAOC,KACLA,EAAWz5D,eAAe,SAC5Bi5D,GAAMlN,OAAO0N,EAAWl2D,KAAMk2D,GAC9Bx7D,KAAK8tD,OAAS0N,GAEdx7D,KAAK8tD,OAASkN,GAAMD,aAAaM,GAAgBG,IAEpD,KAAA,GAAA,IAAA,MAAA,OAAAxI,EAAAn0C,OAAA,GAAAu0C,EAAApzD,KACF,IAAA,GAED,CAAAQ,IAAA,SAAAC,MACA,SAAOm7D,GACL,OAAOZ,GAAMlD,OAAO8D,EACtB,GAEA,CAAAp7D,IAAA,qBAAAC,MAMA,SAAmB4zB,GACjB,IAAMwnC,EAAY77D,KAAKmzB,KAAKkB,GACtBlB,EAAO0oC,EAAUtF,QAAQ,OACzBuF,EAAYD,EAAUtF,QAAQ,SAASC,MAAM,QAEnD,OAAIrjC,GAAQ2oC,EACH,EAEFn8D,KAAK4N,KAAK4lB,EAAKukC,KAAKoE,EAAW,SAAS,IAAS,CAC1D,GAEA,CAAAt7D,IAAA,uBAAAC,MAYA,SAAqB4zB,GACnB,IAAM0nC,EAAY/7D,KAAKmzB,KAAKkB,GAE5B,OACEr0B,KAAKg8D,mBAAmBD,GAAWrE,KACjC13D,KAAKi8D,oBAAoBF,GACzB,QACE,CAER,GAEA,CAAAv7D,IAAA,sBAAAC,MAOA,SAAoB4zB,GAClB,IAAM6nC,EAAel8D,KAAKmzB,KAAKkB,GAAGkiC,QAAQ,SACtC4F,EAAmBD,EAAa3F,QAAQ,QAK5C,OAJI2F,EAAa5D,UAAY,IAC3B6D,EAAmBA,EAAiBjmD,IAAI,EAAG,SAGtCimD,CACT,GAEA,CAAA37D,IAAA,qBAAAC,MAMA,SAAmB4zB,GACjB,IAAM+nC,EAAap8D,KAAKmzB,KAAKkB,GAAGmiC,MAAM,SAClC6F,EAAgBD,EAAW5F,MAAM,QAKrC,OAJI4F,EAAW9D,UAAY,IACzB+D,EAAgBA,EAAclF,SAAS,EAAG,SAGrCkF,CACT,GAAC,CAAA77D,IAAA,OAAAC,MAED,WAA4D,IAAvD4zB,EAAA7xB,UAAAqE,OAAArE,QAAAtB,IAAAsB,UAAAtB,GAAAsB,UAAA,GAA6C,IAAIqyB,KACpD,OAAImmC,GAAMhD,QAAQ3jC,GACTA,EAGF2mC,GAAM3mC,GACV0lC,GAAG/5D,KAAK+tD,UACRsG,UAAU,GACVvG,OAAO9tD,KAAK8tD,OACjB,GAAC,CAAAttD,IAAA,SAAAC,MAED,SACEy+B,EACAo9B,GAGA,GAAyB,mBAAdA,EAA0B,CAAA,IAAAt5B,IAAAA,EAAAxgC,UAAAqE,OAFlCsO,MAAS5D,MAAAyxB,EAAAA,EAAAA,OAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAT/tB,EAAS+tB,EAAA1gC,GAAAA,UAAA0gC,GAGV,OAAOo5B,EAAS/5D,WAAA,EAAA,CAAC28B,GAAS/vB,OAAKgG,GACjC,CAEA,MAAyB,iBAAdmnD,EACFt8D,KAAKmzB,KAAK+L,GAAWxC,OAAO4/B,GAG9B,IACT,GAEA,CAAA97D,IAAA,YAAAC,MASA,SACEi9B,EACAvK,EACAO,GAC0B,IAGtBhL,EAHJiV,6DAEI5T,EAAQ/pB,KAAKmzB,KAAKA,GAGpBzK,EADmB,iBAAVgL,EACH3J,EAAM7T,IAAIwd,EAAOgK,GACds9B,GAAMhD,QAAQtkC,GACjBA,EAEA1zB,KAAKmzB,KAAKO,GAGlB3J,EAAQA,EAAMwsC,QAAQ74B,GAEtBhV,EAAMA,EAAI6tC,QAAQ74B,GAClB,IAAIia,EAAQqjB,GAAMjtD,IAAIgc,EAAOrB,GAC7BA,EAAMsyC,GAAMltD,IAAIic,EAAOrB,GACvB,IAAM3gB,EAAsB,GAEvB41B,IACHjV,EAAMA,EAAIxS,IAAI,EAAG,WAGnB,GACEnO,EAAO5G,MAAMw2C,GACbA,EAAQA,EAAMzhC,IAAI,EAAGwnB,SACdia,EAAQjvB,GAEjB,OAAO3gB,CACT,GAGA,CAAAvH,IAAA,oBAAAC,MACA,SAAkB+6D,GAChB,OAAO,IAAIrkD,SAAQ,SAACQ,EAAS0B,GAC3B,IAAMmoB,EAAI/7B,SAASU,cAAc,UACjCq7B,EAAE12B,KAAO,kBACT02B,EAAE+6B,OAAQ,EACV/6B,EAAE3f,IAAG,+CAAA1S,OAAkDqsD,EAAe,OACtEh6B,EAAEg7B,QAAU,SAACC,GACXpjD,EAAOojD,IAETj7B,EAAEk7B,OAAS,WACT/kD,EAAS7X,OAAc,gBAAAqP,OAAiBqsD,MAE1C/1D,SAASuQ,KAAKL,YAAY6rB,EAC5B,GACF,GAEA,CAAAhhC,IAAA,iBAAAC,MACA,SAAe+6D,GACb,OAAOmB,OAAMxtD,gBAAAA,OAAiBqsD,SAChC,KAACF,CAAA,CAlN4B,GClC3B1hD,GAAIxZ,GAEJ+nC,GAAa/jC,GACbxB,GAAyBiC,EACzBvB,GAAWyB,GACXqjC,GAAuBnjC,GAEvB6sD,GANcjxD,EAMc,GAAGgO,SAInC+K,GAAE,CAAEtJ,OAAQ,SAAUkB,OAAO,EAAMR,QAASo3B,GAAqB,aAAe,CAC9Ex5B,SAAU,SAAkB45B,GAC1B,SAAUspB,GACRxuD,GAASV,GAAuB5C,OAChCsD,GAAS6kC,GAAWK,IACpBhmC,UAAUqE,OAAS,EAAIrE,UAAU,QAAKtB,EAEzC,ICfH,IAAM07D,GAAqB,CAAC,OAAQ,MAAO,MAAO,OAQ1B,SAAAC,GACtB5pC,EAAsCsL,GASrC,IAPC/mB,EAAM+mB,EAAN/mB,OACA2c,EAASoK,EAATpK,UACArkB,EAAIyuB,EAAJzuB,KAOIgtD,EAAatlD,EAAO1M,KACpBiyD,EAAgB5oC,EAAUrpB,KAEhC,IAAKmoB,EAAmB1pB,IAAIuzD,GAC1B,MAAM,IAAIpxB,MAAK,IAAAv8B,OAAK2tD,oCAGtB,IAAK7pC,EAAmB1pB,IAAIwzD,GAC1B,MAAM,IAAIrxB,MAAK,IAAAv8B,OAAK4tD,uCAGtB,GAAIjtD,EAAKhF,OAAS8xD,GAAmBhuD,SAASkB,EAAKhF,MACjD,MAAM,IAAI4gC,MAAKv8B,kBAAAA,OAAmBW,EAAKhF,KAAI,6BAG7C,KACImoB,EAAmBjtB,IAAI+2D,GAAeC,mBAAqB,IAAIpuD,SAC/DkuD,GAGF,MAAM,IAAIpxB,MACR,uBAAAv8B,OAAuB4tD,EAAa,+BAAA,wBAAA5tD,OACV2tD,IAI9B,OAAO,CACT,CClDiB18D,GAKN,OAAO,SAAU+xB,GAC1B,OAAO,WAAiB,OAAOA,EAAKnyB,KAAMwC,UAAUqE,OAASrE,UAAU,QAAKtB,EAAW,CACzF,GANuBL,ICyBtB,IAEoBo8D,GAAa,WAShC,SAAAA,EAAY1qC,GAAoBC,OAAAyqC,GAC9Bj9D,KAAKuyB,SAAWA,EAChBvyB,KAAKk9D,SAAW,IAAI3jC,IACpBv5B,KAAKm9D,QAAU,IAAI5jC,IACnBv5B,KAAKo9D,aAAe,IAAIvoB,GAC1B,CA0EC,OA1EAliB,EAAAsqC,EAAA,CAAA,CAAAz8D,IAAA,MAAAC,MAED,SAAI08D,GAA2B,IAAAtqC,EAAA7yB,KAC7Bm9D,EAAQhwC,SAAQ,SAAAoR,GAAiC,IA9BnD8+B,EACA9qC,EA6BmDorB,EAAAC,EAAArf,EAAA,GAA/B++B,EAAW3f,EAAA,GAAE4f,EAAa5f,EAAA,GACpCr4C,EAzBZ,SACEg4D,EACA5xD,GAEA,MAAA,GAAAyD,QAAU,IAAImuD,GAAch4D,MAAI6J,QAAGzD,eAAAA,EAASlL,MAAO,GACrD,CAoBmBg9D,CAAkBF,EAAaC,GAErB1qC,EAAKsqC,QAAQn3D,IAAIV,IAItCutB,EAAKqqC,SAASl3D,IAAIV,IAClBimD,GAAQ14B,EAAKqqC,SAASl3D,IAAIV,GAAOoG,QAAS6xD,KAK5C1qC,EAAKqqC,SAAS5zD,IAAIhE,EAAM,CACtBoG,QAAS6xD,EACTE,OAAO,IAGJ5qC,EAAKsqC,QAAQ5zD,IAAIjE,IACpButB,EAAKsqC,QAAQ7zD,IAAIhE,GAjDvB+3D,EAiD0CC,EAhD1C/qC,EAgDuDM,EAAKN,SA9CrD,IAAI8qC,EAAQ9qC,KAiDfM,EAAKuqC,aAAalnD,IAAI2c,EAAKsqC,QAAQn3D,IAAIV,IACzC,GACF,GAAC,CAAA9E,IAAA,WAAAC,MAED,WAAQ,IAAA09B,EAAAn+B,KACNA,KAAKm9D,QAAQhwC,SAAQ,SAACuwC,EAAgBp4D,GACpC,IAAM43D,EAAW/+B,EAAK++B,SAASl3D,IAAIV,QAEX,IAAb43D,GACLA,EAASO,QACXC,EAAel4B,MAAM03B,EAASxxD,SAC9BwxD,EAASO,OAAQ,EAEjBt/B,EAAK++B,SAAS5zD,IAAIhE,EAAM43D,GAG9B,GACF,GAAC,CAAA18D,IAAA,WAAAC,MAED,WACE,OAAO8Q,MAAM4N,KAAKnf,KAAKo9D,aAAa19C,UAAU0N,KAAI,SAACmnC,GAAC,OAAKA,EAAEzwB,UAC7D,GAAC,CAAAtjC,IAAA,aAAAC,MAED,WACE,OAAOT,KAAK29D,aAAavwC,KAAI,SAACmnC,GAAC,OAAKA,EAAEvuB,YACxC,GAAC,CAAAxlC,IAAA,kBAAAC,MAED,SAAgB+kB,GACd,OAAOxlB,KAAK29D,aAAatwC,QACvB,SAAC6X,GAAU,IAAAjB,EAET,OAAc,QAAdA,EAAAiB,EAAOx5B,eAAO,IAAAu4B,OAAA,EAAAA,EAAEze,YAAaA,CAAQ,GAE3C,GAAC,CAAAhlB,IAAA,wBAAAC,MAED,SAAsB+kB,GACpB,OAAOxlB,KAAK+kC,gBAAgBvf,GACzB4H,KAAI,SAACiH,GAAC,OAAKA,EAAE3oB,QAAQiuB,WAAYE,MAAM,IACvCyF,QAAO,SAACh5B,EAAG8T,GAAC,OAAK9T,EAAI8T,CAAC,GAAE,EAC7B,GAAC,CAAA5Z,IAAA,uBAAAC,MAED,SAAqB+kB,GACnB,OAAOxlB,KAAK+kC,gBAAgBvf,GACzB4H,KAAI,SAACiH,GAAC,OAAKA,EAAE3oB,QAAQiuB,WAAYC,KAAK,IACtC0F,QAAO,SAACh5B,EAAG8T,GAAC,OAAK9T,EAAI8T,CAAC,GAAE,EAC7B,GAAC,CAAA5Z,IAAA,aAAAC,MAED,WACE,OAAO8Q,MAAM4N,KAAKnf,KAAKm9D,QAAQz9C,SACjC,KAACu9C,CAAA,CAxF+B,MCpBnB,CCPkB,SAAC3B,GAKhC,MAAO,CACLh2D,KAAM,SACN03D,kBAJwC,CAAC,MAAO,QAKhD9hC,UAAW,WAAA,OAPS,EAOU,EAC9BJ,aAAc,WAAA,OAPG,CAOa,EAC9B1G,QAAS,SAAC0+B,EAAgBC,GAAY,OAEpCuI,EAAWrnC,UACT,SACA6+B,EACAwI,EAAWnoC,KAAK4/B,IAChB3lC,KAAI,SAACwQ,EAAI3vB,GAAa,MAAM,CAC5B0tB,EAAGiC,EACHlwB,EAAG/N,KAAK6N,MAAMS,EAjBE,IAkBhBwqB,EAAGxqB,EAlBa,MAmBf,EACLmlB,YAAa,SAACwK,GAAE,OAAK09B,EAAWnoC,KAAKyK,GAAI24B,QAAQ,UAAU3uD,SAAS,EAExE,ECtB+B,SAC7B0zD,EAAU/8B,GAER,IADA/mB,EAAM+mB,EAAN/mB,OAMF,MAAO,CACLlS,KAAM,OACN03D,kBAJwC,CAAC,QAAS,OAAQ,OAK1D9hC,UAAW,WAAA,OANM,CAMU,EAC3BJ,aAAc,SAAC8C,GACb,OAAQpmB,EAAO1M,MACb,IAAK,OACH,OAAQ8yD,GACV,IAAK,QACH,OACGA,GACApmD,EAAOq2C,iBAAmByN,EAAWnoC,KAAKyK,GAAIs5B,cAAgB,IAGnE,QACE,OAAO0G,EAEZ,EACDxpC,QAAS,SAAC0+B,EAAgBC,GAAY,OAEpCuI,EAAWrnC,UACT,OACA6+B,EACAwI,EAAWnoC,KAAK4/B,IAChB3lC,KAAI,SAACwQ,GACL,IAAMzK,EAAOmoC,EAAWnoC,KAAKyK,GACvBnB,EAAOtJ,EAAKsJ,OACZohC,EAAY1qC,EAAKA,OACnB2qC,EAAQn+D,KAAK6N,MAAMivB,EA/BV,GAyCb,MAPoB,UAAhBjlB,EAAO1M,OACTgzD,GAHmBF,GAGTC,EAAY,IAEJ,SAAhBrmD,EAAO1M,OACTgzD,GANmBF,GAMTzqC,EAAKuJ,OAAO,MAGjB,CACLf,EAAGiC,EACHlwB,EAAGowD,EACHrlC,EAAG94B,KAAK6N,MAAMivB,EA5CH,MA8Cb,EACJrJ,YAAa,SAACwK,GAAE,OAAK09B,EAAWnoC,KAAKyK,GAAI24B,QAAQ,QAAQ3uD,SAAS,EAEtE,ECtD8B,SAC5B0zD,EAAU/8B,GAQR,IANA/mB,EAAM+mB,EAAN/mB,OACAkiB,EAAmB6E,EAAnB7E,oBASF,MAAO,CACLp0B,KAAM,MACN03D,kBAJwC,CAAC,OAAQ,QAAS,QAK1D9hC,UAAW,WAAA,MAAuB,SAAhB1jB,EAAO1M,KAAkB,EAN1B,CAMyC,EAC1DgwB,aAAc,SAAC8C,GACb,OAAQpmB,EAAO1M,MACb,IAAK,QACH,OAAOnL,KAAK4N,KACViK,EAAOq2C,mBAAqBn0B,EAC1B4hC,EAAWyC,mBACTzC,EAAWnoC,KAAKyK,GAAI44B,MAAM,UAE5B,GAEN,IAAK,OACH,OAAO72D,KAAK4N,KACViK,EAAOq2C,iBACLyN,EAAWnoC,KAAKyK,GAAI44B,MAAM,QAAQ6B,YApB3B,EAqBP,IAGN,QACE,OAzBW,EA2BhB,EACDjkC,QAAS,SAAC0+B,EAAgBC,GACxB,IAAIiL,EAAa,EACbtwD,GAAK,EAET,OAAO4tD,EAAWrnC,UAChB,MACA6+B,EACAwI,EAAWnoC,KAAK4/B,IAChB3lC,KAAI,SAACwQ,GACL,IAAMzK,EAAOmoC,EAAWnoC,KAAKyK,GAE7B,OAAQpmB,EAAO1M,MACb,IAAK,QACH4C,EAAI4tD,EAAWyC,mBAAmBngC,GAAM,EACxC,MACF,IAAK,OACCogC,IAAe7qC,EAAKwJ,SACtBqhC,EAAa7qC,EAAKwJ,OAClBjvB,GAAK,GAEP,MACF,IAAK,OACHA,EAAIylB,EAAKmlC,UAKb,MAAO,CACL38B,EAAGiC,EACHlwB,EAAAA,EACA+qB,EAAmB,SAAhBjhB,EAAO1M,KAAkB,EAAIqoB,EAAKmlC,UAEzC,GACD,EACDllC,YAAa,SAACwK,GAAE,OAAK09B,EAAWnoC,KAAKyK,GAAI24B,QAAQ,OAAO3uD,SAAS,EAErE,EC1E8B,SAC5B0zD,EAAU/8B,GAQR,IANA/mB,EAAM+mB,EAAN/mB,OACAkiB,EAAmB6E,EAAnB7E,oBASF,MAAO,CACLp0B,KAAM,OACN03D,kBAJwC,CAAC,OAAQ,QAAS,QAK1D9hC,UAAW,SAAC0C,GACV,OAAQpmB,EAAO1M,MACb,IAAK,QACH,OAAOnL,KAAK4N,KACViK,EAAOq2C,mBAAqBn0B,EAC1B4hC,EAAWyC,mBACTzC,EAAWnoC,KAAKyK,GAAI44B,MAAM,UAE5B,GAEN,IAAK,OACH,OAAO72D,KAAK4N,KACViK,EAAOq2C,iBACLyN,EAAWnoC,KAAKyK,GAAI44B,MAAM,QAAQ6B,YAnBxB,EAoBV,IAGN,QACE,OAxBc,EA0BnB,EACDv9B,aAAc,WACZ,MAAoB,SAAhBtjB,EAAO1M,KACF,EA7BS,CAgCnB,EACDspB,QAAS,SAAC0+B,EAAgBC,GAAY,OAEpCuI,EAAWrnC,UACT,MACA6+B,EACAwI,EAAWnoC,KAAK4/B,IAChB3lC,KAAI,SAACwQ,GACL,IAAMzK,EAAOmoC,EAAWnoC,KAAKyK,GACvBqgC,EAAgB9qC,EAAKqjC,MAAM,QAAQ75B,OACrCjvB,EAAI,EAER,OAAQ8J,EAAO1M,MACb,IAAK,QACH4C,EAAI4tD,EAAWyC,mBAAmBngC,GAAM,EACxC,MACF,IAAK,OACmB,IAAlBqgC,GAAuB9qC,EAAKwJ,SAAWshC,IACzCvwD,EAAIylB,EAAKgkC,SAAS,EAAG,QAAQx6B,OAAS,GAGxCjvB,EAAIylB,EAAKwJ,OAAS,EAClB,MACF,IAAK,OACHjvB,EAAIylB,EAAKmlC,UAKb,MAAO,CACL38B,EAAGiC,EACHnF,EAAG/qB,EACHA,EAAmB,SAAhB8J,EAAO1M,KAAkB,EAAIqoB,EAAKmlC,aAEvC,EACJllC,YAAa,SAACwK,GAAE,OAAK09B,EAAWnoC,KAAKyK,GAAI24B,QAAQ,OAAO3uD,SAAS,EAErE,EChF8B,SAAC0zD,GAI7B,MAAO,CACLh2D,KAAM,QACN03D,kBAJwC,CAAC,SAKzC9hC,UAAW,WAAA,OANM,CAMU,EAC3BJ,aAAc,SAAC8C,GAAE,OAAK09B,EAAW4C,qBAAqBtgC,EAAG,EACzDxJ,QAAS,SAAC0+B,EAAgBC,GACxB,IAAMoL,EAAa7C,EAAWW,oBAAoBnJ,GAC5CsL,EAAW9C,EAAWW,oBAAoBlJ,GAE5CrlD,GAAK,EACH2wD,EAAWF,EAAW7F,UAE5B,OAAOgD,EAAWrnC,UAAU,MAAOkqC,EAAYC,GAAUhxC,KAAI,SAACwQ,GAC5D,IAAM06B,EAAUgD,EAAWnoC,KAAKyK,GAAI06B,UAKpC,OAJIA,IAAY+F,IACd3wD,GAAK,GAGA,CACLiuB,EAAGiC,EACHlwB,EAAAA,EACA+qB,EAAG6/B,EAEP,GACD,EACDllC,YAAa,SAACwK,GAAE,OAAK09B,EAAWnoC,KAAKyK,GAAI24B,QAAQ,OAAO3uD,SAAS,EAErE,EC9B+B,SAC7B0zD,EAAU/8B,GAER,IADA/mB,EAAM+mB,EAAN/mB,OAIF,MAAO,CACLlS,KAAM,OACN03D,kBAJwC,CAAC,OAAQ,SAKjD9hC,UAAW,WAAA,OAAM,CAAC,EAClBJ,aAAc,SAAC8C,GACb,OAAQpmB,EAAO1M,MACb,IAAK,OACH,OAAO0M,EAAOq2C,iBACZyN,EAAWnoC,KAAKyK,GAAI44B,MAAM,QAAQ+B,iBAClC,GACJ,IAAK,QACH,OAAO/gD,EAAOq2C,iBACZyN,EAAW4C,qBAAqBtgC,GAChC,EACJ,QACE,OAAO,EAEZ,EACDxJ,QAAS,SAAC0+B,EAAgBC,GACxB,IAAMoL,EAAa7C,EAAWW,oBAAoBnJ,GAC5CsL,EAAW9C,EAAWW,oBAAoBlJ,GAEhD,OAAOuI,EAAWrnC,UAAU,OAAQkqC,EAAYC,GAAUhxC,KACxD,SAACwQ,EAAI5uB,GAAC,MAAM,CACV2sB,EAAGiC,EACHlwB,EAAGsB,EACHypB,EAAG,EACJ,GAEJ,EACDrF,YAAa,SAACwK,GAAE,OAAK09B,EAAWnoC,KAAKyK,GAAI24B,QAAQ,QAAQ3uD,SAAS,EAEtE,ECvCgC,SAAC0zD,GAG/B,MAAO,CACLh2D,KAAM,QACN03D,kBAJwC,CAAC,QAKzC9hC,UAAW,WAAA,OAAM,CAAC,EAClBJ,aAAc,WAAA,OAAM,EAAE,EACtB1G,QAAS,SAAC0+B,EAAgBC,GAAY,OAEpCuI,EAAWrnC,UACT,QACA6+B,EACAwI,EAAWnoC,KAAK4/B,IAChB3lC,KAAI,SAACwQ,GAAE,MAAM,CACbjC,EAAGiC,EACHlwB,EAAG4tD,EAAWnoC,KAAKyK,GAAIhB,QACvBnE,EAAG,KACF,EACLrF,YAAa,SAACwK,GAAE,OAAK09B,EAAWnoC,KAAKyK,GAAI24B,QAAQ,SAAS3uD,SAAS,EAEvE,ECrB+B,SAAC0zD,GAG9B,MAAO,CACLh2D,KAAM,OACN03D,kBAJwC,GAKxC9hC,UAAW,WAAA,OAAM,CAAC,EAClBJ,aAAc,WAAA,OAAM,CAAC,EACrB1G,QAAS,SAAC0+B,EAAgBC,GAAY,OAEpCuI,EAAWrnC,UACT,OACA6+B,EACAwI,EAAWnoC,KAAK4/B,IAChB3lC,KAAI,SAACwQ,EAAI3vB,GAAK,MAAM,CACpB0tB,EAAGiC,EACHlwB,EAAGO,EACHwqB,EAAG,KACF,EACLrF,YAAa,SAACwK,GAAE,OAAK09B,EAAWnoC,KAAKyK,GAAI24B,QAAQ,QAAQ3uD,SAAS,EAEtE,GChBqB02D,GAAkB,WAUrC,SAAAA,EAAYtqC,EAAwBtoB,GAAgB8mB,OAAA8rC,GAClDt+D,KAAKk9D,SAAW,IAAI3jC,IACpBv5B,KAAKg0B,WAAaA,EAClBh0B,KAAK0L,QAAUA,EACf1L,KAAKu+D,WAAY,CACnB,CA4CC,OA5CA5rC,EAAA2rC,EAAA,CAAA,CAAA99D,IAAA,MAAAC,MAED,SAAIs8D,GACF,OAAO/8D,KAAKk9D,SAASl3D,IAAI+2D,EAC3B,GAAC,CAAAv8D,IAAA,MAAAC,MAED,SAAIs8D,GACF,OAAO/8D,KAAKk9D,SAAS3zD,IAAIwzD,EAC3B,GAAC,CAAAv8D,IAAA,OAAAC,MAED,WACOT,KAAKu+D,YACRv+D,KAAKu+D,WAAY,EACjBv+D,KAAKkW,IAAIsoD,IAEb,GAAC,CAAAh+D,IAAA,MAAAC,MAED,SAAIg+D,GAAgC,IAAA5rC,EAAA7yB,KAClCA,KAAKmyB,OAEL,IAAMusC,EAA0B,GAChCtyC,GAAUqyC,GAAWtxC,SAAQ,SAACxkB,GAC5B,IAAMg2D,EAAWh2D,EAAEkqB,EAAKmB,WAAYnB,EAAKnnB,QAAQA,SACjDmnB,EAAKqqC,SAAS5zD,IAAIq1D,EAASr5D,KAAMq5D,GAE7BA,EAAS58D,eAAe,WAC1B28D,EAAcv9D,KAAKw9D,EAASr5D,KAEhC,IAEAo5D,EAAcvxC,SAAQ,SAAC7nB,GACrB,IAAMs5D,EAAiB/rC,EAAKqqC,SAASl3D,IACnC6sB,EAAKqqC,SAASl3D,IAAIV,GAAOiS,QAGtBqnD,GAIL/rC,EAAKqqC,SAAS5zD,IAAIhE,iCACbs5D,GACA/rC,EAAKqqC,SAASl3D,IAAIV,IAEzB,GACF,KAACg5D,CAAA,CA3DoC,GCuBlBO,GAAU,WAuB7B,SAAAA,IAAArsC,OAAAqsC,GAEE7+D,KAAK0L,QAAU,IAAIgiD,GAGnB1tD,KAAKg0B,WAAa,IAAIsnC,GACtBt7D,KAAKizB,mBAAqB,IAAIqrC,GAC5Bt+D,KAAKg0B,WACLh0B,KAAK0L,SAEP1L,KAAK8+D,YAAc,IAAIjM,GAAY7yD,MACnCA,KAAKyD,UAAY,IAAI6uB,GAAUtyB,MAC/BA,KAAK++D,UAAY,IAAIjhB,GAAU99C,MAE/BA,KAAKghC,gBAAkB,IAAIoE,GAAgBplC,MAC3CA,KAAK00B,aAAe,IAAIsqC,GACxBh/D,KAAKmkC,cAAgB,IAAI84B,GAAcj9D,KACzC,CAyMC,OAzMA2yB,EAAAksC,EAAA,CAAA,CAAAr+D,IAAA,yBAAAC,MAED,SACEw+D,EACAvrC,GAC0B,IAA1BiK,6DAEA,OAAO,IAAIF,GACTz9B,KAAKg0B,WACLh0B,KAAK0L,QAAQA,QAAQ8L,OAAO1M,KAC5Bm0D,EACAvrC,EACAiK,EAEJ,GAMA,CAAAn9B,IAAA,QAAAC,MAOM,SACJiL,EACAyxD,wHAGA,OADAn9D,KAAK0L,QAAQymB,KAAKzmB,GAASsnD,EAAA38C,KAAA,EACrBrW,KAAKg0B,WAAWwR,MAAMxlC,KAAK0L,SAAQ,KAAA,EAEzC1L,KAAKizB,mBAAmBd,OAAO6gC,EAAA78B,KAAA,EAG7B0mC,GAAS78D,KAAKizB,mBAAoBjzB,KAAK0L,QAAQA,SAASsnD,EAAA38C,KAAA,GAAA,MAAA,KAAA,EAAA,OAAA28C,EAAA78B,KAAA,EAAA68B,EAAAnZ,GAAAmZ,EAAA,MAAA,GAAAA,EAAAC,OAEjD97C,SAAAA,QAAQkC,OAAM25C,EAAAnZ,KAAO,KAAA,GAiB5B,OAdEsjB,GACFn9D,KAAKmkC,cAAcjuB,IAAIkW,GAAU+wC,IAGnCn9D,KAAKghC,gBAAgBwE,QAIrBxlC,KAAKszB,iBAAmB,IAAImK,GAAiBz9B,KAAKg0B,YAClDh0B,KAAKyD,UAAUqxB,eACb90B,KAAK+0B,uBACH/0B,KAAK0L,QAAQA,QAAQynB,KAAKpJ,MAC1B/pB,KAAK0L,QAAQA,QAAQgoB,QAEvBs/B,EAAAC,OAAA,SAEK97C,QAAQ6N,WAAW,CAAChlB,KAAKghC,gBAAgB8C,QAAS9jC,KAAKwoB,UAAQ,KAAA,GAAA,IAAA,MAAA,OAAAwqC,EAAAn0C,OAAA,GAAAu0C,EAAApzD,KAAA,CAAA,CAAA,EAAA,IACvE,IAAA,GAED,CAAAQ,IAAA,eAAAC,MAQA,SAAag+D,GACXz+D,KAAKizB,mBAAmB/c,IAAIuoD,EAC9B,GAEA,CAAAj+D,IAAA,OAAAC,MAOA,WAAkB,IAAbkN,yDAAY,EACTuxD,EAAgBl/D,KAAKyD,UAAUqxB,eACnC90B,KAAK+0B,uBAAuB/0B,KAAKszB,iBAAiBxlB,IAAKH,EAAI,GAAGxC,MAAMwC,GACpEokB,GAAgB4B,gBAGlB,OAAOxc,QAAQ6N,WAAW,CACxBhlB,KAAKghC,gBAAgB8C,MAAMo7B,GAC3Bl/D,KAAKwoB,QAET,GAEA,CAAAhoB,IAAA,WAAAC,MAOA,WAAsB,IAAbkN,yDAAY,EACbuxD,EAAgBl/D,KAAKyD,UAAUqxB,eACnC90B,KAAK+0B,uBAAuB/0B,KAAKszB,iBAAiBvlB,KAAMJ,GACxDokB,GAAgB0C,iBAGlB,OAAOtd,QAAQ6N,WAAW,CACxBhlB,KAAKghC,gBAAgB8C,MAAMo7B,GAC3Bl/D,KAAKwoB,QAET,GAEA,CAAAhoB,IAAA,SAAAC,MAaA,SAAO0yB,GAAkC,IAAtBwB,EAAAnyB,UAAAqE,OAAA,QAAA3F,IAAAsB,UAAA,IAAAA,UAAA,GACjB,OAAO2U,QAAQ6N,WAAW,CACxBhlB,KAAKghC,gBAAgB8C,MAAM9jC,KAAKyD,UAAU07D,OAAOhsC,EAAMwB,IACvD30B,KAAKwoB,QAET,GAEA,CAAAhoB,IAAA,OAAAC,MAQA,WAAkD,IAAAoyB,EAAA7yB,KAA7Co/D,EAAU58D,UAAAqE,OAAArE,QAAAtB,IAAAsB,aAAAA,UAAG,GAAAxC,KAAK0L,QAAQA,QAAQoE,KAAKtO,OAClCkK,EAAY1L,KAAK0L,QAAjBA,QACFizD,EAAW3+D,KAAKizB,mBAChBosC,EAAUr/D,KAAKg0B,WAAWC,UAC9BvoB,EAAQ8L,OAAO1M,KACf9K,KAAKszB,iBAAiBxlB,IACtB,GACA,GAEIwxD,EAAct/D,KAAK8+D,YAAYS,SACnCH,EACAp/D,KAAKszB,iBAAiBvlB,IACtBsxD,GAGF,OAAO,IAAIloD,SAAQ,SAACQ,EAAS0B,GAC3BimD,EAAY5oD,MACV,SAAC5G,GACC+iB,EAAKS,iBAAiB9K,KACpB1Y,EACApE,EAAQoE,KACR6uD,EAAS34D,IAAI0F,EAAQyoB,UAAUrpB,MAAOsoB,aAExCP,EAAKksC,UAAUS,WACf7nD,EAAQ,KACT,IACD,SAAC/W,GACCyY,EAAOzY,EACT,GAEJ,GACF,GAEA,CAAAJ,IAAA,KAAAC,MAQA,SAAG6E,EAAchD,GACftC,KAAK00B,aAAa5I,GAAGxmB,EAAMhD,EAC7B,GAAC,CAAA9B,IAAA,aAAAC,MAED,WACE,OAAOT,KAAKghC,gBAAgBrH,UAC9B,GAEA,CAAAn5B,IAAA,UAAAC,MAOA,WACE,OAAOT,KAAKghC,gBAAgBgF,SAC9B,GAAC,CAAAxlC,IAAA,cAAAC,MAED,SAAYykC,GACV,OAAOllC,KAAKg0B,WAAW8jC,OAAO5yB,EAChC,KAAC25B,CAAA,CAjP4B,GACL,OAAjBA,GAAOY,QC/BA,QD+BUZ,EAAA","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,159,161,162,163,164,165,166,167,168,169,170,171,172,173,174,178,179,180,181,182,185,186,187,188,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,355,356,358,359,360,361,362,363,364,365,366,367,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,385,387]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/CalendarLabel.min.esm.js.map b/src/agenda_culturel/static/cal-heatmap/plugins/CalendarLabel.min.esm.js.map index 9b21a60..d9c0a19 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/CalendarLabel.min.esm.js.map +++ b/src/agenda_culturel/static/cal-heatmap/plugins/CalendarLabel.min.esm.js.map @@ -1 +1 @@ -{"version":3,"file":"CalendarLabel.min.esm.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/array-method-is-strict.js","../../node_modules/core-js/modules/es.array.join.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/core-js/internals/array-for-each.js","../../node_modules/core-js/modules/web.dom-collections.for-each.js","../../node_modules/core-js/modules/es.object.keys.js","../../../src/constant.ts","../../node_modules/tslib/tslib.es6.js","../../../src/helpers/PositionHelper.ts","../../../src/plugins/CalendarLabel.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","import { Position } from '../constant';\nimport type { Padding } from '../options/Options';\n\nexport function isHorizontal(position: string): boolean {\n return position === 'left' || position === 'right';\n}\n\nexport function isVertical(position: string): boolean {\n return position === 'top' || position === 'bottom';\n}\n\nexport function horizontalPadding(padding: Padding): number {\n return padding[Position.LEFT] + padding[Position.RIGHT];\n}\n\nexport function verticalPadding(padding: Padding): number {\n return padding[Position.TOP] + padding[Position.BOTTOM];\n}\n","import { Position } from '../constant';\nimport {\n isHorizontal,\n isVertical,\n horizontalPadding,\n verticalPadding,\n} from '../helpers/PositionHelper';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\nimport type { TextAlign, Padding } from '../options/Options';\n\ntype ComputedOptions = {\n radius: number;\n width: number;\n height: number;\n gutter: number;\n textAlign: TextAlign;\n};\n\ninterface CalendarLabelOptions extends PluginOptions, Partial {\n enabled: boolean;\n text: () => string[];\n padding: Padding;\n}\n\nconst DEFAULT_SELECTOR = '.ch-plugin-calendar-label';\n\nconst defaultOptions: CalendarLabelOptions = {\n enabled: true,\n\n dimensions: {\n width: 0,\n height: 0,\n },\n\n position: 'left',\n\n text: () => [],\n\n padding: [0, 0, 0, 0],\n};\n\nexport default class CalendarLabel implements IPlugin {\n name = 'CalendarLabel';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: CalendarLabelOptions;\n\n computedOptions: ComputedOptions;\n\n constructor(calendar: CalHeatmap) {\n const subDomain = calendar?.options?.options?.subDomain;\n\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n this.computedOptions = {\n radius: subDomain?.radius,\n width: subDomain?.width,\n height: subDomain?.height,\n gutter: subDomain?.gutter,\n textAlign: 'start',\n };\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n }\n\n paint(): Promise {\n const { enabled } = this.options;\n\n if (!enabled) {\n return this.destroy();\n }\n\n this.shown = true;\n\n const calendarRoot = this.calendar.calendarPainter.root;\n\n if (!this.root) {\n this.root = calendarRoot\n .append('svg')\n .attr('class', DEFAULT_SELECTOR.slice(1))\n .attr('data-key', this.options.key)\n .attr('x', 0)\n .attr('y', 0);\n }\n\n this.build();\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n\n build() {\n this.#buildComputedOptions();\n this.#computeDimensions();\n\n this.root\n .selectAll('g')\n .data(this.options.text)\n .join((enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .append('rect')\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-bg`)\n .attr('style', 'fill: transparent')\n .call((s: any) => this.#setRectAttr(s)))\n .call((selection: any) => selection\n .append('text')\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-text`)\n .attr('dominant-baseline', 'central')\n .attr('text-anchor', 'middle')\n .attr('style', 'fill: currentColor; font-size: 10px')\n .call((s: any) => this.#setTextAttr(s))));\n\n return Promise.resolve();\n }\n\n #buildComputedOptions() {\n Object.keys(this.computedOptions).forEach((key: string) => {\n if (typeof this.options[key as keyof ComputedOptions] !== 'undefined') {\n // @ts-ignore\n this.computedOptions[key] = this.options[key];\n }\n });\n }\n\n /**\n * Compute the total dimension of the current plugin\n */\n #computeDimensions(): void {\n const { width, height, gutter } = this.computedOptions;\n const { text, padding, position } = this.options;\n const labelsCount = text().length;\n\n this.options.dimensions = {\n width: width + horizontalPadding(padding),\n height: height + verticalPadding(padding),\n };\n\n if (isVertical(position!)) {\n this.options.dimensions.width += (width + gutter) * (labelsCount - 1);\n } else {\n this.options.dimensions.height += (height + gutter) * (labelsCount - 1);\n }\n }\n\n #setRectAttr(selection: any) {\n const { width, height, radius } = this.computedOptions;\n\n selection\n .attr('width', width)\n .attr('height', height)\n .attr('rx', radius && radius > 0 ? radius : null)\n .attr('ry', radius && radius > 0 ? radius : null)\n .attr('x', (_d: string, i: number) => this.#getX(i))\n .attr('y', (_d: string, i: number) => this.#getY(i));\n }\n\n #setTextAttr(selection: any): void {\n const { height, textAlign } = this.computedOptions;\n\n selection\n .attr('text-anchor', textAlign)\n .attr(\n 'x',\n (_d: string, i: number) => this.#getTextXOffset() + this.#getX(i),\n )\n .attr('y', (_d: string, i: number) => this.#getY(i) + height! / 2)\n .text((data: string) => data);\n }\n\n #getTextXOffset() {\n const { width, textAlign } = this.computedOptions;\n\n switch (textAlign) {\n case 'start':\n return 0;\n case 'middle':\n return width / 2;\n case 'end':\n return width;\n default:\n return 0;\n }\n }\n\n #getX(index: number) {\n const { position, padding } = this.options;\n const { width, gutter } = this.computedOptions;\n\n if (isHorizontal(position!)) {\n return padding[Position.LEFT];\n }\n\n return padding[Position.LEFT] + (width + gutter) * index;\n }\n\n #getY(index: number) {\n const { position, padding } = this.options;\n const { height, gutter } = this.computedOptions;\n\n if (isVertical(position!)) {\n return padding[Position.TOP];\n }\n\n return padding[Position.TOP] + (height + gutter) * index;\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","SPECIES","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","arrayMethodIsStrict","METHOD_NAME","nativeJoin","separator","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","addToUnscopables","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","createProperty","propertyKey","$Array","$getOwnPropertyNames","start","end","k","fin","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","isArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","getConstructor","ADDER","define","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","collection","init","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","$forEach","ScrollDirection","Position","nativeKeys","__classPrivateFieldGet","receiver","isVertical","horizontalPadding","padding","LEFT","RIGHT","verticalPadding","TOP","BOTTOM","DEFAULT_SELECTOR","defaultOptions","enabled","dimensions","width","height","text","CalendarLabel","calendar","_classCallCheck","subDomain","_b","_a","root","shown","computedOptions","radius","gutter","textAlign","pluginOptions","destroy","calendarRoot","calendarPainter","append","attr","build","remove","_this","_CalendarLabel_instances","_CalendarLabel_buildComputedOptions","_CalendarLabel_computeDimensions","selectAll","selection","s","_CalendarLabel_setRectAttr","_CalendarLabel_setTextAttr","_this2","_this$computedOptions","_this$options","labelsCount","_this3","_this$computedOptions2","_d","_CalendarLabel_getX","_this4","_this$computedOptions3","_CalendarLabel_getY","_CalendarLabel_getTextXOffset","_this$computedOptions4","_this$options2","_this$computedOptions5","isHorizontal","_this$options3","_this$computedOptions6"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,156]} \ No newline at end of file +{"version":3,"file":"CalendarLabel.min.esm.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/array-method-is-strict.js","../../node_modules/core-js/modules/es.array.join.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/core-js/internals/array-for-each.js","../../node_modules/core-js/modules/web.dom-collections.for-each.js","../../node_modules/core-js/modules/es.object.keys.js","../../../src/constant.ts","../../node_modules/tslib/tslib.es6.js","../../../src/helpers/PositionHelper.ts","../../../src/plugins/CalendarLabel.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","import { Position } from '../constant';\nimport type { Padding } from '../options/Options';\n\nexport function isHorizontal(position: string): boolean {\n return position === 'left' || position === 'right';\n}\n\nexport function isVertical(position: string): boolean {\n return position === 'top' || position === 'bottom';\n}\n\nexport function horizontalPadding(padding: Padding): number {\n return padding[Position.LEFT] + padding[Position.RIGHT];\n}\n\nexport function verticalPadding(padding: Padding): number {\n return padding[Position.TOP] + padding[Position.BOTTOM];\n}\n","import { Position } from '../constant';\nimport {\n isHorizontal,\n isVertical,\n horizontalPadding,\n verticalPadding,\n} from '../helpers/PositionHelper';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\nimport type { TextAlign, Padding } from '../options/Options';\n\ntype ComputedOptions = {\n radius: number;\n width: number;\n height: number;\n gutter: number;\n textAlign: TextAlign;\n};\n\ninterface CalendarLabelOptions extends PluginOptions, Partial {\n enabled: boolean;\n text: () => string[];\n padding: Padding;\n}\n\nconst DEFAULT_SELECTOR = '.ch-plugin-calendar-label';\n\nconst defaultOptions: CalendarLabelOptions = {\n enabled: true,\n\n dimensions: {\n width: 0,\n height: 0,\n },\n\n position: 'left',\n\n text: () => [],\n\n padding: [0, 0, 0, 0],\n};\n\nexport default class CalendarLabel implements IPlugin {\n name = 'CalendarLabel';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: CalendarLabelOptions;\n\n computedOptions: ComputedOptions;\n\n constructor(calendar: CalHeatmap) {\n const subDomain = calendar?.options?.options?.subDomain;\n\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n this.computedOptions = {\n radius: subDomain?.radius,\n width: subDomain?.width,\n height: subDomain?.height,\n gutter: subDomain?.gutter,\n textAlign: 'start',\n };\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n }\n\n paint(): Promise {\n const { enabled } = this.options;\n\n if (!enabled) {\n return this.destroy();\n }\n\n this.shown = true;\n\n const calendarRoot = this.calendar.calendarPainter.root;\n\n if (!this.root) {\n this.root = calendarRoot\n .append('svg')\n .attr('class', DEFAULT_SELECTOR.slice(1))\n .attr('data-key', this.options.key)\n .attr('x', 0)\n .attr('y', 0);\n }\n\n this.build();\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n\n build() {\n this.#buildComputedOptions();\n this.#computeDimensions();\n\n this.root\n .selectAll('g')\n .data(this.options.text)\n .join((enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .append('rect')\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-bg`)\n .attr('style', 'fill: transparent')\n .call((s: any) => this.#setRectAttr(s)))\n .call((selection: any) => selection\n .append('text')\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-text`)\n .attr('dominant-baseline', 'central')\n .attr('text-anchor', 'middle')\n .attr('style', 'fill: currentColor; font-size: 10px')\n .call((s: any) => this.#setTextAttr(s))));\n\n return Promise.resolve();\n }\n\n #buildComputedOptions() {\n Object.keys(this.computedOptions).forEach((key: string) => {\n if (typeof this.options[key as keyof ComputedOptions] !== 'undefined') {\n // @ts-ignore\n this.computedOptions[key] = this.options[key];\n }\n });\n }\n\n /**\n * Compute the total dimension of the current plugin\n */\n #computeDimensions(): void {\n const { width, height, gutter } = this.computedOptions;\n const { text, padding, position } = this.options;\n const labelsCount = text().length;\n\n this.options.dimensions = {\n width: width + horizontalPadding(padding),\n height: height + verticalPadding(padding),\n };\n\n if (isVertical(position!)) {\n this.options.dimensions.width += (width + gutter) * (labelsCount - 1);\n } else {\n this.options.dimensions.height += (height + gutter) * (labelsCount - 1);\n }\n }\n\n #setRectAttr(selection: any) {\n const { width, height, radius } = this.computedOptions;\n\n selection\n .attr('width', width)\n .attr('height', height)\n .attr('rx', radius && radius > 0 ? radius : null)\n .attr('ry', radius && radius > 0 ? radius : null)\n .attr('x', (_d: string, i: number) => this.#getX(i))\n .attr('y', (_d: string, i: number) => this.#getY(i));\n }\n\n #setTextAttr(selection: any): void {\n const { height, textAlign } = this.computedOptions;\n\n selection\n .attr('text-anchor', textAlign)\n .attr(\n 'x',\n (_d: string, i: number) => this.#getTextXOffset() + this.#getX(i),\n )\n .attr('y', (_d: string, i: number) => this.#getY(i) + height! / 2)\n .text((data: string) => data);\n }\n\n #getTextXOffset() {\n const { width, textAlign } = this.computedOptions;\n\n switch (textAlign) {\n case 'start':\n return 0;\n case 'middle':\n return width / 2;\n case 'end':\n return width;\n default:\n return 0;\n }\n }\n\n #getX(index: number) {\n const { position, padding } = this.options;\n const { width, gutter } = this.computedOptions;\n\n if (isHorizontal(position!)) {\n return padding[Position.LEFT];\n }\n\n return padding[Position.LEFT] + (width + gutter) * index;\n }\n\n #getY(index: number) {\n const { position, padding } = this.options;\n const { height, gutter } = this.computedOptions;\n\n if (isVertical(position!)) {\n return padding[Position.TOP];\n }\n\n return padding[Position.TOP] + (height + gutter) * index;\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","SPECIES","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","arrayMethodIsStrict","METHOD_NAME","nativeJoin","separator","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","addToUnscopables","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","createProperty","propertyKey","$Array","$getOwnPropertyNames","start","end","k","fin","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","isArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","getConstructor","ADDER","define","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","collection","init","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","$forEach","ScrollDirection","Position","nativeKeys","__classPrivateFieldGet","receiver","isVertical","horizontalPadding","padding","LEFT","RIGHT","verticalPadding","TOP","BOTTOM","DEFAULT_SELECTOR","defaultOptions","enabled","dimensions","width","height","text","CalendarLabel","calendar","_classCallCheck","subDomain","_b","_a","root","shown","computedOptions","radius","gutter","textAlign","pluginOptions","destroy","calendarRoot","calendarPainter","append","attr","build","remove","_this","_CalendarLabel_instances","_CalendarLabel_buildComputedOptions","_CalendarLabel_computeDimensions","selectAll","selection","s","_CalendarLabel_setRectAttr","_CalendarLabel_setTextAttr","_this2","_this$computedOptions","_this$options","labelsCount","_this3","_this$computedOptions2","_d","_CalendarLabel_getX","_this4","_this$computedOptions3","_CalendarLabel_getY","_CalendarLabel_getTextXOffset","_this$computedOptions4","_this$options2","_this$computedOptions5","isHorizontal","_this$options3","_this$computedOptions6"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,156]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/CalendarLabel.min.js.map b/src/agenda_culturel/static/cal-heatmap/plugins/CalendarLabel.min.js.map index dbabc62..8cdb018 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/CalendarLabel.min.js.map +++ b/src/agenda_culturel/static/cal-heatmap/plugins/CalendarLabel.min.js.map @@ -1 +1 @@ -{"version":3,"file":"CalendarLabel.min.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/array-method-is-strict.js","../../node_modules/core-js/modules/es.array.join.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/core-js/internals/array-for-each.js","../../node_modules/core-js/modules/web.dom-collections.for-each.js","../../node_modules/core-js/modules/es.object.keys.js","../../../src/constant.ts","../../node_modules/tslib/tslib.es6.js","../../../src/helpers/PositionHelper.ts","../../../src/plugins/CalendarLabel.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","import { Position } from '../constant';\nimport type { Padding } from '../options/Options';\n\nexport function isHorizontal(position: string): boolean {\n return position === 'left' || position === 'right';\n}\n\nexport function isVertical(position: string): boolean {\n return position === 'top' || position === 'bottom';\n}\n\nexport function horizontalPadding(padding: Padding): number {\n return padding[Position.LEFT] + padding[Position.RIGHT];\n}\n\nexport function verticalPadding(padding: Padding): number {\n return padding[Position.TOP] + padding[Position.BOTTOM];\n}\n","import { Position } from '../constant';\nimport {\n isHorizontal,\n isVertical,\n horizontalPadding,\n verticalPadding,\n} from '../helpers/PositionHelper';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\nimport type { TextAlign, Padding } from '../options/Options';\n\ntype ComputedOptions = {\n radius: number;\n width: number;\n height: number;\n gutter: number;\n textAlign: TextAlign;\n};\n\ninterface CalendarLabelOptions extends PluginOptions, Partial {\n enabled: boolean;\n text: () => string[];\n padding: Padding;\n}\n\nconst DEFAULT_SELECTOR = '.ch-plugin-calendar-label';\n\nconst defaultOptions: CalendarLabelOptions = {\n enabled: true,\n\n dimensions: {\n width: 0,\n height: 0,\n },\n\n position: 'left',\n\n text: () => [],\n\n padding: [0, 0, 0, 0],\n};\n\nexport default class CalendarLabel implements IPlugin {\n name = 'CalendarLabel';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: CalendarLabelOptions;\n\n computedOptions: ComputedOptions;\n\n constructor(calendar: CalHeatmap) {\n const subDomain = calendar?.options?.options?.subDomain;\n\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n this.computedOptions = {\n radius: subDomain?.radius,\n width: subDomain?.width,\n height: subDomain?.height,\n gutter: subDomain?.gutter,\n textAlign: 'start',\n };\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n }\n\n paint(): Promise {\n const { enabled } = this.options;\n\n if (!enabled) {\n return this.destroy();\n }\n\n this.shown = true;\n\n const calendarRoot = this.calendar.calendarPainter.root;\n\n if (!this.root) {\n this.root = calendarRoot\n .append('svg')\n .attr('class', DEFAULT_SELECTOR.slice(1))\n .attr('data-key', this.options.key)\n .attr('x', 0)\n .attr('y', 0);\n }\n\n this.build();\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n\n build() {\n this.#buildComputedOptions();\n this.#computeDimensions();\n\n this.root\n .selectAll('g')\n .data(this.options.text)\n .join((enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .append('rect')\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-bg`)\n .attr('style', 'fill: transparent')\n .call((s: any) => this.#setRectAttr(s)))\n .call((selection: any) => selection\n .append('text')\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-text`)\n .attr('dominant-baseline', 'central')\n .attr('text-anchor', 'middle')\n .attr('style', 'fill: currentColor; font-size: 10px')\n .call((s: any) => this.#setTextAttr(s))));\n\n return Promise.resolve();\n }\n\n #buildComputedOptions() {\n Object.keys(this.computedOptions).forEach((key: string) => {\n if (typeof this.options[key as keyof ComputedOptions] !== 'undefined') {\n // @ts-ignore\n this.computedOptions[key] = this.options[key];\n }\n });\n }\n\n /**\n * Compute the total dimension of the current plugin\n */\n #computeDimensions(): void {\n const { width, height, gutter } = this.computedOptions;\n const { text, padding, position } = this.options;\n const labelsCount = text().length;\n\n this.options.dimensions = {\n width: width + horizontalPadding(padding),\n height: height + verticalPadding(padding),\n };\n\n if (isVertical(position!)) {\n this.options.dimensions.width += (width + gutter) * (labelsCount - 1);\n } else {\n this.options.dimensions.height += (height + gutter) * (labelsCount - 1);\n }\n }\n\n #setRectAttr(selection: any) {\n const { width, height, radius } = this.computedOptions;\n\n selection\n .attr('width', width)\n .attr('height', height)\n .attr('rx', radius && radius > 0 ? radius : null)\n .attr('ry', radius && radius > 0 ? radius : null)\n .attr('x', (_d: string, i: number) => this.#getX(i))\n .attr('y', (_d: string, i: number) => this.#getY(i));\n }\n\n #setTextAttr(selection: any): void {\n const { height, textAlign } = this.computedOptions;\n\n selection\n .attr('text-anchor', textAlign)\n .attr(\n 'x',\n (_d: string, i: number) => this.#getTextXOffset() + this.#getX(i),\n )\n .attr('y', (_d: string, i: number) => this.#getY(i) + height! / 2)\n .text((data: string) => data);\n }\n\n #getTextXOffset() {\n const { width, textAlign } = this.computedOptions;\n\n switch (textAlign) {\n case 'start':\n return 0;\n case 'middle':\n return width / 2;\n case 'end':\n return width;\n default:\n return 0;\n }\n }\n\n #getX(index: number) {\n const { position, padding } = this.options;\n const { width, gutter } = this.computedOptions;\n\n if (isHorizontal(position!)) {\n return padding[Position.LEFT];\n }\n\n return padding[Position.LEFT] + (width + gutter) * index;\n }\n\n #getY(index: number) {\n const { position, padding } = this.options;\n const { height, gutter } = this.computedOptions;\n\n if (isVertical(position!)) {\n return padding[Position.TOP];\n }\n\n return padding[Position.TOP] + (height + gutter) * index;\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","SPECIES","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","arrayMethodIsStrict","METHOD_NAME","nativeJoin","separator","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","addToUnscopables","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","createProperty","propertyKey","$Array","$getOwnPropertyNames","start","end","k","fin","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","isArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","getConstructor","ADDER","define","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","collection","init","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","$forEach","arrayForEach","ScrollDirection","Position","nativeKeys","__classPrivateFieldGet","receiver","isVertical","horizontalPadding","padding","LEFT","RIGHT","verticalPadding","TOP","BOTTOM","DEFAULT_SELECTOR","defaultOptions","enabled","dimensions","width","height","text","CalendarLabel","calendar","_classCallCheck","subDomain","_b","_a","root","shown","computedOptions","radius","gutter","textAlign","pluginOptions","destroy","calendarRoot","calendarPainter","append","attr","build","remove","_this","_CalendarLabel_instances","_CalendarLabel_buildComputedOptions","_CalendarLabel_computeDimensions","selectAll","selection","s","_CalendarLabel_setRectAttr","_CalendarLabel_setTextAttr","_this2","_this$computedOptions","_this$options","labelsCount","_this3","_this$computedOptions2","_d","_CalendarLabel_getX","_this4","_this$computedOptions3","_CalendarLabel_getY","_CalendarLabel_getTextXOffset","_this$computedOptions4","_this$options2","_this$computedOptions5","isHorizontal","_this$options3","_this$computedOptions6"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,156]} \ No newline at end of file +{"version":3,"file":"CalendarLabel.min.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/array-method-is-strict.js","../../node_modules/core-js/modules/es.array.join.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/core-js/internals/array-for-each.js","../../node_modules/core-js/modules/web.dom-collections.for-each.js","../../node_modules/core-js/modules/es.object.keys.js","../../../src/constant.ts","../../node_modules/tslib/tslib.es6.js","../../../src/helpers/PositionHelper.ts","../../../src/plugins/CalendarLabel.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","import { Position } from '../constant';\nimport type { Padding } from '../options/Options';\n\nexport function isHorizontal(position: string): boolean {\n return position === 'left' || position === 'right';\n}\n\nexport function isVertical(position: string): boolean {\n return position === 'top' || position === 'bottom';\n}\n\nexport function horizontalPadding(padding: Padding): number {\n return padding[Position.LEFT] + padding[Position.RIGHT];\n}\n\nexport function verticalPadding(padding: Padding): number {\n return padding[Position.TOP] + padding[Position.BOTTOM];\n}\n","import { Position } from '../constant';\nimport {\n isHorizontal,\n isVertical,\n horizontalPadding,\n verticalPadding,\n} from '../helpers/PositionHelper';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\nimport type { TextAlign, Padding } from '../options/Options';\n\ntype ComputedOptions = {\n radius: number;\n width: number;\n height: number;\n gutter: number;\n textAlign: TextAlign;\n};\n\ninterface CalendarLabelOptions extends PluginOptions, Partial {\n enabled: boolean;\n text: () => string[];\n padding: Padding;\n}\n\nconst DEFAULT_SELECTOR = '.ch-plugin-calendar-label';\n\nconst defaultOptions: CalendarLabelOptions = {\n enabled: true,\n\n dimensions: {\n width: 0,\n height: 0,\n },\n\n position: 'left',\n\n text: () => [],\n\n padding: [0, 0, 0, 0],\n};\n\nexport default class CalendarLabel implements IPlugin {\n name = 'CalendarLabel';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: CalendarLabelOptions;\n\n computedOptions: ComputedOptions;\n\n constructor(calendar: CalHeatmap) {\n const subDomain = calendar?.options?.options?.subDomain;\n\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n this.computedOptions = {\n radius: subDomain?.radius,\n width: subDomain?.width,\n height: subDomain?.height,\n gutter: subDomain?.gutter,\n textAlign: 'start',\n };\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n }\n\n paint(): Promise {\n const { enabled } = this.options;\n\n if (!enabled) {\n return this.destroy();\n }\n\n this.shown = true;\n\n const calendarRoot = this.calendar.calendarPainter.root;\n\n if (!this.root) {\n this.root = calendarRoot\n .append('svg')\n .attr('class', DEFAULT_SELECTOR.slice(1))\n .attr('data-key', this.options.key)\n .attr('x', 0)\n .attr('y', 0);\n }\n\n this.build();\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n\n build() {\n this.#buildComputedOptions();\n this.#computeDimensions();\n\n this.root\n .selectAll('g')\n .data(this.options.text)\n .join((enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .append('rect')\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-bg`)\n .attr('style', 'fill: transparent')\n .call((s: any) => this.#setRectAttr(s)))\n .call((selection: any) => selection\n .append('text')\n .attr('class', `${DEFAULT_SELECTOR.slice(1)}-text`)\n .attr('dominant-baseline', 'central')\n .attr('text-anchor', 'middle')\n .attr('style', 'fill: currentColor; font-size: 10px')\n .call((s: any) => this.#setTextAttr(s))));\n\n return Promise.resolve();\n }\n\n #buildComputedOptions() {\n Object.keys(this.computedOptions).forEach((key: string) => {\n if (typeof this.options[key as keyof ComputedOptions] !== 'undefined') {\n // @ts-ignore\n this.computedOptions[key] = this.options[key];\n }\n });\n }\n\n /**\n * Compute the total dimension of the current plugin\n */\n #computeDimensions(): void {\n const { width, height, gutter } = this.computedOptions;\n const { text, padding, position } = this.options;\n const labelsCount = text().length;\n\n this.options.dimensions = {\n width: width + horizontalPadding(padding),\n height: height + verticalPadding(padding),\n };\n\n if (isVertical(position!)) {\n this.options.dimensions.width += (width + gutter) * (labelsCount - 1);\n } else {\n this.options.dimensions.height += (height + gutter) * (labelsCount - 1);\n }\n }\n\n #setRectAttr(selection: any) {\n const { width, height, radius } = this.computedOptions;\n\n selection\n .attr('width', width)\n .attr('height', height)\n .attr('rx', radius && radius > 0 ? radius : null)\n .attr('ry', radius && radius > 0 ? radius : null)\n .attr('x', (_d: string, i: number) => this.#getX(i))\n .attr('y', (_d: string, i: number) => this.#getY(i));\n }\n\n #setTextAttr(selection: any): void {\n const { height, textAlign } = this.computedOptions;\n\n selection\n .attr('text-anchor', textAlign)\n .attr(\n 'x',\n (_d: string, i: number) => this.#getTextXOffset() + this.#getX(i),\n )\n .attr('y', (_d: string, i: number) => this.#getY(i) + height! / 2)\n .text((data: string) => data);\n }\n\n #getTextXOffset() {\n const { width, textAlign } = this.computedOptions;\n\n switch (textAlign) {\n case 'start':\n return 0;\n case 'middle':\n return width / 2;\n case 'end':\n return width;\n default:\n return 0;\n }\n }\n\n #getX(index: number) {\n const { position, padding } = this.options;\n const { width, gutter } = this.computedOptions;\n\n if (isHorizontal(position!)) {\n return padding[Position.LEFT];\n }\n\n return padding[Position.LEFT] + (width + gutter) * index;\n }\n\n #getY(index: number) {\n const { position, padding } = this.options;\n const { height, gutter } = this.computedOptions;\n\n if (isVertical(position!)) {\n return padding[Position.TOP];\n }\n\n return padding[Position.TOP] + (height + gutter) * index;\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","SPECIES","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","arrayMethodIsStrict","METHOD_NAME","nativeJoin","separator","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","addToUnscopables","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","createProperty","propertyKey","$Array","$getOwnPropertyNames","start","end","k","fin","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","isArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","getConstructor","ADDER","define","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","collection","init","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","$forEach","arrayForEach","ScrollDirection","Position","nativeKeys","__classPrivateFieldGet","receiver","isVertical","horizontalPadding","padding","LEFT","RIGHT","verticalPadding","TOP","BOTTOM","DEFAULT_SELECTOR","defaultOptions","enabled","dimensions","width","height","text","CalendarLabel","calendar","_classCallCheck","subDomain","_b","_a","root","shown","computedOptions","radius","gutter","textAlign","pluginOptions","destroy","calendarRoot","calendarPainter","append","attr","build","remove","_this","_CalendarLabel_instances","_CalendarLabel_buildComputedOptions","_CalendarLabel_computeDimensions","selectAll","selection","s","_CalendarLabel_setRectAttr","_CalendarLabel_setTextAttr","_this2","_this$computedOptions","_this$options","labelsCount","_this3","_this$computedOptions2","_d","_CalendarLabel_getX","_this4","_this$computedOptions3","_CalendarLabel_getY","_CalendarLabel_getTextXOffset","_this$computedOptions4","_this$options2","_this$computedOptions5","isHorizontal","_this$options3","_this$computedOptions6"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,156]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/Legend.min.esm.js.map b/src/agenda_culturel/static/cal-heatmap/plugins/Legend.min.esm.js.map index 26452c3..ac4ebde 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/Legend.min.esm.js.map +++ b/src/agenda_culturel/static/cal-heatmap/plugins/Legend.min.esm.js.map @@ -1 +1 @@ -{"version":3,"file":"Legend.min.esm.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/@observablehq/plot/src/defined.js","../../node_modules/isoformat/src/format.js","../../node_modules/isoformat/src/parse.js","../../node_modules/@observablehq/plot/src/time.js","../../node_modules/@observablehq/plot/src/options.js","../../node_modules/@observablehq/plot/src/scales/index.js","../../node_modules/@observablehq/plot/src/symbol.js","../../node_modules/@observablehq/plot/src/warnings.js","../../node_modules/@observablehq/plot/src/projection.js","../../node_modules/@observablehq/plot/src/context.js","../../node_modules/@observablehq/plot/src/scales/schemes.js","../../node_modules/@observablehq/plot/src/scales/quantitative.js","../../node_modules/@observablehq/plot/src/scales/diverging.js","../../node_modules/@observablehq/plot/src/scales/temporal.js","../../node_modules/@observablehq/plot/src/scales/ordinal.js","../../node_modules/@observablehq/plot/src/scales.js","../../node_modules/@observablehq/plot/src/format.js","../../node_modules/@observablehq/plot/src/memoize.js","../../node_modules/@observablehq/plot/src/style.js","../../node_modules/@observablehq/plot/src/axes.js","../../node_modules/@observablehq/plot/src/legends/swatches.js","../../node_modules/@observablehq/plot/src/legends.js","../../node_modules/@observablehq/plot/src/legends/ramp.js","../../../src/plugins/Legend.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","export default function format(date, fallback) {\n if (!(date instanceof Date)) date = new Date(+date);\n if (isNaN(date)) return typeof fallback === \"function\" ? fallback(date) : fallback;\n const hours = date.getUTCHours();\n const minutes = date.getUTCMinutes();\n const seconds = date.getUTCSeconds();\n const milliseconds = date.getUTCMilliseconds();\n return `${formatYear(date.getUTCFullYear(), 4)}-${pad(date.getUTCMonth() + 1, 2)}-${pad(date.getUTCDate(), 2)}${\n hours || minutes || seconds || milliseconds ? `T${pad(hours, 2)}:${pad(minutes, 2)}${\n seconds || milliseconds ? `:${pad(seconds, 2)}${\n milliseconds ? `.${pad(milliseconds, 3)}` : ``\n }` : ``\n }Z` : ``\n }`;\n}\n\nfunction formatYear(year) {\n return year < 0 ? `-${pad(-year, 6)}`\n : year > 9999 ? `+${pad(year, 6)}`\n : pad(year, 4);\n}\n\nfunction pad(value, width) {\n return `${value}`.padStart(width, \"0\");\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n geoAlbers,\n geoAlbersUsa,\n geoAzimuthalEqualArea,\n geoAzimuthalEquidistant,\n geoClipRectangle,\n geoConicConformal,\n geoConicEqualArea,\n geoConicEquidistant,\n geoEqualEarth,\n geoEquirectangular,\n geoGnomonic,\n geoMercator,\n geoOrthographic,\n geoPath,\n geoStereographic,\n geoTransform,\n geoTransverseMercator\n} from \"d3\";\nimport {valueObject} from \"./channel.js\";\nimport {coerceNumbers, constant, isObject} from \"./options.js\";\nimport {warn} from \"./warnings.js\";\n\nconst pi = Math.PI;\nconst tau = 2 * pi;\nconst defaultAspectRatio = 0.618;\n\nexport function createProjection(\n {\n projection,\n inset: globalInset = 0,\n insetTop = globalInset,\n insetRight = globalInset,\n insetBottom = globalInset,\n insetLeft = globalInset\n } = {},\n dimensions\n) {\n if (projection == null) return;\n if (typeof projection.stream === \"function\") return projection; // d3 projection\n let options;\n let domain;\n let clip = \"frame\";\n\n // If the projection was specified as an object with additional options,\n // extract those. The order of precedence for insetTop (and other insets) is:\n // projection.insetTop, projection.inset, (global) insetTop, (global) inset.\n // Any other options on this object will be passed through to the initializer.\n if (isObject(projection)) {\n let inset;\n ({\n type: projection,\n domain,\n inset,\n insetTop = inset !== undefined ? inset : insetTop,\n insetRight = inset !== undefined ? inset : insetRight,\n insetBottom = inset !== undefined ? inset : insetBottom,\n insetLeft = inset !== undefined ? inset : insetLeft,\n clip = clip,\n ...options\n } = projection);\n if (projection == null) return;\n }\n\n // For named projections, retrieve the corresponding projection initializer.\n if (typeof projection !== \"function\") ({type: projection} = namedProjection(projection));\n\n // Compute the frame dimensions and invoke the projection initializer.\n const {width, height, marginLeft, marginRight, marginTop, marginBottom} = dimensions;\n const dx = width - marginLeft - marginRight - insetLeft - insetRight;\n const dy = height - marginTop - marginBottom - insetTop - insetBottom;\n projection = projection?.({width: dx, height: dy, clip, ...options});\n\n // The projection initializer might decide to not use a projection.\n if (projection == null) return;\n clip = maybePostClip(clip, marginLeft, marginTop, width - marginRight, height - marginBottom);\n\n // Translate the origin to the top-left corner, respecting margins and insets.\n let tx = marginLeft + insetLeft;\n let ty = marginTop + insetTop;\n let transform;\n\n // If a domain is specified, fit the projection to the frame.\n if (domain != null) {\n const [[x0, y0], [x1, y1]] = geoPath(projection).bounds(domain);\n const k = Math.min(dx / (x1 - x0), dy / (y1 - y0));\n if (k > 0) {\n tx -= (k * (x0 + x1) - dx) / 2;\n ty -= (k * (y0 + y1) - dy) / 2;\n transform = geoTransform({\n point(x, y) {\n this.stream.point(x * k + tx, y * k + ty);\n }\n });\n } else {\n warn(`Warning: the projection could not be fit to the specified domain; using the default scale.`);\n }\n }\n\n transform ??=\n tx === 0 && ty === 0\n ? identity()\n : geoTransform({\n point(x, y) {\n this.stream.point(x + tx, y + ty);\n }\n });\n\n return {stream: (s) => projection.stream(transform.stream(clip(s)))};\n}\n\nfunction namedProjection(projection) {\n switch (`${projection}`.toLowerCase()) {\n case \"albers-usa\":\n return scaleProjection(geoAlbersUsa, 0.7463, 0.4673);\n case \"albers\":\n return conicProjection(geoAlbers, 0.7463, 0.4673);\n case \"azimuthal-equal-area\":\n return scaleProjection(geoAzimuthalEqualArea, 4, 4);\n case \"azimuthal-equidistant\":\n return scaleProjection(geoAzimuthalEquidistant, tau, tau);\n case \"conic-conformal\":\n return conicProjection(geoConicConformal, tau, tau);\n case \"conic-equal-area\":\n return conicProjection(geoConicEqualArea, 6.1702, 2.9781);\n case \"conic-equidistant\":\n return conicProjection(geoConicEquidistant, 7.312, 3.6282);\n case \"equal-earth\":\n return scaleProjection(geoEqualEarth, 5.4133, 2.6347);\n case \"equirectangular\":\n return scaleProjection(geoEquirectangular, tau, pi);\n case \"gnomonic\":\n return scaleProjection(geoGnomonic, 3.4641, 3.4641);\n case \"identity\":\n return {type: identity};\n case \"reflect-y\":\n return {type: reflectY};\n case \"mercator\":\n return scaleProjection(geoMercator, tau, tau);\n case \"orthographic\":\n return scaleProjection(geoOrthographic, 2, 2);\n case \"stereographic\":\n return scaleProjection(geoStereographic, 2, 2);\n case \"transverse-mercator\":\n return scaleProjection(geoTransverseMercator, tau, tau);\n default:\n throw new Error(`unknown projection type: ${projection}`);\n }\n}\n\nfunction maybePostClip(clip, x1, y1, x2, y2) {\n if (clip === false || clip == null || typeof clip === \"number\") return (s) => s;\n if (clip === true) clip = \"frame\";\n switch (`${clip}`.toLowerCase()) {\n case \"frame\":\n return geoClipRectangle(x1, y1, x2, y2);\n default:\n throw new Error(`unknown projection clip type: ${clip}`);\n }\n}\n\nfunction scaleProjection(createProjection, kx, ky) {\n return {\n type: ({width, height, rotate, precision = 0.15, clip}) => {\n const projection = createProjection();\n if (precision != null) projection.precision?.(precision);\n if (rotate != null) projection.rotate?.(rotate);\n if (typeof clip === \"number\") projection.clipAngle?.(clip);\n projection.scale(Math.min(width / kx, height / ky));\n projection.translate([width / 2, height / 2]);\n return projection;\n },\n aspectRatio: ky / kx\n };\n}\n\nfunction conicProjection(createProjection, kx, ky) {\n const {type, aspectRatio} = scaleProjection(createProjection, kx, ky);\n return {\n type: (options) => {\n const {parallels, domain, width, height} = options;\n const projection = type(options);\n if (parallels != null) {\n projection.parallels(parallels);\n if (domain === undefined) {\n projection.fitSize([width, height], {type: \"Sphere\"});\n }\n }\n return projection;\n },\n aspectRatio\n };\n}\n\nconst identity = constant({stream: (stream) => stream});\n\nconst reflectY = constant(\n geoTransform({\n point(x, y) {\n this.stream.point(x, -y);\n }\n })\n);\n\n// Applies a point-wise projection to the given paired x and y channels.\n// Note: mutates values!\nexport function maybeProject(cx, cy, channels, values, context) {\n const x = channels[cx] && channels[cx].scale === \"x\";\n const y = channels[cy] && channels[cy].scale === \"y\";\n if (x && y) {\n project(cx, cy, values, context.projection);\n } else if (x) {\n throw new Error(`projection requires paired x and y channels; ${cx} is missing ${cy}`);\n } else if (y) {\n throw new Error(`projection requires paired x and y channels; ${cy} is missing ${cx}`);\n }\n}\n\nfunction project(cx, cy, values, projection) {\n const x = values[cx];\n const y = values[cy];\n const n = x.length;\n const X = (values[cx] = new Float64Array(n).fill(NaN));\n const Y = (values[cy] = new Float64Array(n).fill(NaN));\n let i;\n const stream = projection.stream({\n point(x, y) {\n X[i] = x;\n Y[i] = y;\n }\n });\n for (i = 0; i < n; ++i) {\n stream.point(x[i], y[i]);\n }\n}\n\n// When a named projection is specified, we can use its natural aspect ratio to\n// determine a good value for the projection’s height based on the desired\n// width. When we don’t have a way to know, the golden ratio is our best guess.\n// Due to a circular dependency (we need to know the height before we can\n// construct the projection), we have to test the raw projection option rather\n// than the materialized projection; therefore we must be extremely careful that\n// the logic of this function exactly matches Projection above!\nexport function projectionAspectRatio(projection, marks) {\n if (typeof projection?.stream === \"function\") return defaultAspectRatio;\n if (isObject(projection)) projection = projection.type;\n if (projection == null) return hasGeometry(marks) ? defaultAspectRatio : undefined;\n if (typeof projection !== \"function\") {\n const {aspectRatio} = namedProjection(projection);\n if (aspectRatio) return aspectRatio;\n }\n return defaultAspectRatio;\n}\n\n// Extract the (possibly) scaled values for the x and y channels, and apply the\n// projection if any.\nexport function applyPosition(channels, scales, context) {\n const {x, y} = channels;\n let position = {};\n if (x) position.x = x;\n if (y) position.y = y;\n position = valueObject(position, scales);\n if (context.projection) maybeProject(\"x\", \"y\", channels, position, context);\n if (x) position.x = coerceNumbers(position.x);\n if (y) position.y = coerceNumbers(position.y);\n return position;\n}\n\nfunction hasGeometry(marks) {\n for (const mark of marks) if (mark.channels.geometry) return true;\n return false;\n}\n","import {creator, select} from \"d3\";\nimport {createProjection} from \"./projection.js\";\n\nexport function createContext(options = {}, dimensions, className) {\n const {document = typeof window !== \"undefined\" ? window.document : undefined} = options;\n return {document, className, projection: createProjection(options, dimensions)};\n}\n\nexport function create(name, {document}) {\n return select(creator(name).call(document.documentElement));\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","import {format as isoFormat} from \"isoformat\";\nimport {string} from \"./options.js\";\nimport {memoize1} from \"./memoize.js\";\n\nconst numberFormat = memoize1((locale) => {\n return new Intl.NumberFormat(locale);\n});\n\nconst monthFormat = memoize1((locale, month) => {\n return new Intl.DateTimeFormat(locale, {timeZone: \"UTC\", ...(month && {month})});\n});\n\nconst weekdayFormat = memoize1((locale, weekday) => {\n return new Intl.DateTimeFormat(locale, {timeZone: \"UTC\", ...(weekday && {weekday})});\n});\n\nexport function formatNumber(locale = \"en-US\") {\n const format = numberFormat(locale);\n return (i) => (i != null && !isNaN(i) ? format.format(i) : undefined);\n}\n\nexport function formatMonth(locale = \"en-US\", format = \"short\") {\n const fmt = monthFormat(locale, format);\n return (i) => (i != null && !isNaN((i = +new Date(Date.UTC(2000, +i)))) ? fmt.format(i) : undefined);\n}\n\nexport function formatWeekday(locale = \"en-US\", format = \"short\") {\n const fmt = weekdayFormat(locale, format);\n return (i) => (i != null && !isNaN((i = +new Date(Date.UTC(2001, 0, +i)))) ? fmt.format(i) : undefined);\n}\n\nexport function formatIsoDate(date) {\n return isoFormat(date, \"Invalid Date\");\n}\n\nexport function formatAuto(locale = \"en-US\") {\n const number = formatNumber(locale);\n return (v) => (v instanceof Date ? formatIsoDate : typeof v === \"number\" ? number : string)(v);\n}\n\n// TODO When Plot supports a top-level locale option, this should be removed\n// because it lacks context to know which locale to use; formatAuto should be\n// used instead whenever possible.\nexport const formatDefault = formatAuto();\n","export function memoize1(compute) {\n let cacheValue, cacheKeys;\n return (...keys) => {\n if (cacheKeys?.length !== keys.length || cacheKeys.some((k, i) => k !== keys[i])) {\n cacheKeys = keys;\n cacheValue = compute(...keys);\n }\n return cacheValue;\n };\n}\n","import {geoPath, group, namespaces} from \"d3\";\nimport {create} from \"./context.js\";\nimport {defined, nonempty} from \"./defined.js\";\nimport {formatDefault} from \"./format.js\";\nimport {\n string,\n number,\n maybeColorChannel,\n maybeNumberChannel,\n maybeKeyword,\n isNoneish,\n isNone,\n isRound,\n keyof\n} from \"./options.js\";\nimport {warn} from \"./warnings.js\";\n\nexport const offset = (typeof window !== \"undefined\" ? window.devicePixelRatio > 1 : typeof it === \"undefined\") ? 0 : 0.5; // prettier-ignore\n\nlet nextClipId = 0;\n\nfunction getClipId() {\n return `plot-clip-${++nextClipId}`;\n}\n\nexport function styles(\n mark,\n {\n title,\n href,\n ariaLabel: variaLabel,\n ariaDescription,\n ariaHidden,\n target,\n fill,\n fillOpacity,\n stroke,\n strokeWidth,\n strokeOpacity,\n strokeLinejoin,\n strokeLinecap,\n strokeMiterlimit,\n strokeDasharray,\n strokeDashoffset,\n opacity,\n mixBlendMode,\n paintOrder,\n pointerEvents,\n shapeRendering\n },\n {\n ariaLabel: cariaLabel,\n fill: defaultFill = \"currentColor\",\n fillOpacity: defaultFillOpacity,\n stroke: defaultStroke = \"none\",\n strokeOpacity: defaultStrokeOpacity,\n strokeWidth: defaultStrokeWidth,\n strokeLinecap: defaultStrokeLinecap,\n strokeLinejoin: defaultStrokeLinejoin,\n strokeMiterlimit: defaultStrokeMiterlimit,\n paintOrder: defaultPaintOrder\n }\n) {\n // Some marks don’t support fill (e.g., tick and rule).\n if (defaultFill === null) {\n fill = null;\n fillOpacity = null;\n }\n\n // Some marks don’t support stroke (e.g., image).\n if (defaultStroke === null) {\n stroke = null;\n strokeOpacity = null;\n }\n\n // Some marks default to fill with no stroke, while others default to stroke\n // with no fill. For example, bar and area default to fill, while dot and line\n // default to stroke. For marks that fill by default, the default fill only\n // applies if the stroke is (constant) none; if you set a stroke, then the\n // default fill becomes none. Similarly for marks that stroke by stroke, the\n // default stroke only applies if the fill is (constant) none.\n if (isNoneish(defaultFill)) {\n if (!isNoneish(defaultStroke) && !isNoneish(fill)) defaultStroke = \"none\";\n } else {\n if (isNoneish(defaultStroke) && !isNoneish(stroke)) defaultFill = \"none\";\n }\n\n const [vfill, cfill] = maybeColorChannel(fill, defaultFill);\n const [vfillOpacity, cfillOpacity] = maybeNumberChannel(fillOpacity, defaultFillOpacity);\n const [vstroke, cstroke] = maybeColorChannel(stroke, defaultStroke);\n const [vstrokeOpacity, cstrokeOpacity] = maybeNumberChannel(strokeOpacity, defaultStrokeOpacity);\n const [vopacity, copacity] = maybeNumberChannel(opacity);\n\n // For styles that have no effect if there is no stroke, only apply the\n // defaults if the stroke is not the constant none. (If stroke is a channel,\n // then cstroke will be undefined, but there’s still a stroke; hence we don’t\n // use isNoneish here.)\n if (!isNone(cstroke)) {\n if (strokeWidth === undefined) strokeWidth = defaultStrokeWidth;\n if (strokeLinecap === undefined) strokeLinecap = defaultStrokeLinecap;\n if (strokeLinejoin === undefined) strokeLinejoin = defaultStrokeLinejoin;\n\n // The default stroke miterlimit need not be applied if the current stroke\n // is the constant round; this only has effect on miter joins.\n if (strokeMiterlimit === undefined && !isRound(strokeLinejoin)) strokeMiterlimit = defaultStrokeMiterlimit;\n\n // The paint order only takes effect if there is both a fill and a stroke\n // (at least if we ignore markers, which no built-in marks currently use).\n if (!isNone(cfill) && paintOrder === undefined) paintOrder = defaultPaintOrder;\n }\n\n const [vstrokeWidth, cstrokeWidth] = maybeNumberChannel(strokeWidth);\n\n // Some marks don’t support fill (e.g., tick and rule).\n if (defaultFill !== null) {\n mark.fill = impliedString(cfill, \"currentColor\");\n mark.fillOpacity = impliedNumber(cfillOpacity, 1);\n }\n\n // Some marks don’t support stroke (e.g., image).\n if (defaultStroke !== null) {\n mark.stroke = impliedString(cstroke, \"none\");\n mark.strokeWidth = impliedNumber(cstrokeWidth, 1);\n mark.strokeOpacity = impliedNumber(cstrokeOpacity, 1);\n mark.strokeLinejoin = impliedString(strokeLinejoin, \"miter\");\n mark.strokeLinecap = impliedString(strokeLinecap, \"butt\");\n mark.strokeMiterlimit = impliedNumber(strokeMiterlimit, 4);\n mark.strokeDasharray = impliedString(strokeDasharray, \"none\");\n mark.strokeDashoffset = impliedString(strokeDashoffset, \"0\");\n }\n\n mark.target = string(target);\n mark.ariaLabel = string(cariaLabel);\n mark.ariaDescription = string(ariaDescription);\n mark.ariaHidden = string(ariaHidden);\n mark.opacity = impliedNumber(copacity, 1);\n mark.mixBlendMode = impliedString(mixBlendMode, \"normal\");\n mark.paintOrder = impliedString(paintOrder, \"normal\");\n mark.pointerEvents = impliedString(pointerEvents, \"auto\");\n mark.shapeRendering = impliedString(shapeRendering, \"auto\");\n\n return {\n title: {value: title, optional: true},\n href: {value: href, optional: true},\n ariaLabel: {value: variaLabel, optional: true},\n fill: {value: vfill, scale: \"auto\", optional: true},\n fillOpacity: {value: vfillOpacity, scale: \"auto\", optional: true},\n stroke: {value: vstroke, scale: \"auto\", optional: true},\n strokeOpacity: {value: vstrokeOpacity, scale: \"auto\", optional: true},\n strokeWidth: {value: vstrokeWidth, optional: true},\n opacity: {value: vopacity, scale: \"auto\", optional: true}\n };\n}\n\n// Applies the specified titles via selection.call.\nexport function applyTitle(selection, L) {\n if (L)\n selection\n .filter((i) => nonempty(L[i]))\n .append(\"title\")\n .call(applyText, L);\n}\n\n// Like applyTitle, but for grouped data (lines, areas).\nexport function applyTitleGroup(selection, L) {\n if (L)\n selection\n .filter(([i]) => nonempty(L[i]))\n .append(\"title\")\n .call(applyTextGroup, L);\n}\n\nexport function applyText(selection, T) {\n if (T) selection.text((i) => formatDefault(T[i]));\n}\n\nexport function applyTextGroup(selection, T) {\n if (T) selection.text(([i]) => formatDefault(T[i]));\n}\n\nexport function applyChannelStyles(\n selection,\n {target},\n {\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n }\n) {\n if (AL) applyAttr(selection, \"aria-label\", (i) => AL[i]);\n if (F) applyAttr(selection, \"fill\", (i) => F[i]);\n if (FO) applyAttr(selection, \"fill-opacity\", (i) => FO[i]);\n if (S) applyAttr(selection, \"stroke\", (i) => S[i]);\n if (SO) applyAttr(selection, \"stroke-opacity\", (i) => SO[i]);\n if (SW) applyAttr(selection, \"stroke-width\", (i) => SW[i]);\n if (O) applyAttr(selection, \"opacity\", (i) => O[i]);\n if (H) applyHref(selection, (i) => H[i], target);\n applyTitle(selection, T);\n}\n\nexport function applyGroupedChannelStyles(\n selection,\n {target},\n {\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n }\n) {\n if (AL) applyAttr(selection, \"aria-label\", ([i]) => AL[i]);\n if (F) applyAttr(selection, \"fill\", ([i]) => F[i]);\n if (FO) applyAttr(selection, \"fill-opacity\", ([i]) => FO[i]);\n if (S) applyAttr(selection, \"stroke\", ([i]) => S[i]);\n if (SO) applyAttr(selection, \"stroke-opacity\", ([i]) => SO[i]);\n if (SW) applyAttr(selection, \"stroke-width\", ([i]) => SW[i]);\n if (O) applyAttr(selection, \"opacity\", ([i]) => O[i]);\n if (H) applyHref(selection, ([i]) => H[i], target);\n applyTitleGroup(selection, T);\n}\n\nfunction groupAesthetics({\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n}) {\n return [AL, T, F, FO, S, SO, SW, O, H].filter((c) => c !== undefined);\n}\n\nexport function groupZ(I, Z, z) {\n const G = group(I, (i) => Z[i]);\n if (z === undefined && G.size > I.length >> 1) {\n warn(\n `Warning: the implicit z channel has high cardinality. This may occur when the fill or stroke channel is associated with quantitative data rather than ordinal or categorical data. You can suppress this warning by setting the z option explicitly; if this data represents a single series, set z to null.`\n );\n }\n return G.values();\n}\n\nexport function* groupIndex(I, position, {z}, channels) {\n const {z: Z} = channels; // group channel\n const A = groupAesthetics(channels); // aesthetic channels\n const C = [...position, ...A]; // all channels\n\n // Group the current index by Z (if any).\n for (const G of Z ? groupZ(I, Z, z) : [I]) {\n let Ag; // the A-values (aesthetics) of the current group, if any\n let Gg; // the current group index (a subset of G, and I), if any\n out: for (const i of G) {\n // If any channel has an undefined value for this index, skip it.\n for (const c of C) {\n if (!defined(c[i])) {\n if (Gg) Gg.push(-1);\n continue out;\n }\n }\n\n // Otherwise, if this is a new group, record the aesthetics for this\n // group. Yield the current group and start a new one.\n if (Ag === undefined) {\n if (Gg) yield Gg;\n (Ag = A.map((c) => keyof(c[i]))), (Gg = [i]);\n continue;\n }\n\n // Otherwise, add the current index to the current group. Then, if any of\n // the aesthetics don’t match the current group, yield the current group\n // and start a new group of the current index.\n Gg.push(i);\n for (let j = 0; j < A.length; ++j) {\n const k = keyof(A[j][i]);\n if (k !== Ag[j]) {\n yield Gg;\n (Ag = A.map((c) => keyof(c[i]))), (Gg = [i]);\n continue out;\n }\n }\n }\n\n // Yield the current group, if any.\n if (Gg) yield Gg;\n }\n}\n\n// TODO Accept other types of clips (paths, urls, x, y, other marks…)?\n// https://github.com/observablehq/plot/issues/181\nexport function maybeClip(clip) {\n if (clip === true) clip = \"frame\";\n else if (clip === false) clip = null;\n return maybeKeyword(clip, \"clip\", [\"frame\", \"sphere\"]);\n}\n\n// Note: may mutate selection.node!\nfunction applyClip(selection, mark, dimensions, context) {\n let clipUrl;\n switch (mark.clip) {\n case \"frame\": {\n const {width, height, marginLeft, marginRight, marginTop, marginBottom} = dimensions;\n const id = getClipId();\n clipUrl = `url(#${id})`;\n selection = create(\"svg:g\", context)\n .call((g) =>\n g\n .append(\"svg:clipPath\")\n .attr(\"id\", id)\n .append(\"rect\")\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop)\n .attr(\"width\", width - marginRight - marginLeft)\n .attr(\"height\", height - marginTop - marginBottom)\n )\n .each(function () {\n this.appendChild(selection.node());\n selection.node = () => this; // Note: mutation!\n });\n break;\n }\n case \"sphere\": {\n const {projection} = context;\n if (!projection) throw new Error(`the \"sphere\" clip option requires a projection`);\n const id = getClipId();\n clipUrl = `url(#${id})`;\n selection\n .append(\"clipPath\")\n .attr(\"id\", id)\n .append(\"path\")\n .attr(\"d\", geoPath(projection)({type: \"Sphere\"}));\n break;\n }\n }\n // Here we’re careful to apply the ARIA attributes to the outer G element when\n // clipping is applied, and to apply the ARIA attributes before any other\n // attributes (for readability).\n applyAttr(selection, \"aria-label\", mark.ariaLabel);\n applyAttr(selection, \"aria-description\", mark.ariaDescription);\n applyAttr(selection, \"aria-hidden\", mark.ariaHidden);\n applyAttr(selection, \"clip-path\", clipUrl);\n}\n\n// Note: may mutate selection.node!\nexport function applyIndirectStyles(selection, mark, dimensions, context) {\n applyClip(selection, mark, dimensions, context);\n applyAttr(selection, \"fill\", mark.fill);\n applyAttr(selection, \"fill-opacity\", mark.fillOpacity);\n applyAttr(selection, \"stroke\", mark.stroke);\n applyAttr(selection, \"stroke-width\", mark.strokeWidth);\n applyAttr(selection, \"stroke-opacity\", mark.strokeOpacity);\n applyAttr(selection, \"stroke-linejoin\", mark.strokeLinejoin);\n applyAttr(selection, \"stroke-linecap\", mark.strokeLinecap);\n applyAttr(selection, \"stroke-miterlimit\", mark.strokeMiterlimit);\n applyAttr(selection, \"stroke-dasharray\", mark.strokeDasharray);\n applyAttr(selection, \"stroke-dashoffset\", mark.strokeDashoffset);\n applyAttr(selection, \"shape-rendering\", mark.shapeRendering);\n applyAttr(selection, \"paint-order\", mark.paintOrder);\n applyAttr(selection, \"pointer-events\", mark.pointerEvents);\n}\n\nexport function applyDirectStyles(selection, mark) {\n applyStyle(selection, \"mix-blend-mode\", mark.mixBlendMode);\n applyAttr(selection, \"opacity\", mark.opacity);\n}\n\nfunction applyHref(selection, href, target) {\n selection.each(function (i) {\n const h = href(i);\n if (h != null) {\n const a = this.ownerDocument.createElementNS(namespaces.svg, \"a\");\n a.setAttribute(\"fill\", \"inherit\");\n a.setAttributeNS(namespaces.xlink, \"href\", h);\n if (target != null) a.setAttribute(\"target\", target);\n this.parentNode.insertBefore(a, this).appendChild(this);\n }\n });\n}\n\nexport function applyAttr(selection, name, value) {\n if (value != null) selection.attr(name, value);\n}\n\nexport function applyStyle(selection, name, value) {\n if (value != null) selection.style(name, value);\n}\n\nexport function applyTransform(selection, mark, {x, y}, tx = offset, ty = offset) {\n tx += mark.dx;\n ty += mark.dy;\n if (x?.bandwidth) tx += x.bandwidth() / 2;\n if (y?.bandwidth) ty += y.bandwidth() / 2;\n if (tx || ty) selection.attr(\"transform\", `translate(${tx},${ty})`);\n}\n\nexport function impliedString(value, impliedValue) {\n if ((value = string(value)) !== impliedValue) return value;\n}\n\nexport function impliedNumber(value, impliedValue) {\n if ((value = number(value)) !== impliedValue) return value;\n}\n\n// https://www.w3.org/TR/CSS21/grammar.html\nconst validClassName =\n /^-?([_a-z]|[\\240-\\377]|\\\\[0-9a-f]{1,6}(\\r\\n|[ \\t\\r\\n\\f])?|\\\\[^\\r\\n\\f0-9a-f])([_a-z0-9-]|[\\240-\\377]|\\\\[0-9a-f]{1,6}(\\r\\n|[ \\t\\r\\n\\f])?|\\\\[^\\r\\n\\f0-9a-f])*$/i;\n\nexport function maybeClassName(name) {\n // The default should be changed whenever the default styles are changed, so\n // as to avoid conflict when multiple versions of Plot are on the page.\n if (name === undefined) return \"plot-d6a7b5\";\n name = `${name}`;\n if (!validClassName.test(name)) throw new Error(`invalid class name: ${name}`);\n return name;\n}\n\nexport function applyInlineStyles(selection, style) {\n if (typeof style === \"string\") {\n selection.property(\"style\", style);\n } else if (style != null) {\n for (const element of selection) {\n Object.assign(element.style, style);\n }\n }\n}\n\nexport function applyFrameAnchor({frameAnchor}, {width, height, marginTop, marginRight, marginBottom, marginLeft}) {\n return [\n /left$/.test(frameAnchor)\n ? marginLeft\n : /right$/.test(frameAnchor)\n ? width - marginRight\n : (marginLeft + width - marginRight) / 2,\n /^top/.test(frameAnchor)\n ? marginTop\n : /^bottom/.test(frameAnchor)\n ? height - marginBottom\n : (marginTop + height - marginBottom) / 2\n ];\n}\n","import {format, utcFormat} from \"d3\";\nimport {formatIsoDate} from \"./format.js\";\nimport {constant, isTemporal, string} from \"./options.js\";\nimport {isOrdinalScale} from \"./scales.js\";\n\nexport function inferFontVariant(scale) {\n return isOrdinalScale(scale) && scale.interval === undefined ? undefined : \"tabular-nums\";\n}\n\n// D3 doesn’t provide a tick format for ordinal scales; we want shorthand when\n// an ordinal domain is numbers or dates, and we want null to mean the empty\n// string, not the default identity format. TODO Remove this in favor of the\n// axis mark’s inferTickFormat.\nexport function maybeAutoTickFormat(tickFormat, domain) {\n return tickFormat === undefined\n ? isTemporal(domain)\n ? formatIsoDate\n : string\n : typeof tickFormat === \"function\"\n ? tickFormat\n : (typeof tickFormat === \"string\" ? (isTemporal(domain) ? utcFormat : format) : constant)(tickFormat);\n}\n","import {pathRound as path} from \"d3\";\nimport {inferFontVariant, maybeAutoTickFormat} from \"../axes.js\";\nimport {createContext, create} from \"../context.js\";\nimport {isNoneish, maybeColorChannel, maybeNumberChannel} from \"../options.js\";\nimport {isOrdinalScale, isThresholdScale} from \"../scales.js\";\nimport {applyInlineStyles, impliedString, maybeClassName} from \"../style.js\";\n\nfunction maybeScale(scale, key) {\n if (key == null) return key;\n const s = scale(key);\n if (!s) throw new Error(`scale not found: ${key}`);\n return s;\n}\n\nexport function legendSwatches(color, {opacity, ...options} = {}) {\n if (!isOrdinalScale(color) && !isThresholdScale(color))\n throw new Error(`swatches legend requires ordinal or threshold color scale (not ${color.type})`);\n return legendItems(color, options, (selection, scale, width, height) =>\n selection\n .append(\"svg\")\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"fill\", scale.scale)\n .attr(\"fill-opacity\", maybeNumberChannel(opacity)[1])\n .append(\"rect\")\n .attr(\"width\", \"100%\")\n .attr(\"height\", \"100%\")\n );\n}\n\nexport function legendSymbols(\n symbol,\n {\n fill = symbol.hint?.fill !== undefined ? symbol.hint.fill : \"none\",\n fillOpacity = 1,\n stroke = symbol.hint?.stroke !== undefined ? symbol.hint.stroke : isNoneish(fill) ? \"currentColor\" : \"none\",\n strokeOpacity = 1,\n strokeWidth = 1.5,\n r = 4.5,\n ...options\n } = {},\n scale\n) {\n const [vf, cf] = maybeColorChannel(fill);\n const [vs, cs] = maybeColorChannel(stroke);\n const sf = maybeScale(scale, vf);\n const ss = maybeScale(scale, vs);\n const size = r * r * Math.PI;\n fillOpacity = maybeNumberChannel(fillOpacity)[1];\n strokeOpacity = maybeNumberChannel(strokeOpacity)[1];\n strokeWidth = maybeNumberChannel(strokeWidth)[1];\n return legendItems(symbol, options, (selection, scale, width, height) =>\n selection\n .append(\"svg\")\n .attr(\"viewBox\", \"-8 -8 16 16\")\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"fill\", vf === \"color\" ? (d) => sf.scale(d) : cf)\n .attr(\"fill-opacity\", fillOpacity)\n .attr(\"stroke\", vs === \"color\" ? (d) => ss.scale(d) : cs)\n .attr(\"stroke-opacity\", strokeOpacity)\n .attr(\"stroke-width\", strokeWidth)\n .append(\"path\")\n .attr(\"d\", (d) => {\n const p = path();\n symbol.scale(d).draw(p, size);\n return p;\n })\n );\n}\n\nfunction legendItems(scale, options = {}, swatch) {\n let {\n columns,\n tickFormat,\n fontVariant = inferFontVariant(scale),\n // TODO label,\n swatchSize = 15,\n swatchWidth = swatchSize,\n swatchHeight = swatchSize,\n marginLeft = 0,\n className,\n style,\n width\n } = options;\n const context = createContext(options);\n className = maybeClassName(className);\n tickFormat = maybeAutoTickFormat(tickFormat, scale.domain);\n\n const swatches = create(\"div\", context).attr(\n \"class\",\n `${className}-swatches ${className}-swatches-${columns != null ? \"columns\" : \"wrap\"}`\n );\n\n let extraStyle;\n\n if (columns != null) {\n extraStyle = `.${className}-swatches-columns .${className}-swatch {\n display: flex;\n align-items: center;\n break-inside: avoid;\n padding-bottom: 1px;\n}\n.${className}-swatches-columns .${className}-swatch::before {\n flex-shrink: 0;\n}\n.${className}-swatches-columns .${className}-swatch-label {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}`;\n\n swatches\n .style(\"columns\", columns)\n .selectAll()\n .data(scale.domain)\n .enter()\n .append(\"div\")\n .attr(\"class\", `${className}-swatch`)\n .call(swatch, scale, swatchWidth, swatchHeight)\n .call((item) =>\n item.append(\"div\").attr(\"class\", `${className}-swatch-label`).attr(\"title\", tickFormat).text(tickFormat)\n );\n } else {\n extraStyle = `.${className}-swatches-wrap {\n display: flex;\n align-items: center;\n min-height: 33px;\n flex-wrap: wrap;\n}\n.${className}-swatches-wrap .${className}-swatch {\n display: inline-flex;\n align-items: center;\n margin-right: 1em;\n}`;\n\n swatches\n .selectAll()\n .data(scale.domain)\n .enter()\n .append(\"span\")\n .attr(\"class\", `${className}-swatch`)\n .call(swatch, scale, swatchWidth, swatchHeight)\n .append(function () {\n return this.ownerDocument.createTextNode(tickFormat.apply(this, arguments));\n });\n }\n\n return swatches\n .call((div) =>\n div.insert(\"style\", \"*\").text(\n `.${className}-swatches {\n font-family: system-ui, sans-serif;\n font-size: 10px;\n margin-bottom: 0.5em;\n}\n.${className}-swatch > svg {\n margin-right: 0.5em;\n overflow: visible;\n}\n${extraStyle}`\n )\n )\n .style(\"margin-left\", marginLeft ? `${+marginLeft}px` : null)\n .style(\"width\", width === undefined ? null : `${+width}px`)\n .style(\"font-variant\", impliedString(fontVariant, \"normal\"))\n .call(applyInlineStyles, style)\n .node();\n}\n","import {rgb} from \"d3\";\nimport {createContext} from \"./context.js\";\nimport {legendRamp} from \"./legends/ramp.js\";\nimport {legendSwatches, legendSymbols} from \"./legends/swatches.js\";\nimport {inherit, isScaleOptions} from \"./options.js\";\nimport {normalizeScale} from \"./scales.js\";\n\nconst legendRegistry = new Map([\n [\"symbol\", legendSymbols],\n [\"color\", legendColor],\n [\"opacity\", legendOpacity]\n]);\n\nexport function legend(options = {}) {\n for (const [key, value] of legendRegistry) {\n const scale = options[key];\n if (isScaleOptions(scale)) {\n // e.g., ignore {color: \"red\"}\n const context = createContext(options);\n let hint;\n // For symbol legends, pass a hint to the symbol scale.\n if (key === \"symbol\") {\n const {fill, stroke = fill === undefined && isScaleOptions(options.color) ? \"color\" : undefined} = options;\n hint = {fill, stroke};\n }\n return value(normalizeScale(key, scale, hint), legendOptions(context, scale, options), (key) =>\n isScaleOptions(options[key]) ? normalizeScale(key, options[key]) : null\n );\n }\n }\n throw new Error(\"unknown legend type; no scale found\");\n}\n\nexport function exposeLegends(scales, context, defaults = {}) {\n return (key, options) => {\n if (!legendRegistry.has(key)) throw new Error(`unknown legend type: ${key}`);\n if (!(key in scales)) return;\n return legendRegistry.get(key)(scales[key], legendOptions(context, defaults[key], options), (key) => scales[key]);\n };\n}\n\nfunction legendOptions({className, ...context}, {label, ticks, tickFormat} = {}, options) {\n return inherit(options, {className, ...context}, {label, ticks, tickFormat});\n}\n\nfunction legendColor(color, {legend = true, ...options}) {\n if (legend === true) legend = color.type === \"ordinal\" ? \"swatches\" : \"ramp\";\n if (color.domain === undefined) return;\n switch (`${legend}`.toLowerCase()) {\n case \"swatches\":\n return legendSwatches(color, options);\n case \"ramp\":\n return legendRamp(color, options);\n default:\n throw new Error(`unknown legend type: ${legend}`);\n }\n}\n\nfunction legendOpacity({type, interpolate, ...scale}, {legend = true, color = rgb(0, 0, 0), ...options}) {\n if (!interpolate) throw new Error(`${type} opacity scales are not supported`);\n if (legend === true) legend = \"ramp\";\n if (`${legend}`.toLowerCase() !== \"ramp\") throw new Error(`${legend} opacity legends are not supported`);\n return legendColor({type, ...scale, interpolate: interpolateOpacity(color)}, {legend, ...options});\n}\n\nfunction interpolateOpacity(color) {\n const {r, g, b} = rgb(color) || rgb(0, 0, 0); // treat invalid color as black\n return (t) => `rgba(${r},${g},${b},${t})`;\n}\n\nexport function createLegends(scales, context, options) {\n const legends = [];\n for (const [key, value] of legendRegistry) {\n const o = options[key];\n if (o?.legend && key in scales) {\n const legend = value(scales[key], legendOptions(context, scales[key], o), (key) => scales[key]);\n if (legend != null) legends.push(legend);\n }\n }\n return legends;\n}\n","import {quantize, interpolateNumber, piecewise, format, scaleBand, scaleLinear, axisBottom} from \"d3\";\nimport {inferFontVariant} from \"../axes.js\";\nimport {createContext, create} from \"../context.js\";\nimport {map, maybeNumberChannel} from \"../options.js\";\nimport {interpolatePiecewise} from \"../scales/quantitative.js\";\nimport {applyInlineStyles, impliedString, maybeClassName} from \"../style.js\";\n\nexport function legendRamp(color, options) {\n let {\n label = color.label,\n tickSize = 6,\n width = 240,\n height = 44 + tickSize,\n marginTop = 18,\n marginRight = 0,\n marginBottom = 16 + tickSize,\n marginLeft = 0,\n style,\n ticks = (width - marginLeft - marginRight) / 64,\n tickFormat,\n fontVariant = inferFontVariant(color),\n round = true,\n opacity,\n className\n } = options;\n const context = createContext(options);\n className = maybeClassName(className);\n opacity = maybeNumberChannel(opacity)[1];\n if (tickFormat === null) tickFormat = () => null;\n\n const svg = create(\"svg\", context)\n .attr(\"class\", `${className}-ramp`)\n .attr(\"font-family\", \"system-ui, sans-serif\")\n .attr(\"font-size\", 10)\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"viewBox\", `0 0 ${width} ${height}`)\n .call((svg) =>\n // Warning: if you edit this, change defaultClassName.\n svg.append(\"style\").text(\n `.${className}-ramp {\n display: block;\n background: white;\n height: auto;\n height: intrinsic;\n max-width: 100%;\n overflow: visible;\n}\n.${className}-ramp text {\n white-space: pre;\n}`\n )\n )\n .call(applyInlineStyles, style);\n\n let tickAdjust = (g) => g.selectAll(\".tick line\").attr(\"y1\", marginTop + marginBottom - height);\n\n let x;\n\n // Some D3 scales use scale.interpolate, some scale.interpolator, and some\n // scale.round; this normalizes the API so it works with all scale types.\n const applyRange = round ? (x, range) => x.rangeRound(range) : (x, range) => x.range(range);\n\n const {type, domain, range, interpolate, scale, pivot} = color;\n\n // Continuous\n if (interpolate) {\n // Often interpolate is a “fixed” interpolator on the [0, 1] interval, as\n // with a built-in color scheme, but sometimes it is a function that takes\n // two arguments and is used in conjunction with the range.\n const interpolator =\n range === undefined\n ? interpolate\n : piecewise(interpolate.length === 1 ? interpolatePiecewise(interpolate) : interpolate, range);\n\n // Construct a D3 scale of the same type, but with a range that evenly\n // divides the horizontal extent of the legend. (In the common case, the\n // domain.length is two, and so the range is simply the extent.) For a\n // diverging scale, we need an extra point in the range for the pivot such\n // that the pivot is always drawn in the middle.\n x = applyRange(\n scale.copy(),\n quantize(\n interpolateNumber(marginLeft, width - marginRight),\n Math.min(domain.length + (pivot !== undefined), range === undefined ? Infinity : range.length)\n )\n );\n\n // Construct a 256×1 canvas, filling each pixel using the interpolator.\n const n = 256;\n const canvas = context.document.createElement(\"canvas\");\n canvas.width = n;\n canvas.height = 1;\n const context2 = canvas.getContext(\"2d\");\n for (let i = 0, j = n - 1; i < n; ++i) {\n context2.fillStyle = interpolator(i / j);\n context2.fillRect(i, 0, 1, 1);\n }\n\n svg\n .append(\"image\")\n .attr(\"opacity\", opacity)\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop)\n .attr(\"width\", width - marginLeft - marginRight)\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"preserveAspectRatio\", \"none\")\n .attr(\"xlink:href\", canvas.toDataURL());\n }\n\n // Threshold\n else if (type === \"threshold\") {\n const thresholds = domain;\n\n const thresholdFormat =\n tickFormat === undefined ? (d) => d : typeof tickFormat === \"string\" ? format(tickFormat) : tickFormat;\n\n // Construct a linear scale with evenly-spaced ticks for each of the\n // thresholds; the domain extends one beyond the threshold extent.\n x = applyRange(scaleLinear().domain([-1, range.length - 1]), [marginLeft, width - marginRight]);\n\n svg\n .append(\"g\")\n .attr(\"fill-opacity\", opacity)\n .selectAll()\n .data(range)\n .enter()\n .append(\"rect\")\n .attr(\"x\", (d, i) => x(i - 1))\n .attr(\"y\", marginTop)\n .attr(\"width\", (d, i) => x(i) - x(i - 1))\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"fill\", (d) => d);\n\n ticks = map(thresholds, (_, i) => i);\n tickFormat = (i) => thresholdFormat(thresholds[i], i);\n }\n\n // Ordinal (hopefully!)\n else {\n x = applyRange(scaleBand().domain(domain), [marginLeft, width - marginRight]);\n\n svg\n .append(\"g\")\n .attr(\"fill-opacity\", opacity)\n .selectAll()\n .data(domain)\n .enter()\n .append(\"rect\")\n .attr(\"x\", x)\n .attr(\"y\", marginTop)\n .attr(\"width\", Math.max(0, x.bandwidth() - 1))\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"fill\", scale);\n\n tickAdjust = () => {};\n }\n\n svg\n .append(\"g\")\n .attr(\"transform\", `translate(0,${height - marginBottom})`)\n .call(\n axisBottom(x)\n .ticks(Array.isArray(ticks) ? null : ticks, typeof tickFormat === \"string\" ? tickFormat : undefined)\n .tickFormat(typeof tickFormat === \"function\" ? tickFormat : undefined)\n .tickSize(tickSize)\n .tickValues(Array.isArray(ticks) ? ticks : null)\n )\n .attr(\"font-size\", null)\n .attr(\"font-family\", null)\n .attr(\"font-variant\", impliedString(fontVariant, \"normal\"))\n .call(tickAdjust)\n .call((g) => g.select(\".domain\").remove());\n\n if (label !== undefined) {\n svg\n .append(\"text\")\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop - 6)\n .attr(\"fill\", \"currentColor\") // TODO move to stylesheet?\n .attr(\"font-weight\", \"bold\")\n .text(label);\n }\n\n return svg.node();\n}\n","import { select } from 'd3-selection';\nimport { legend } from '@observablehq/plot';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\n\ninterface LegendOptions extends PluginOptions {\n enabled: boolean;\n itemSelector: string | null;\n label: string | null;\n width: number;\n}\n\nconst DEFAULT_SELECTOR = '#ch-plugin-legend';\n\nconst defaultOptions: LegendOptions = {\n // Whether to display the legend\n enabled: true,\n\n itemSelector: null,\n\n label: null,\n\n width: 130,\n};\n\nexport default class Legend implements IPlugin {\n name = 'Legend';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: LegendOptions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n }\n\n paint(): Promise {\n const scaleOptions = this.calendar.options.options.scale;\n const { enabled, itemSelector } = this.options;\n\n if (!enabled || (itemSelector && select(itemSelector).empty())) {\n return this.destroy();\n }\n\n this.shown = true;\n\n this.root = select(\n itemSelector || this.calendar.options.options.itemSelector,\n );\n\n if (this.root.select(DEFAULT_SELECTOR).empty()) {\n this.root = this.root.append('div').attr('id', DEFAULT_SELECTOR.slice(1));\n } else {\n this.root = this.root.select(DEFAULT_SELECTOR);\n }\n\n // @ts-ignore\n const node = legend({\n ...scaleOptions,\n ...this.options,\n });\n\n this.root.selectAll('*').remove();\n this.root.append(() => node);\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","hiddenKeys","NATIVE_WEAK_MAP","sharedKey","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","require$$6","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toLength","lengthOfArrayLike","obj","toAbsoluteIndex","index","integer","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","SPECIES","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","setToStringTag","TAG","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","format","date","fallback","Date","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","year","getUTCFullYear","pad","getUTCMonth","getUTCDate","width","padStart","re","parse","timeIntervals","Map","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","every","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","interval","Error","maybeUtcInterval","TypedArray","getPrototypeOf","Uint8Array","objectToString","constant","coerceNumbers","map","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","maybeColorChannel","defaultValue","trim","startsWith","endsWith","color","isColor","maybeNumberChannel","arrayify","option","isScaleOptions","maybeInterval","isInteger","abs","d","offset","range","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","isNoneish","isNone","orderof","first","last","descending","position","radius","opacity","registry","sqrt4_3","sqrt","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","draw","context","size","rx","PI","ry","hy","moveTo","lineTo","closePath","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","pi","tau","createProjection","projection","inset","globalInset","insetTop","insetRight","insetBottom","insetLeft","dimensions","stream","clip","scaleProjection","geoAlbersUsa","conicProjection","geoAlbers","geoAzimuthalEqualArea","geoAzimuthalEquidistant","geoConicConformal","geoConicEqualArea","geoConicEquidistant","geoEqualEarth","geoEquirectangular","geoGnomonic","identity","reflectY","geoMercator","geoOrthographic","geoStereographic","geoTransverseMercator","namedProjection","height","marginLeft","marginRight","marginTop","marginBottom","dx","dy","x1","y1","x2","y2","s","geoClipRectangle","maybePostClip","transform","tx","ty","x0","y0","geoPath","bounds","k","geoTransform","point","y","kx","ky","rotate","precision","clipAngle","scale","translate","aspectRatio","parallels","fitSize","createContext","className","create","select","creator","documentElement","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","t","reverse","ordinalScheme","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","channels","nice","clamp","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","find","h25","quantile","h50","median","inferLogDomain","v","inferQuantileDomain","createScaleD","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","fill","inferHint","stroke","inferSymbolHint","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","sort","candidate","normalizeScale","typeProjection","some","asOrdinalType","filter","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","splice","pop","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","padding","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","numberFormat","compute","cacheValue","cacheKeys","memoize1","locale","Intl","NumberFormat","formatIsoDate","isoFormat","impliedString","impliedValue","formatNumber","formatAuto","validClassName","maybeClassName","applyInlineStyles","selection","style","property","element","inferFontVariant","maybeScale","legendItems","swatch","columns","tickFormat","fontVariant","swatchSize","swatchWidth","swatchHeight","utcFormat","maybeAutoTickFormat","swatches","attr","extraStyle","selectAll","append","text","ownerDocument","div","insert","legendRegistry","fillOpacity","strokeOpacity","strokeWidth","vf","cf","vs","cs","sf","ss","p","path","legendColor","legend","rgb","interpolateOpacity","legendOptions","label","rest","o","defaults","inherit","isThresholdScale","legendSwatches","tickSize","svg","tickAdjust","g","applyRange","rangeRound","copy","Infinity","canvas","context2","getContext","fillStyle","fillRect","toDataURL","thresholdFormat","bandwidth","axisBottom","isArray","tickValues","remove","legendRamp","DEFAULT_SELECTOR","defaultOptions","enabled","itemSelector","Legend","calendar","_classCallCheck","root","shown","pluginOptions","scaleOptions","_this$options","destroy"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140]} \ No newline at end of file +{"version":3,"file":"Legend.min.esm.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/@observablehq/plot/src/defined.js","../../node_modules/isoformat/src/format.js","../../node_modules/isoformat/src/parse.js","../../node_modules/@observablehq/plot/src/time.js","../../node_modules/@observablehq/plot/src/options.js","../../node_modules/@observablehq/plot/src/scales/index.js","../../node_modules/@observablehq/plot/src/symbol.js","../../node_modules/@observablehq/plot/src/warnings.js","../../node_modules/@observablehq/plot/src/projection.js","../../node_modules/@observablehq/plot/src/context.js","../../node_modules/@observablehq/plot/src/scales/schemes.js","../../node_modules/@observablehq/plot/src/scales/quantitative.js","../../node_modules/@observablehq/plot/src/scales/diverging.js","../../node_modules/@observablehq/plot/src/scales/temporal.js","../../node_modules/@observablehq/plot/src/scales/ordinal.js","../../node_modules/@observablehq/plot/src/scales.js","../../node_modules/@observablehq/plot/src/format.js","../../node_modules/@observablehq/plot/src/memoize.js","../../node_modules/@observablehq/plot/src/style.js","../../node_modules/@observablehq/plot/src/axes.js","../../node_modules/@observablehq/plot/src/legends/swatches.js","../../node_modules/@observablehq/plot/src/legends.js","../../node_modules/@observablehq/plot/src/legends/ramp.js","../../../src/plugins/Legend.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","export default function format(date, fallback) {\n if (!(date instanceof Date)) date = new Date(+date);\n if (isNaN(date)) return typeof fallback === \"function\" ? fallback(date) : fallback;\n const hours = date.getUTCHours();\n const minutes = date.getUTCMinutes();\n const seconds = date.getUTCSeconds();\n const milliseconds = date.getUTCMilliseconds();\n return `${formatYear(date.getUTCFullYear(), 4)}-${pad(date.getUTCMonth() + 1, 2)}-${pad(date.getUTCDate(), 2)}${\n hours || minutes || seconds || milliseconds ? `T${pad(hours, 2)}:${pad(minutes, 2)}${\n seconds || milliseconds ? `:${pad(seconds, 2)}${\n milliseconds ? `.${pad(milliseconds, 3)}` : ``\n }` : ``\n }Z` : ``\n }`;\n}\n\nfunction formatYear(year) {\n return year < 0 ? `-${pad(-year, 6)}`\n : year > 9999 ? `+${pad(year, 6)}`\n : pad(year, 4);\n}\n\nfunction pad(value, width) {\n return `${value}`.padStart(width, \"0\");\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n geoAlbers,\n geoAlbersUsa,\n geoAzimuthalEqualArea,\n geoAzimuthalEquidistant,\n geoClipRectangle,\n geoConicConformal,\n geoConicEqualArea,\n geoConicEquidistant,\n geoEqualEarth,\n geoEquirectangular,\n geoGnomonic,\n geoMercator,\n geoOrthographic,\n geoPath,\n geoStereographic,\n geoTransform,\n geoTransverseMercator\n} from \"d3\";\nimport {valueObject} from \"./channel.js\";\nimport {coerceNumbers, constant, isObject} from \"./options.js\";\nimport {warn} from \"./warnings.js\";\n\nconst pi = Math.PI;\nconst tau = 2 * pi;\nconst defaultAspectRatio = 0.618;\n\nexport function createProjection(\n {\n projection,\n inset: globalInset = 0,\n insetTop = globalInset,\n insetRight = globalInset,\n insetBottom = globalInset,\n insetLeft = globalInset\n } = {},\n dimensions\n) {\n if (projection == null) return;\n if (typeof projection.stream === \"function\") return projection; // d3 projection\n let options;\n let domain;\n let clip = \"frame\";\n\n // If the projection was specified as an object with additional options,\n // extract those. The order of precedence for insetTop (and other insets) is:\n // projection.insetTop, projection.inset, (global) insetTop, (global) inset.\n // Any other options on this object will be passed through to the initializer.\n if (isObject(projection)) {\n let inset;\n ({\n type: projection,\n domain,\n inset,\n insetTop = inset !== undefined ? inset : insetTop,\n insetRight = inset !== undefined ? inset : insetRight,\n insetBottom = inset !== undefined ? inset : insetBottom,\n insetLeft = inset !== undefined ? inset : insetLeft,\n clip = clip,\n ...options\n } = projection);\n if (projection == null) return;\n }\n\n // For named projections, retrieve the corresponding projection initializer.\n if (typeof projection !== \"function\") ({type: projection} = namedProjection(projection));\n\n // Compute the frame dimensions and invoke the projection initializer.\n const {width, height, marginLeft, marginRight, marginTop, marginBottom} = dimensions;\n const dx = width - marginLeft - marginRight - insetLeft - insetRight;\n const dy = height - marginTop - marginBottom - insetTop - insetBottom;\n projection = projection?.({width: dx, height: dy, clip, ...options});\n\n // The projection initializer might decide to not use a projection.\n if (projection == null) return;\n clip = maybePostClip(clip, marginLeft, marginTop, width - marginRight, height - marginBottom);\n\n // Translate the origin to the top-left corner, respecting margins and insets.\n let tx = marginLeft + insetLeft;\n let ty = marginTop + insetTop;\n let transform;\n\n // If a domain is specified, fit the projection to the frame.\n if (domain != null) {\n const [[x0, y0], [x1, y1]] = geoPath(projection).bounds(domain);\n const k = Math.min(dx / (x1 - x0), dy / (y1 - y0));\n if (k > 0) {\n tx -= (k * (x0 + x1) - dx) / 2;\n ty -= (k * (y0 + y1) - dy) / 2;\n transform = geoTransform({\n point(x, y) {\n this.stream.point(x * k + tx, y * k + ty);\n }\n });\n } else {\n warn(`Warning: the projection could not be fit to the specified domain; using the default scale.`);\n }\n }\n\n transform ??=\n tx === 0 && ty === 0\n ? identity()\n : geoTransform({\n point(x, y) {\n this.stream.point(x + tx, y + ty);\n }\n });\n\n return {stream: (s) => projection.stream(transform.stream(clip(s)))};\n}\n\nfunction namedProjection(projection) {\n switch (`${projection}`.toLowerCase()) {\n case \"albers-usa\":\n return scaleProjection(geoAlbersUsa, 0.7463, 0.4673);\n case \"albers\":\n return conicProjection(geoAlbers, 0.7463, 0.4673);\n case \"azimuthal-equal-area\":\n return scaleProjection(geoAzimuthalEqualArea, 4, 4);\n case \"azimuthal-equidistant\":\n return scaleProjection(geoAzimuthalEquidistant, tau, tau);\n case \"conic-conformal\":\n return conicProjection(geoConicConformal, tau, tau);\n case \"conic-equal-area\":\n return conicProjection(geoConicEqualArea, 6.1702, 2.9781);\n case \"conic-equidistant\":\n return conicProjection(geoConicEquidistant, 7.312, 3.6282);\n case \"equal-earth\":\n return scaleProjection(geoEqualEarth, 5.4133, 2.6347);\n case \"equirectangular\":\n return scaleProjection(geoEquirectangular, tau, pi);\n case \"gnomonic\":\n return scaleProjection(geoGnomonic, 3.4641, 3.4641);\n case \"identity\":\n return {type: identity};\n case \"reflect-y\":\n return {type: reflectY};\n case \"mercator\":\n return scaleProjection(geoMercator, tau, tau);\n case \"orthographic\":\n return scaleProjection(geoOrthographic, 2, 2);\n case \"stereographic\":\n return scaleProjection(geoStereographic, 2, 2);\n case \"transverse-mercator\":\n return scaleProjection(geoTransverseMercator, tau, tau);\n default:\n throw new Error(`unknown projection type: ${projection}`);\n }\n}\n\nfunction maybePostClip(clip, x1, y1, x2, y2) {\n if (clip === false || clip == null || typeof clip === \"number\") return (s) => s;\n if (clip === true) clip = \"frame\";\n switch (`${clip}`.toLowerCase()) {\n case \"frame\":\n return geoClipRectangle(x1, y1, x2, y2);\n default:\n throw new Error(`unknown projection clip type: ${clip}`);\n }\n}\n\nfunction scaleProjection(createProjection, kx, ky) {\n return {\n type: ({width, height, rotate, precision = 0.15, clip}) => {\n const projection = createProjection();\n if (precision != null) projection.precision?.(precision);\n if (rotate != null) projection.rotate?.(rotate);\n if (typeof clip === \"number\") projection.clipAngle?.(clip);\n projection.scale(Math.min(width / kx, height / ky));\n projection.translate([width / 2, height / 2]);\n return projection;\n },\n aspectRatio: ky / kx\n };\n}\n\nfunction conicProjection(createProjection, kx, ky) {\n const {type, aspectRatio} = scaleProjection(createProjection, kx, ky);\n return {\n type: (options) => {\n const {parallels, domain, width, height} = options;\n const projection = type(options);\n if (parallels != null) {\n projection.parallels(parallels);\n if (domain === undefined) {\n projection.fitSize([width, height], {type: \"Sphere\"});\n }\n }\n return projection;\n },\n aspectRatio\n };\n}\n\nconst identity = constant({stream: (stream) => stream});\n\nconst reflectY = constant(\n geoTransform({\n point(x, y) {\n this.stream.point(x, -y);\n }\n })\n);\n\n// Applies a point-wise projection to the given paired x and y channels.\n// Note: mutates values!\nexport function maybeProject(cx, cy, channels, values, context) {\n const x = channels[cx] && channels[cx].scale === \"x\";\n const y = channels[cy] && channels[cy].scale === \"y\";\n if (x && y) {\n project(cx, cy, values, context.projection);\n } else if (x) {\n throw new Error(`projection requires paired x and y channels; ${cx} is missing ${cy}`);\n } else if (y) {\n throw new Error(`projection requires paired x and y channels; ${cy} is missing ${cx}`);\n }\n}\n\nfunction project(cx, cy, values, projection) {\n const x = values[cx];\n const y = values[cy];\n const n = x.length;\n const X = (values[cx] = new Float64Array(n).fill(NaN));\n const Y = (values[cy] = new Float64Array(n).fill(NaN));\n let i;\n const stream = projection.stream({\n point(x, y) {\n X[i] = x;\n Y[i] = y;\n }\n });\n for (i = 0; i < n; ++i) {\n stream.point(x[i], y[i]);\n }\n}\n\n// When a named projection is specified, we can use its natural aspect ratio to\n// determine a good value for the projection’s height based on the desired\n// width. When we don’t have a way to know, the golden ratio is our best guess.\n// Due to a circular dependency (we need to know the height before we can\n// construct the projection), we have to test the raw projection option rather\n// than the materialized projection; therefore we must be extremely careful that\n// the logic of this function exactly matches Projection above!\nexport function projectionAspectRatio(projection, marks) {\n if (typeof projection?.stream === \"function\") return defaultAspectRatio;\n if (isObject(projection)) projection = projection.type;\n if (projection == null) return hasGeometry(marks) ? defaultAspectRatio : undefined;\n if (typeof projection !== \"function\") {\n const {aspectRatio} = namedProjection(projection);\n if (aspectRatio) return aspectRatio;\n }\n return defaultAspectRatio;\n}\n\n// Extract the (possibly) scaled values for the x and y channels, and apply the\n// projection if any.\nexport function applyPosition(channels, scales, context) {\n const {x, y} = channels;\n let position = {};\n if (x) position.x = x;\n if (y) position.y = y;\n position = valueObject(position, scales);\n if (context.projection) maybeProject(\"x\", \"y\", channels, position, context);\n if (x) position.x = coerceNumbers(position.x);\n if (y) position.y = coerceNumbers(position.y);\n return position;\n}\n\nfunction hasGeometry(marks) {\n for (const mark of marks) if (mark.channels.geometry) return true;\n return false;\n}\n","import {creator, select} from \"d3\";\nimport {createProjection} from \"./projection.js\";\n\nexport function createContext(options = {}, dimensions, className) {\n const {document = typeof window !== \"undefined\" ? window.document : undefined} = options;\n return {document, className, projection: createProjection(options, dimensions)};\n}\n\nexport function create(name, {document}) {\n return select(creator(name).call(document.documentElement));\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","import {format as isoFormat} from \"isoformat\";\nimport {string} from \"./options.js\";\nimport {memoize1} from \"./memoize.js\";\n\nconst numberFormat = memoize1((locale) => {\n return new Intl.NumberFormat(locale);\n});\n\nconst monthFormat = memoize1((locale, month) => {\n return new Intl.DateTimeFormat(locale, {timeZone: \"UTC\", ...(month && {month})});\n});\n\nconst weekdayFormat = memoize1((locale, weekday) => {\n return new Intl.DateTimeFormat(locale, {timeZone: \"UTC\", ...(weekday && {weekday})});\n});\n\nexport function formatNumber(locale = \"en-US\") {\n const format = numberFormat(locale);\n return (i) => (i != null && !isNaN(i) ? format.format(i) : undefined);\n}\n\nexport function formatMonth(locale = \"en-US\", format = \"short\") {\n const fmt = monthFormat(locale, format);\n return (i) => (i != null && !isNaN((i = +new Date(Date.UTC(2000, +i)))) ? fmt.format(i) : undefined);\n}\n\nexport function formatWeekday(locale = \"en-US\", format = \"short\") {\n const fmt = weekdayFormat(locale, format);\n return (i) => (i != null && !isNaN((i = +new Date(Date.UTC(2001, 0, +i)))) ? fmt.format(i) : undefined);\n}\n\nexport function formatIsoDate(date) {\n return isoFormat(date, \"Invalid Date\");\n}\n\nexport function formatAuto(locale = \"en-US\") {\n const number = formatNumber(locale);\n return (v) => (v instanceof Date ? formatIsoDate : typeof v === \"number\" ? number : string)(v);\n}\n\n// TODO When Plot supports a top-level locale option, this should be removed\n// because it lacks context to know which locale to use; formatAuto should be\n// used instead whenever possible.\nexport const formatDefault = formatAuto();\n","export function memoize1(compute) {\n let cacheValue, cacheKeys;\n return (...keys) => {\n if (cacheKeys?.length !== keys.length || cacheKeys.some((k, i) => k !== keys[i])) {\n cacheKeys = keys;\n cacheValue = compute(...keys);\n }\n return cacheValue;\n };\n}\n","import {geoPath, group, namespaces} from \"d3\";\nimport {create} from \"./context.js\";\nimport {defined, nonempty} from \"./defined.js\";\nimport {formatDefault} from \"./format.js\";\nimport {\n string,\n number,\n maybeColorChannel,\n maybeNumberChannel,\n maybeKeyword,\n isNoneish,\n isNone,\n isRound,\n keyof\n} from \"./options.js\";\nimport {warn} from \"./warnings.js\";\n\nexport const offset = (typeof window !== \"undefined\" ? window.devicePixelRatio > 1 : typeof it === \"undefined\") ? 0 : 0.5; // prettier-ignore\n\nlet nextClipId = 0;\n\nfunction getClipId() {\n return `plot-clip-${++nextClipId}`;\n}\n\nexport function styles(\n mark,\n {\n title,\n href,\n ariaLabel: variaLabel,\n ariaDescription,\n ariaHidden,\n target,\n fill,\n fillOpacity,\n stroke,\n strokeWidth,\n strokeOpacity,\n strokeLinejoin,\n strokeLinecap,\n strokeMiterlimit,\n strokeDasharray,\n strokeDashoffset,\n opacity,\n mixBlendMode,\n paintOrder,\n pointerEvents,\n shapeRendering\n },\n {\n ariaLabel: cariaLabel,\n fill: defaultFill = \"currentColor\",\n fillOpacity: defaultFillOpacity,\n stroke: defaultStroke = \"none\",\n strokeOpacity: defaultStrokeOpacity,\n strokeWidth: defaultStrokeWidth,\n strokeLinecap: defaultStrokeLinecap,\n strokeLinejoin: defaultStrokeLinejoin,\n strokeMiterlimit: defaultStrokeMiterlimit,\n paintOrder: defaultPaintOrder\n }\n) {\n // Some marks don’t support fill (e.g., tick and rule).\n if (defaultFill === null) {\n fill = null;\n fillOpacity = null;\n }\n\n // Some marks don’t support stroke (e.g., image).\n if (defaultStroke === null) {\n stroke = null;\n strokeOpacity = null;\n }\n\n // Some marks default to fill with no stroke, while others default to stroke\n // with no fill. For example, bar and area default to fill, while dot and line\n // default to stroke. For marks that fill by default, the default fill only\n // applies if the stroke is (constant) none; if you set a stroke, then the\n // default fill becomes none. Similarly for marks that stroke by stroke, the\n // default stroke only applies if the fill is (constant) none.\n if (isNoneish(defaultFill)) {\n if (!isNoneish(defaultStroke) && !isNoneish(fill)) defaultStroke = \"none\";\n } else {\n if (isNoneish(defaultStroke) && !isNoneish(stroke)) defaultFill = \"none\";\n }\n\n const [vfill, cfill] = maybeColorChannel(fill, defaultFill);\n const [vfillOpacity, cfillOpacity] = maybeNumberChannel(fillOpacity, defaultFillOpacity);\n const [vstroke, cstroke] = maybeColorChannel(stroke, defaultStroke);\n const [vstrokeOpacity, cstrokeOpacity] = maybeNumberChannel(strokeOpacity, defaultStrokeOpacity);\n const [vopacity, copacity] = maybeNumberChannel(opacity);\n\n // For styles that have no effect if there is no stroke, only apply the\n // defaults if the stroke is not the constant none. (If stroke is a channel,\n // then cstroke will be undefined, but there’s still a stroke; hence we don’t\n // use isNoneish here.)\n if (!isNone(cstroke)) {\n if (strokeWidth === undefined) strokeWidth = defaultStrokeWidth;\n if (strokeLinecap === undefined) strokeLinecap = defaultStrokeLinecap;\n if (strokeLinejoin === undefined) strokeLinejoin = defaultStrokeLinejoin;\n\n // The default stroke miterlimit need not be applied if the current stroke\n // is the constant round; this only has effect on miter joins.\n if (strokeMiterlimit === undefined && !isRound(strokeLinejoin)) strokeMiterlimit = defaultStrokeMiterlimit;\n\n // The paint order only takes effect if there is both a fill and a stroke\n // (at least if we ignore markers, which no built-in marks currently use).\n if (!isNone(cfill) && paintOrder === undefined) paintOrder = defaultPaintOrder;\n }\n\n const [vstrokeWidth, cstrokeWidth] = maybeNumberChannel(strokeWidth);\n\n // Some marks don’t support fill (e.g., tick and rule).\n if (defaultFill !== null) {\n mark.fill = impliedString(cfill, \"currentColor\");\n mark.fillOpacity = impliedNumber(cfillOpacity, 1);\n }\n\n // Some marks don’t support stroke (e.g., image).\n if (defaultStroke !== null) {\n mark.stroke = impliedString(cstroke, \"none\");\n mark.strokeWidth = impliedNumber(cstrokeWidth, 1);\n mark.strokeOpacity = impliedNumber(cstrokeOpacity, 1);\n mark.strokeLinejoin = impliedString(strokeLinejoin, \"miter\");\n mark.strokeLinecap = impliedString(strokeLinecap, \"butt\");\n mark.strokeMiterlimit = impliedNumber(strokeMiterlimit, 4);\n mark.strokeDasharray = impliedString(strokeDasharray, \"none\");\n mark.strokeDashoffset = impliedString(strokeDashoffset, \"0\");\n }\n\n mark.target = string(target);\n mark.ariaLabel = string(cariaLabel);\n mark.ariaDescription = string(ariaDescription);\n mark.ariaHidden = string(ariaHidden);\n mark.opacity = impliedNumber(copacity, 1);\n mark.mixBlendMode = impliedString(mixBlendMode, \"normal\");\n mark.paintOrder = impliedString(paintOrder, \"normal\");\n mark.pointerEvents = impliedString(pointerEvents, \"auto\");\n mark.shapeRendering = impliedString(shapeRendering, \"auto\");\n\n return {\n title: {value: title, optional: true},\n href: {value: href, optional: true},\n ariaLabel: {value: variaLabel, optional: true},\n fill: {value: vfill, scale: \"auto\", optional: true},\n fillOpacity: {value: vfillOpacity, scale: \"auto\", optional: true},\n stroke: {value: vstroke, scale: \"auto\", optional: true},\n strokeOpacity: {value: vstrokeOpacity, scale: \"auto\", optional: true},\n strokeWidth: {value: vstrokeWidth, optional: true},\n opacity: {value: vopacity, scale: \"auto\", optional: true}\n };\n}\n\n// Applies the specified titles via selection.call.\nexport function applyTitle(selection, L) {\n if (L)\n selection\n .filter((i) => nonempty(L[i]))\n .append(\"title\")\n .call(applyText, L);\n}\n\n// Like applyTitle, but for grouped data (lines, areas).\nexport function applyTitleGroup(selection, L) {\n if (L)\n selection\n .filter(([i]) => nonempty(L[i]))\n .append(\"title\")\n .call(applyTextGroup, L);\n}\n\nexport function applyText(selection, T) {\n if (T) selection.text((i) => formatDefault(T[i]));\n}\n\nexport function applyTextGroup(selection, T) {\n if (T) selection.text(([i]) => formatDefault(T[i]));\n}\n\nexport function applyChannelStyles(\n selection,\n {target},\n {\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n }\n) {\n if (AL) applyAttr(selection, \"aria-label\", (i) => AL[i]);\n if (F) applyAttr(selection, \"fill\", (i) => F[i]);\n if (FO) applyAttr(selection, \"fill-opacity\", (i) => FO[i]);\n if (S) applyAttr(selection, \"stroke\", (i) => S[i]);\n if (SO) applyAttr(selection, \"stroke-opacity\", (i) => SO[i]);\n if (SW) applyAttr(selection, \"stroke-width\", (i) => SW[i]);\n if (O) applyAttr(selection, \"opacity\", (i) => O[i]);\n if (H) applyHref(selection, (i) => H[i], target);\n applyTitle(selection, T);\n}\n\nexport function applyGroupedChannelStyles(\n selection,\n {target},\n {\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n }\n) {\n if (AL) applyAttr(selection, \"aria-label\", ([i]) => AL[i]);\n if (F) applyAttr(selection, \"fill\", ([i]) => F[i]);\n if (FO) applyAttr(selection, \"fill-opacity\", ([i]) => FO[i]);\n if (S) applyAttr(selection, \"stroke\", ([i]) => S[i]);\n if (SO) applyAttr(selection, \"stroke-opacity\", ([i]) => SO[i]);\n if (SW) applyAttr(selection, \"stroke-width\", ([i]) => SW[i]);\n if (O) applyAttr(selection, \"opacity\", ([i]) => O[i]);\n if (H) applyHref(selection, ([i]) => H[i], target);\n applyTitleGroup(selection, T);\n}\n\nfunction groupAesthetics({\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n}) {\n return [AL, T, F, FO, S, SO, SW, O, H].filter((c) => c !== undefined);\n}\n\nexport function groupZ(I, Z, z) {\n const G = group(I, (i) => Z[i]);\n if (z === undefined && G.size > I.length >> 1) {\n warn(\n `Warning: the implicit z channel has high cardinality. This may occur when the fill or stroke channel is associated with quantitative data rather than ordinal or categorical data. You can suppress this warning by setting the z option explicitly; if this data represents a single series, set z to null.`\n );\n }\n return G.values();\n}\n\nexport function* groupIndex(I, position, {z}, channels) {\n const {z: Z} = channels; // group channel\n const A = groupAesthetics(channels); // aesthetic channels\n const C = [...position, ...A]; // all channels\n\n // Group the current index by Z (if any).\n for (const G of Z ? groupZ(I, Z, z) : [I]) {\n let Ag; // the A-values (aesthetics) of the current group, if any\n let Gg; // the current group index (a subset of G, and I), if any\n out: for (const i of G) {\n // If any channel has an undefined value for this index, skip it.\n for (const c of C) {\n if (!defined(c[i])) {\n if (Gg) Gg.push(-1);\n continue out;\n }\n }\n\n // Otherwise, if this is a new group, record the aesthetics for this\n // group. Yield the current group and start a new one.\n if (Ag === undefined) {\n if (Gg) yield Gg;\n (Ag = A.map((c) => keyof(c[i]))), (Gg = [i]);\n continue;\n }\n\n // Otherwise, add the current index to the current group. Then, if any of\n // the aesthetics don’t match the current group, yield the current group\n // and start a new group of the current index.\n Gg.push(i);\n for (let j = 0; j < A.length; ++j) {\n const k = keyof(A[j][i]);\n if (k !== Ag[j]) {\n yield Gg;\n (Ag = A.map((c) => keyof(c[i]))), (Gg = [i]);\n continue out;\n }\n }\n }\n\n // Yield the current group, if any.\n if (Gg) yield Gg;\n }\n}\n\n// TODO Accept other types of clips (paths, urls, x, y, other marks…)?\n// https://github.com/observablehq/plot/issues/181\nexport function maybeClip(clip) {\n if (clip === true) clip = \"frame\";\n else if (clip === false) clip = null;\n return maybeKeyword(clip, \"clip\", [\"frame\", \"sphere\"]);\n}\n\n// Note: may mutate selection.node!\nfunction applyClip(selection, mark, dimensions, context) {\n let clipUrl;\n switch (mark.clip) {\n case \"frame\": {\n const {width, height, marginLeft, marginRight, marginTop, marginBottom} = dimensions;\n const id = getClipId();\n clipUrl = `url(#${id})`;\n selection = create(\"svg:g\", context)\n .call((g) =>\n g\n .append(\"svg:clipPath\")\n .attr(\"id\", id)\n .append(\"rect\")\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop)\n .attr(\"width\", width - marginRight - marginLeft)\n .attr(\"height\", height - marginTop - marginBottom)\n )\n .each(function () {\n this.appendChild(selection.node());\n selection.node = () => this; // Note: mutation!\n });\n break;\n }\n case \"sphere\": {\n const {projection} = context;\n if (!projection) throw new Error(`the \"sphere\" clip option requires a projection`);\n const id = getClipId();\n clipUrl = `url(#${id})`;\n selection\n .append(\"clipPath\")\n .attr(\"id\", id)\n .append(\"path\")\n .attr(\"d\", geoPath(projection)({type: \"Sphere\"}));\n break;\n }\n }\n // Here we’re careful to apply the ARIA attributes to the outer G element when\n // clipping is applied, and to apply the ARIA attributes before any other\n // attributes (for readability).\n applyAttr(selection, \"aria-label\", mark.ariaLabel);\n applyAttr(selection, \"aria-description\", mark.ariaDescription);\n applyAttr(selection, \"aria-hidden\", mark.ariaHidden);\n applyAttr(selection, \"clip-path\", clipUrl);\n}\n\n// Note: may mutate selection.node!\nexport function applyIndirectStyles(selection, mark, dimensions, context) {\n applyClip(selection, mark, dimensions, context);\n applyAttr(selection, \"fill\", mark.fill);\n applyAttr(selection, \"fill-opacity\", mark.fillOpacity);\n applyAttr(selection, \"stroke\", mark.stroke);\n applyAttr(selection, \"stroke-width\", mark.strokeWidth);\n applyAttr(selection, \"stroke-opacity\", mark.strokeOpacity);\n applyAttr(selection, \"stroke-linejoin\", mark.strokeLinejoin);\n applyAttr(selection, \"stroke-linecap\", mark.strokeLinecap);\n applyAttr(selection, \"stroke-miterlimit\", mark.strokeMiterlimit);\n applyAttr(selection, \"stroke-dasharray\", mark.strokeDasharray);\n applyAttr(selection, \"stroke-dashoffset\", mark.strokeDashoffset);\n applyAttr(selection, \"shape-rendering\", mark.shapeRendering);\n applyAttr(selection, \"paint-order\", mark.paintOrder);\n applyAttr(selection, \"pointer-events\", mark.pointerEvents);\n}\n\nexport function applyDirectStyles(selection, mark) {\n applyStyle(selection, \"mix-blend-mode\", mark.mixBlendMode);\n applyAttr(selection, \"opacity\", mark.opacity);\n}\n\nfunction applyHref(selection, href, target) {\n selection.each(function (i) {\n const h = href(i);\n if (h != null) {\n const a = this.ownerDocument.createElementNS(namespaces.svg, \"a\");\n a.setAttribute(\"fill\", \"inherit\");\n a.setAttributeNS(namespaces.xlink, \"href\", h);\n if (target != null) a.setAttribute(\"target\", target);\n this.parentNode.insertBefore(a, this).appendChild(this);\n }\n });\n}\n\nexport function applyAttr(selection, name, value) {\n if (value != null) selection.attr(name, value);\n}\n\nexport function applyStyle(selection, name, value) {\n if (value != null) selection.style(name, value);\n}\n\nexport function applyTransform(selection, mark, {x, y}, tx = offset, ty = offset) {\n tx += mark.dx;\n ty += mark.dy;\n if (x?.bandwidth) tx += x.bandwidth() / 2;\n if (y?.bandwidth) ty += y.bandwidth() / 2;\n if (tx || ty) selection.attr(\"transform\", `translate(${tx},${ty})`);\n}\n\nexport function impliedString(value, impliedValue) {\n if ((value = string(value)) !== impliedValue) return value;\n}\n\nexport function impliedNumber(value, impliedValue) {\n if ((value = number(value)) !== impliedValue) return value;\n}\n\n// https://www.w3.org/TR/CSS21/grammar.html\nconst validClassName =\n /^-?([_a-z]|[\\240-\\377]|\\\\[0-9a-f]{1,6}(\\r\\n|[ \\t\\r\\n\\f])?|\\\\[^\\r\\n\\f0-9a-f])([_a-z0-9-]|[\\240-\\377]|\\\\[0-9a-f]{1,6}(\\r\\n|[ \\t\\r\\n\\f])?|\\\\[^\\r\\n\\f0-9a-f])*$/i;\n\nexport function maybeClassName(name) {\n // The default should be changed whenever the default styles are changed, so\n // as to avoid conflict when multiple versions of Plot are on the page.\n if (name === undefined) return \"plot-d6a7b5\";\n name = `${name}`;\n if (!validClassName.test(name)) throw new Error(`invalid class name: ${name}`);\n return name;\n}\n\nexport function applyInlineStyles(selection, style) {\n if (typeof style === \"string\") {\n selection.property(\"style\", style);\n } else if (style != null) {\n for (const element of selection) {\n Object.assign(element.style, style);\n }\n }\n}\n\nexport function applyFrameAnchor({frameAnchor}, {width, height, marginTop, marginRight, marginBottom, marginLeft}) {\n return [\n /left$/.test(frameAnchor)\n ? marginLeft\n : /right$/.test(frameAnchor)\n ? width - marginRight\n : (marginLeft + width - marginRight) / 2,\n /^top/.test(frameAnchor)\n ? marginTop\n : /^bottom/.test(frameAnchor)\n ? height - marginBottom\n : (marginTop + height - marginBottom) / 2\n ];\n}\n","import {format, utcFormat} from \"d3\";\nimport {formatIsoDate} from \"./format.js\";\nimport {constant, isTemporal, string} from \"./options.js\";\nimport {isOrdinalScale} from \"./scales.js\";\n\nexport function inferFontVariant(scale) {\n return isOrdinalScale(scale) && scale.interval === undefined ? undefined : \"tabular-nums\";\n}\n\n// D3 doesn’t provide a tick format for ordinal scales; we want shorthand when\n// an ordinal domain is numbers or dates, and we want null to mean the empty\n// string, not the default identity format. TODO Remove this in favor of the\n// axis mark’s inferTickFormat.\nexport function maybeAutoTickFormat(tickFormat, domain) {\n return tickFormat === undefined\n ? isTemporal(domain)\n ? formatIsoDate\n : string\n : typeof tickFormat === \"function\"\n ? tickFormat\n : (typeof tickFormat === \"string\" ? (isTemporal(domain) ? utcFormat : format) : constant)(tickFormat);\n}\n","import {pathRound as path} from \"d3\";\nimport {inferFontVariant, maybeAutoTickFormat} from \"../axes.js\";\nimport {createContext, create} from \"../context.js\";\nimport {isNoneish, maybeColorChannel, maybeNumberChannel} from \"../options.js\";\nimport {isOrdinalScale, isThresholdScale} from \"../scales.js\";\nimport {applyInlineStyles, impliedString, maybeClassName} from \"../style.js\";\n\nfunction maybeScale(scale, key) {\n if (key == null) return key;\n const s = scale(key);\n if (!s) throw new Error(`scale not found: ${key}`);\n return s;\n}\n\nexport function legendSwatches(color, {opacity, ...options} = {}) {\n if (!isOrdinalScale(color) && !isThresholdScale(color))\n throw new Error(`swatches legend requires ordinal or threshold color scale (not ${color.type})`);\n return legendItems(color, options, (selection, scale, width, height) =>\n selection\n .append(\"svg\")\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"fill\", scale.scale)\n .attr(\"fill-opacity\", maybeNumberChannel(opacity)[1])\n .append(\"rect\")\n .attr(\"width\", \"100%\")\n .attr(\"height\", \"100%\")\n );\n}\n\nexport function legendSymbols(\n symbol,\n {\n fill = symbol.hint?.fill !== undefined ? symbol.hint.fill : \"none\",\n fillOpacity = 1,\n stroke = symbol.hint?.stroke !== undefined ? symbol.hint.stroke : isNoneish(fill) ? \"currentColor\" : \"none\",\n strokeOpacity = 1,\n strokeWidth = 1.5,\n r = 4.5,\n ...options\n } = {},\n scale\n) {\n const [vf, cf] = maybeColorChannel(fill);\n const [vs, cs] = maybeColorChannel(stroke);\n const sf = maybeScale(scale, vf);\n const ss = maybeScale(scale, vs);\n const size = r * r * Math.PI;\n fillOpacity = maybeNumberChannel(fillOpacity)[1];\n strokeOpacity = maybeNumberChannel(strokeOpacity)[1];\n strokeWidth = maybeNumberChannel(strokeWidth)[1];\n return legendItems(symbol, options, (selection, scale, width, height) =>\n selection\n .append(\"svg\")\n .attr(\"viewBox\", \"-8 -8 16 16\")\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"fill\", vf === \"color\" ? (d) => sf.scale(d) : cf)\n .attr(\"fill-opacity\", fillOpacity)\n .attr(\"stroke\", vs === \"color\" ? (d) => ss.scale(d) : cs)\n .attr(\"stroke-opacity\", strokeOpacity)\n .attr(\"stroke-width\", strokeWidth)\n .append(\"path\")\n .attr(\"d\", (d) => {\n const p = path();\n symbol.scale(d).draw(p, size);\n return p;\n })\n );\n}\n\nfunction legendItems(scale, options = {}, swatch) {\n let {\n columns,\n tickFormat,\n fontVariant = inferFontVariant(scale),\n // TODO label,\n swatchSize = 15,\n swatchWidth = swatchSize,\n swatchHeight = swatchSize,\n marginLeft = 0,\n className,\n style,\n width\n } = options;\n const context = createContext(options);\n className = maybeClassName(className);\n tickFormat = maybeAutoTickFormat(tickFormat, scale.domain);\n\n const swatches = create(\"div\", context).attr(\n \"class\",\n `${className}-swatches ${className}-swatches-${columns != null ? \"columns\" : \"wrap\"}`\n );\n\n let extraStyle;\n\n if (columns != null) {\n extraStyle = `.${className}-swatches-columns .${className}-swatch {\n display: flex;\n align-items: center;\n break-inside: avoid;\n padding-bottom: 1px;\n}\n.${className}-swatches-columns .${className}-swatch::before {\n flex-shrink: 0;\n}\n.${className}-swatches-columns .${className}-swatch-label {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}`;\n\n swatches\n .style(\"columns\", columns)\n .selectAll()\n .data(scale.domain)\n .enter()\n .append(\"div\")\n .attr(\"class\", `${className}-swatch`)\n .call(swatch, scale, swatchWidth, swatchHeight)\n .call((item) =>\n item.append(\"div\").attr(\"class\", `${className}-swatch-label`).attr(\"title\", tickFormat).text(tickFormat)\n );\n } else {\n extraStyle = `.${className}-swatches-wrap {\n display: flex;\n align-items: center;\n min-height: 33px;\n flex-wrap: wrap;\n}\n.${className}-swatches-wrap .${className}-swatch {\n display: inline-flex;\n align-items: center;\n margin-right: 1em;\n}`;\n\n swatches\n .selectAll()\n .data(scale.domain)\n .enter()\n .append(\"span\")\n .attr(\"class\", `${className}-swatch`)\n .call(swatch, scale, swatchWidth, swatchHeight)\n .append(function () {\n return this.ownerDocument.createTextNode(tickFormat.apply(this, arguments));\n });\n }\n\n return swatches\n .call((div) =>\n div.insert(\"style\", \"*\").text(\n `.${className}-swatches {\n font-family: system-ui, sans-serif;\n font-size: 10px;\n margin-bottom: 0.5em;\n}\n.${className}-swatch > svg {\n margin-right: 0.5em;\n overflow: visible;\n}\n${extraStyle}`\n )\n )\n .style(\"margin-left\", marginLeft ? `${+marginLeft}px` : null)\n .style(\"width\", width === undefined ? null : `${+width}px`)\n .style(\"font-variant\", impliedString(fontVariant, \"normal\"))\n .call(applyInlineStyles, style)\n .node();\n}\n","import {rgb} from \"d3\";\nimport {createContext} from \"./context.js\";\nimport {legendRamp} from \"./legends/ramp.js\";\nimport {legendSwatches, legendSymbols} from \"./legends/swatches.js\";\nimport {inherit, isScaleOptions} from \"./options.js\";\nimport {normalizeScale} from \"./scales.js\";\n\nconst legendRegistry = new Map([\n [\"symbol\", legendSymbols],\n [\"color\", legendColor],\n [\"opacity\", legendOpacity]\n]);\n\nexport function legend(options = {}) {\n for (const [key, value] of legendRegistry) {\n const scale = options[key];\n if (isScaleOptions(scale)) {\n // e.g., ignore {color: \"red\"}\n const context = createContext(options);\n let hint;\n // For symbol legends, pass a hint to the symbol scale.\n if (key === \"symbol\") {\n const {fill, stroke = fill === undefined && isScaleOptions(options.color) ? \"color\" : undefined} = options;\n hint = {fill, stroke};\n }\n return value(normalizeScale(key, scale, hint), legendOptions(context, scale, options), (key) =>\n isScaleOptions(options[key]) ? normalizeScale(key, options[key]) : null\n );\n }\n }\n throw new Error(\"unknown legend type; no scale found\");\n}\n\nexport function exposeLegends(scales, context, defaults = {}) {\n return (key, options) => {\n if (!legendRegistry.has(key)) throw new Error(`unknown legend type: ${key}`);\n if (!(key in scales)) return;\n return legendRegistry.get(key)(scales[key], legendOptions(context, defaults[key], options), (key) => scales[key]);\n };\n}\n\nfunction legendOptions({className, ...context}, {label, ticks, tickFormat} = {}, options) {\n return inherit(options, {className, ...context}, {label, ticks, tickFormat});\n}\n\nfunction legendColor(color, {legend = true, ...options}) {\n if (legend === true) legend = color.type === \"ordinal\" ? \"swatches\" : \"ramp\";\n if (color.domain === undefined) return;\n switch (`${legend}`.toLowerCase()) {\n case \"swatches\":\n return legendSwatches(color, options);\n case \"ramp\":\n return legendRamp(color, options);\n default:\n throw new Error(`unknown legend type: ${legend}`);\n }\n}\n\nfunction legendOpacity({type, interpolate, ...scale}, {legend = true, color = rgb(0, 0, 0), ...options}) {\n if (!interpolate) throw new Error(`${type} opacity scales are not supported`);\n if (legend === true) legend = \"ramp\";\n if (`${legend}`.toLowerCase() !== \"ramp\") throw new Error(`${legend} opacity legends are not supported`);\n return legendColor({type, ...scale, interpolate: interpolateOpacity(color)}, {legend, ...options});\n}\n\nfunction interpolateOpacity(color) {\n const {r, g, b} = rgb(color) || rgb(0, 0, 0); // treat invalid color as black\n return (t) => `rgba(${r},${g},${b},${t})`;\n}\n\nexport function createLegends(scales, context, options) {\n const legends = [];\n for (const [key, value] of legendRegistry) {\n const o = options[key];\n if (o?.legend && key in scales) {\n const legend = value(scales[key], legendOptions(context, scales[key], o), (key) => scales[key]);\n if (legend != null) legends.push(legend);\n }\n }\n return legends;\n}\n","import {quantize, interpolateNumber, piecewise, format, scaleBand, scaleLinear, axisBottom} from \"d3\";\nimport {inferFontVariant} from \"../axes.js\";\nimport {createContext, create} from \"../context.js\";\nimport {map, maybeNumberChannel} from \"../options.js\";\nimport {interpolatePiecewise} from \"../scales/quantitative.js\";\nimport {applyInlineStyles, impliedString, maybeClassName} from \"../style.js\";\n\nexport function legendRamp(color, options) {\n let {\n label = color.label,\n tickSize = 6,\n width = 240,\n height = 44 + tickSize,\n marginTop = 18,\n marginRight = 0,\n marginBottom = 16 + tickSize,\n marginLeft = 0,\n style,\n ticks = (width - marginLeft - marginRight) / 64,\n tickFormat,\n fontVariant = inferFontVariant(color),\n round = true,\n opacity,\n className\n } = options;\n const context = createContext(options);\n className = maybeClassName(className);\n opacity = maybeNumberChannel(opacity)[1];\n if (tickFormat === null) tickFormat = () => null;\n\n const svg = create(\"svg\", context)\n .attr(\"class\", `${className}-ramp`)\n .attr(\"font-family\", \"system-ui, sans-serif\")\n .attr(\"font-size\", 10)\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"viewBox\", `0 0 ${width} ${height}`)\n .call((svg) =>\n // Warning: if you edit this, change defaultClassName.\n svg.append(\"style\").text(\n `.${className}-ramp {\n display: block;\n background: white;\n height: auto;\n height: intrinsic;\n max-width: 100%;\n overflow: visible;\n}\n.${className}-ramp text {\n white-space: pre;\n}`\n )\n )\n .call(applyInlineStyles, style);\n\n let tickAdjust = (g) => g.selectAll(\".tick line\").attr(\"y1\", marginTop + marginBottom - height);\n\n let x;\n\n // Some D3 scales use scale.interpolate, some scale.interpolator, and some\n // scale.round; this normalizes the API so it works with all scale types.\n const applyRange = round ? (x, range) => x.rangeRound(range) : (x, range) => x.range(range);\n\n const {type, domain, range, interpolate, scale, pivot} = color;\n\n // Continuous\n if (interpolate) {\n // Often interpolate is a “fixed” interpolator on the [0, 1] interval, as\n // with a built-in color scheme, but sometimes it is a function that takes\n // two arguments and is used in conjunction with the range.\n const interpolator =\n range === undefined\n ? interpolate\n : piecewise(interpolate.length === 1 ? interpolatePiecewise(interpolate) : interpolate, range);\n\n // Construct a D3 scale of the same type, but with a range that evenly\n // divides the horizontal extent of the legend. (In the common case, the\n // domain.length is two, and so the range is simply the extent.) For a\n // diverging scale, we need an extra point in the range for the pivot such\n // that the pivot is always drawn in the middle.\n x = applyRange(\n scale.copy(),\n quantize(\n interpolateNumber(marginLeft, width - marginRight),\n Math.min(domain.length + (pivot !== undefined), range === undefined ? Infinity : range.length)\n )\n );\n\n // Construct a 256×1 canvas, filling each pixel using the interpolator.\n const n = 256;\n const canvas = context.document.createElement(\"canvas\");\n canvas.width = n;\n canvas.height = 1;\n const context2 = canvas.getContext(\"2d\");\n for (let i = 0, j = n - 1; i < n; ++i) {\n context2.fillStyle = interpolator(i / j);\n context2.fillRect(i, 0, 1, 1);\n }\n\n svg\n .append(\"image\")\n .attr(\"opacity\", opacity)\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop)\n .attr(\"width\", width - marginLeft - marginRight)\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"preserveAspectRatio\", \"none\")\n .attr(\"xlink:href\", canvas.toDataURL());\n }\n\n // Threshold\n else if (type === \"threshold\") {\n const thresholds = domain;\n\n const thresholdFormat =\n tickFormat === undefined ? (d) => d : typeof tickFormat === \"string\" ? format(tickFormat) : tickFormat;\n\n // Construct a linear scale with evenly-spaced ticks for each of the\n // thresholds; the domain extends one beyond the threshold extent.\n x = applyRange(scaleLinear().domain([-1, range.length - 1]), [marginLeft, width - marginRight]);\n\n svg\n .append(\"g\")\n .attr(\"fill-opacity\", opacity)\n .selectAll()\n .data(range)\n .enter()\n .append(\"rect\")\n .attr(\"x\", (d, i) => x(i - 1))\n .attr(\"y\", marginTop)\n .attr(\"width\", (d, i) => x(i) - x(i - 1))\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"fill\", (d) => d);\n\n ticks = map(thresholds, (_, i) => i);\n tickFormat = (i) => thresholdFormat(thresholds[i], i);\n }\n\n // Ordinal (hopefully!)\n else {\n x = applyRange(scaleBand().domain(domain), [marginLeft, width - marginRight]);\n\n svg\n .append(\"g\")\n .attr(\"fill-opacity\", opacity)\n .selectAll()\n .data(domain)\n .enter()\n .append(\"rect\")\n .attr(\"x\", x)\n .attr(\"y\", marginTop)\n .attr(\"width\", Math.max(0, x.bandwidth() - 1))\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"fill\", scale);\n\n tickAdjust = () => {};\n }\n\n svg\n .append(\"g\")\n .attr(\"transform\", `translate(0,${height - marginBottom})`)\n .call(\n axisBottom(x)\n .ticks(Array.isArray(ticks) ? null : ticks, typeof tickFormat === \"string\" ? tickFormat : undefined)\n .tickFormat(typeof tickFormat === \"function\" ? tickFormat : undefined)\n .tickSize(tickSize)\n .tickValues(Array.isArray(ticks) ? ticks : null)\n )\n .attr(\"font-size\", null)\n .attr(\"font-family\", null)\n .attr(\"font-variant\", impliedString(fontVariant, \"normal\"))\n .call(tickAdjust)\n .call((g) => g.select(\".domain\").remove());\n\n if (label !== undefined) {\n svg\n .append(\"text\")\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop - 6)\n .attr(\"fill\", \"currentColor\") // TODO move to stylesheet?\n .attr(\"font-weight\", \"bold\")\n .text(label);\n }\n\n return svg.node();\n}\n","import { select } from 'd3-selection';\nimport { legend } from '@observablehq/plot';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\n\ninterface LegendOptions extends PluginOptions {\n enabled: boolean;\n itemSelector: string | null;\n label: string | null;\n width: number;\n}\n\nconst DEFAULT_SELECTOR = '#ch-plugin-legend';\n\nconst defaultOptions: LegendOptions = {\n // Whether to display the legend\n enabled: true,\n\n itemSelector: null,\n\n label: null,\n\n width: 130,\n};\n\nexport default class Legend implements IPlugin {\n name = 'Legend';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: LegendOptions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n }\n\n paint(): Promise {\n const scaleOptions = this.calendar.options.options.scale;\n const { enabled, itemSelector } = this.options;\n\n if (!enabled || (itemSelector && select(itemSelector).empty())) {\n return this.destroy();\n }\n\n this.shown = true;\n\n this.root = select(\n itemSelector || this.calendar.options.options.itemSelector,\n );\n\n if (this.root.select(DEFAULT_SELECTOR).empty()) {\n this.root = this.root.append('div').attr('id', DEFAULT_SELECTOR.slice(1));\n } else {\n this.root = this.root.select(DEFAULT_SELECTOR);\n }\n\n // @ts-ignore\n const node = legend({\n ...scaleOptions,\n ...this.options,\n });\n\n this.root.selectAll('*').remove();\n this.root.append(() => node);\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","hiddenKeys","NATIVE_WEAK_MAP","sharedKey","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","require$$6","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toLength","lengthOfArrayLike","obj","toAbsoluteIndex","index","integer","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","SPECIES","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","setToStringTag","TAG","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","format","date","fallback","Date","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","year","getUTCFullYear","pad","getUTCMonth","getUTCDate","width","padStart","re","parse","timeIntervals","Map","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","every","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","interval","Error","maybeUtcInterval","TypedArray","getPrototypeOf","Uint8Array","objectToString","constant","coerceNumbers","map","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","maybeColorChannel","defaultValue","trim","startsWith","endsWith","color","isColor","maybeNumberChannel","arrayify","option","isScaleOptions","maybeInterval","isInteger","abs","d","offset","range","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","isNoneish","isNone","orderof","first","last","descending","position","radius","opacity","registry","sqrt4_3","sqrt","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","draw","context","size","rx","PI","ry","hy","moveTo","lineTo","closePath","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","pi","tau","createProjection","projection","inset","globalInset","insetTop","insetRight","insetBottom","insetLeft","dimensions","stream","clip","scaleProjection","geoAlbersUsa","conicProjection","geoAlbers","geoAzimuthalEqualArea","geoAzimuthalEquidistant","geoConicConformal","geoConicEqualArea","geoConicEquidistant","geoEqualEarth","geoEquirectangular","geoGnomonic","identity","reflectY","geoMercator","geoOrthographic","geoStereographic","geoTransverseMercator","namedProjection","height","marginLeft","marginRight","marginTop","marginBottom","dx","dy","x1","y1","x2","y2","s","geoClipRectangle","maybePostClip","transform","tx","ty","x0","y0","geoPath","bounds","k","geoTransform","point","y","kx","ky","rotate","precision","clipAngle","scale","translate","aspectRatio","parallels","fitSize","createContext","className","create","select","creator","documentElement","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","t","reverse","ordinalScheme","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","channels","nice","clamp","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","find","h25","quantile","h50","median","inferLogDomain","v","inferQuantileDomain","createScaleD","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","fill","inferHint","stroke","inferSymbolHint","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","sort","candidate","normalizeScale","typeProjection","some","asOrdinalType","filter","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","splice","pop","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","padding","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","numberFormat","compute","cacheValue","cacheKeys","memoize1","locale","Intl","NumberFormat","formatIsoDate","isoFormat","impliedString","impliedValue","formatNumber","formatAuto","validClassName","maybeClassName","applyInlineStyles","selection","style","property","element","inferFontVariant","maybeScale","legendItems","swatch","columns","tickFormat","fontVariant","swatchSize","swatchWidth","swatchHeight","utcFormat","maybeAutoTickFormat","swatches","attr","extraStyle","selectAll","append","text","ownerDocument","div","insert","legendRegistry","fillOpacity","strokeOpacity","strokeWidth","vf","cf","vs","cs","sf","ss","p","path","legendColor","legend","rgb","interpolateOpacity","legendOptions","label","rest","o","defaults","inherit","isThresholdScale","legendSwatches","tickSize","svg","tickAdjust","g","applyRange","rangeRound","copy","Infinity","canvas","context2","getContext","fillStyle","fillRect","toDataURL","thresholdFormat","bandwidth","axisBottom","isArray","tickValues","remove","legendRamp","DEFAULT_SELECTOR","defaultOptions","enabled","itemSelector","Legend","calendar","_classCallCheck","root","shown","pluginOptions","scaleOptions","_this$options","destroy"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/Legend.min.js.map b/src/agenda_culturel/static/cal-heatmap/plugins/Legend.min.js.map index 2dc6637..4c5def6 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/Legend.min.js.map +++ b/src/agenda_culturel/static/cal-heatmap/plugins/Legend.min.js.map @@ -1 +1 @@ -{"version":3,"file":"Legend.min.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/@observablehq/plot/src/defined.js","../../node_modules/isoformat/src/format.js","../../node_modules/isoformat/src/parse.js","../../node_modules/@observablehq/plot/src/time.js","../../node_modules/@observablehq/plot/src/options.js","../../node_modules/@observablehq/plot/src/scales/index.js","../../node_modules/@observablehq/plot/src/symbol.js","../../node_modules/@observablehq/plot/src/warnings.js","../../node_modules/@observablehq/plot/src/projection.js","../../node_modules/@observablehq/plot/src/context.js","../../node_modules/@observablehq/plot/src/scales/schemes.js","../../node_modules/@observablehq/plot/src/scales/quantitative.js","../../node_modules/@observablehq/plot/src/scales/diverging.js","../../node_modules/@observablehq/plot/src/scales/temporal.js","../../node_modules/@observablehq/plot/src/scales/ordinal.js","../../node_modules/@observablehq/plot/src/scales.js","../../node_modules/@observablehq/plot/src/format.js","../../node_modules/@observablehq/plot/src/memoize.js","../../node_modules/@observablehq/plot/src/style.js","../../node_modules/@observablehq/plot/src/axes.js","../../node_modules/@observablehq/plot/src/legends/swatches.js","../../node_modules/@observablehq/plot/src/legends.js","../../node_modules/@observablehq/plot/src/legends/ramp.js","../../../src/plugins/Legend.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","export default function format(date, fallback) {\n if (!(date instanceof Date)) date = new Date(+date);\n if (isNaN(date)) return typeof fallback === \"function\" ? fallback(date) : fallback;\n const hours = date.getUTCHours();\n const minutes = date.getUTCMinutes();\n const seconds = date.getUTCSeconds();\n const milliseconds = date.getUTCMilliseconds();\n return `${formatYear(date.getUTCFullYear(), 4)}-${pad(date.getUTCMonth() + 1, 2)}-${pad(date.getUTCDate(), 2)}${\n hours || minutes || seconds || milliseconds ? `T${pad(hours, 2)}:${pad(minutes, 2)}${\n seconds || milliseconds ? `:${pad(seconds, 2)}${\n milliseconds ? `.${pad(milliseconds, 3)}` : ``\n }` : ``\n }Z` : ``\n }`;\n}\n\nfunction formatYear(year) {\n return year < 0 ? `-${pad(-year, 6)}`\n : year > 9999 ? `+${pad(year, 6)}`\n : pad(year, 4);\n}\n\nfunction pad(value, width) {\n return `${value}`.padStart(width, \"0\");\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n geoAlbers,\n geoAlbersUsa,\n geoAzimuthalEqualArea,\n geoAzimuthalEquidistant,\n geoClipRectangle,\n geoConicConformal,\n geoConicEqualArea,\n geoConicEquidistant,\n geoEqualEarth,\n geoEquirectangular,\n geoGnomonic,\n geoMercator,\n geoOrthographic,\n geoPath,\n geoStereographic,\n geoTransform,\n geoTransverseMercator\n} from \"d3\";\nimport {valueObject} from \"./channel.js\";\nimport {coerceNumbers, constant, isObject} from \"./options.js\";\nimport {warn} from \"./warnings.js\";\n\nconst pi = Math.PI;\nconst tau = 2 * pi;\nconst defaultAspectRatio = 0.618;\n\nexport function createProjection(\n {\n projection,\n inset: globalInset = 0,\n insetTop = globalInset,\n insetRight = globalInset,\n insetBottom = globalInset,\n insetLeft = globalInset\n } = {},\n dimensions\n) {\n if (projection == null) return;\n if (typeof projection.stream === \"function\") return projection; // d3 projection\n let options;\n let domain;\n let clip = \"frame\";\n\n // If the projection was specified as an object with additional options,\n // extract those. The order of precedence for insetTop (and other insets) is:\n // projection.insetTop, projection.inset, (global) insetTop, (global) inset.\n // Any other options on this object will be passed through to the initializer.\n if (isObject(projection)) {\n let inset;\n ({\n type: projection,\n domain,\n inset,\n insetTop = inset !== undefined ? inset : insetTop,\n insetRight = inset !== undefined ? inset : insetRight,\n insetBottom = inset !== undefined ? inset : insetBottom,\n insetLeft = inset !== undefined ? inset : insetLeft,\n clip = clip,\n ...options\n } = projection);\n if (projection == null) return;\n }\n\n // For named projections, retrieve the corresponding projection initializer.\n if (typeof projection !== \"function\") ({type: projection} = namedProjection(projection));\n\n // Compute the frame dimensions and invoke the projection initializer.\n const {width, height, marginLeft, marginRight, marginTop, marginBottom} = dimensions;\n const dx = width - marginLeft - marginRight - insetLeft - insetRight;\n const dy = height - marginTop - marginBottom - insetTop - insetBottom;\n projection = projection?.({width: dx, height: dy, clip, ...options});\n\n // The projection initializer might decide to not use a projection.\n if (projection == null) return;\n clip = maybePostClip(clip, marginLeft, marginTop, width - marginRight, height - marginBottom);\n\n // Translate the origin to the top-left corner, respecting margins and insets.\n let tx = marginLeft + insetLeft;\n let ty = marginTop + insetTop;\n let transform;\n\n // If a domain is specified, fit the projection to the frame.\n if (domain != null) {\n const [[x0, y0], [x1, y1]] = geoPath(projection).bounds(domain);\n const k = Math.min(dx / (x1 - x0), dy / (y1 - y0));\n if (k > 0) {\n tx -= (k * (x0 + x1) - dx) / 2;\n ty -= (k * (y0 + y1) - dy) / 2;\n transform = geoTransform({\n point(x, y) {\n this.stream.point(x * k + tx, y * k + ty);\n }\n });\n } else {\n warn(`Warning: the projection could not be fit to the specified domain; using the default scale.`);\n }\n }\n\n transform ??=\n tx === 0 && ty === 0\n ? identity()\n : geoTransform({\n point(x, y) {\n this.stream.point(x + tx, y + ty);\n }\n });\n\n return {stream: (s) => projection.stream(transform.stream(clip(s)))};\n}\n\nfunction namedProjection(projection) {\n switch (`${projection}`.toLowerCase()) {\n case \"albers-usa\":\n return scaleProjection(geoAlbersUsa, 0.7463, 0.4673);\n case \"albers\":\n return conicProjection(geoAlbers, 0.7463, 0.4673);\n case \"azimuthal-equal-area\":\n return scaleProjection(geoAzimuthalEqualArea, 4, 4);\n case \"azimuthal-equidistant\":\n return scaleProjection(geoAzimuthalEquidistant, tau, tau);\n case \"conic-conformal\":\n return conicProjection(geoConicConformal, tau, tau);\n case \"conic-equal-area\":\n return conicProjection(geoConicEqualArea, 6.1702, 2.9781);\n case \"conic-equidistant\":\n return conicProjection(geoConicEquidistant, 7.312, 3.6282);\n case \"equal-earth\":\n return scaleProjection(geoEqualEarth, 5.4133, 2.6347);\n case \"equirectangular\":\n return scaleProjection(geoEquirectangular, tau, pi);\n case \"gnomonic\":\n return scaleProjection(geoGnomonic, 3.4641, 3.4641);\n case \"identity\":\n return {type: identity};\n case \"reflect-y\":\n return {type: reflectY};\n case \"mercator\":\n return scaleProjection(geoMercator, tau, tau);\n case \"orthographic\":\n return scaleProjection(geoOrthographic, 2, 2);\n case \"stereographic\":\n return scaleProjection(geoStereographic, 2, 2);\n case \"transverse-mercator\":\n return scaleProjection(geoTransverseMercator, tau, tau);\n default:\n throw new Error(`unknown projection type: ${projection}`);\n }\n}\n\nfunction maybePostClip(clip, x1, y1, x2, y2) {\n if (clip === false || clip == null || typeof clip === \"number\") return (s) => s;\n if (clip === true) clip = \"frame\";\n switch (`${clip}`.toLowerCase()) {\n case \"frame\":\n return geoClipRectangle(x1, y1, x2, y2);\n default:\n throw new Error(`unknown projection clip type: ${clip}`);\n }\n}\n\nfunction scaleProjection(createProjection, kx, ky) {\n return {\n type: ({width, height, rotate, precision = 0.15, clip}) => {\n const projection = createProjection();\n if (precision != null) projection.precision?.(precision);\n if (rotate != null) projection.rotate?.(rotate);\n if (typeof clip === \"number\") projection.clipAngle?.(clip);\n projection.scale(Math.min(width / kx, height / ky));\n projection.translate([width / 2, height / 2]);\n return projection;\n },\n aspectRatio: ky / kx\n };\n}\n\nfunction conicProjection(createProjection, kx, ky) {\n const {type, aspectRatio} = scaleProjection(createProjection, kx, ky);\n return {\n type: (options) => {\n const {parallels, domain, width, height} = options;\n const projection = type(options);\n if (parallels != null) {\n projection.parallels(parallels);\n if (domain === undefined) {\n projection.fitSize([width, height], {type: \"Sphere\"});\n }\n }\n return projection;\n },\n aspectRatio\n };\n}\n\nconst identity = constant({stream: (stream) => stream});\n\nconst reflectY = constant(\n geoTransform({\n point(x, y) {\n this.stream.point(x, -y);\n }\n })\n);\n\n// Applies a point-wise projection to the given paired x and y channels.\n// Note: mutates values!\nexport function maybeProject(cx, cy, channels, values, context) {\n const x = channels[cx] && channels[cx].scale === \"x\";\n const y = channels[cy] && channels[cy].scale === \"y\";\n if (x && y) {\n project(cx, cy, values, context.projection);\n } else if (x) {\n throw new Error(`projection requires paired x and y channels; ${cx} is missing ${cy}`);\n } else if (y) {\n throw new Error(`projection requires paired x and y channels; ${cy} is missing ${cx}`);\n }\n}\n\nfunction project(cx, cy, values, projection) {\n const x = values[cx];\n const y = values[cy];\n const n = x.length;\n const X = (values[cx] = new Float64Array(n).fill(NaN));\n const Y = (values[cy] = new Float64Array(n).fill(NaN));\n let i;\n const stream = projection.stream({\n point(x, y) {\n X[i] = x;\n Y[i] = y;\n }\n });\n for (i = 0; i < n; ++i) {\n stream.point(x[i], y[i]);\n }\n}\n\n// When a named projection is specified, we can use its natural aspect ratio to\n// determine a good value for the projection’s height based on the desired\n// width. When we don’t have a way to know, the golden ratio is our best guess.\n// Due to a circular dependency (we need to know the height before we can\n// construct the projection), we have to test the raw projection option rather\n// than the materialized projection; therefore we must be extremely careful that\n// the logic of this function exactly matches Projection above!\nexport function projectionAspectRatio(projection, marks) {\n if (typeof projection?.stream === \"function\") return defaultAspectRatio;\n if (isObject(projection)) projection = projection.type;\n if (projection == null) return hasGeometry(marks) ? defaultAspectRatio : undefined;\n if (typeof projection !== \"function\") {\n const {aspectRatio} = namedProjection(projection);\n if (aspectRatio) return aspectRatio;\n }\n return defaultAspectRatio;\n}\n\n// Extract the (possibly) scaled values for the x and y channels, and apply the\n// projection if any.\nexport function applyPosition(channels, scales, context) {\n const {x, y} = channels;\n let position = {};\n if (x) position.x = x;\n if (y) position.y = y;\n position = valueObject(position, scales);\n if (context.projection) maybeProject(\"x\", \"y\", channels, position, context);\n if (x) position.x = coerceNumbers(position.x);\n if (y) position.y = coerceNumbers(position.y);\n return position;\n}\n\nfunction hasGeometry(marks) {\n for (const mark of marks) if (mark.channels.geometry) return true;\n return false;\n}\n","import {creator, select} from \"d3\";\nimport {createProjection} from \"./projection.js\";\n\nexport function createContext(options = {}, dimensions, className) {\n const {document = typeof window !== \"undefined\" ? window.document : undefined} = options;\n return {document, className, projection: createProjection(options, dimensions)};\n}\n\nexport function create(name, {document}) {\n return select(creator(name).call(document.documentElement));\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","import {format as isoFormat} from \"isoformat\";\nimport {string} from \"./options.js\";\nimport {memoize1} from \"./memoize.js\";\n\nconst numberFormat = memoize1((locale) => {\n return new Intl.NumberFormat(locale);\n});\n\nconst monthFormat = memoize1((locale, month) => {\n return new Intl.DateTimeFormat(locale, {timeZone: \"UTC\", ...(month && {month})});\n});\n\nconst weekdayFormat = memoize1((locale, weekday) => {\n return new Intl.DateTimeFormat(locale, {timeZone: \"UTC\", ...(weekday && {weekday})});\n});\n\nexport function formatNumber(locale = \"en-US\") {\n const format = numberFormat(locale);\n return (i) => (i != null && !isNaN(i) ? format.format(i) : undefined);\n}\n\nexport function formatMonth(locale = \"en-US\", format = \"short\") {\n const fmt = monthFormat(locale, format);\n return (i) => (i != null && !isNaN((i = +new Date(Date.UTC(2000, +i)))) ? fmt.format(i) : undefined);\n}\n\nexport function formatWeekday(locale = \"en-US\", format = \"short\") {\n const fmt = weekdayFormat(locale, format);\n return (i) => (i != null && !isNaN((i = +new Date(Date.UTC(2001, 0, +i)))) ? fmt.format(i) : undefined);\n}\n\nexport function formatIsoDate(date) {\n return isoFormat(date, \"Invalid Date\");\n}\n\nexport function formatAuto(locale = \"en-US\") {\n const number = formatNumber(locale);\n return (v) => (v instanceof Date ? formatIsoDate : typeof v === \"number\" ? number : string)(v);\n}\n\n// TODO When Plot supports a top-level locale option, this should be removed\n// because it lacks context to know which locale to use; formatAuto should be\n// used instead whenever possible.\nexport const formatDefault = formatAuto();\n","export function memoize1(compute) {\n let cacheValue, cacheKeys;\n return (...keys) => {\n if (cacheKeys?.length !== keys.length || cacheKeys.some((k, i) => k !== keys[i])) {\n cacheKeys = keys;\n cacheValue = compute(...keys);\n }\n return cacheValue;\n };\n}\n","import {geoPath, group, namespaces} from \"d3\";\nimport {create} from \"./context.js\";\nimport {defined, nonempty} from \"./defined.js\";\nimport {formatDefault} from \"./format.js\";\nimport {\n string,\n number,\n maybeColorChannel,\n maybeNumberChannel,\n maybeKeyword,\n isNoneish,\n isNone,\n isRound,\n keyof\n} from \"./options.js\";\nimport {warn} from \"./warnings.js\";\n\nexport const offset = (typeof window !== \"undefined\" ? window.devicePixelRatio > 1 : typeof it === \"undefined\") ? 0 : 0.5; // prettier-ignore\n\nlet nextClipId = 0;\n\nfunction getClipId() {\n return `plot-clip-${++nextClipId}`;\n}\n\nexport function styles(\n mark,\n {\n title,\n href,\n ariaLabel: variaLabel,\n ariaDescription,\n ariaHidden,\n target,\n fill,\n fillOpacity,\n stroke,\n strokeWidth,\n strokeOpacity,\n strokeLinejoin,\n strokeLinecap,\n strokeMiterlimit,\n strokeDasharray,\n strokeDashoffset,\n opacity,\n mixBlendMode,\n paintOrder,\n pointerEvents,\n shapeRendering\n },\n {\n ariaLabel: cariaLabel,\n fill: defaultFill = \"currentColor\",\n fillOpacity: defaultFillOpacity,\n stroke: defaultStroke = \"none\",\n strokeOpacity: defaultStrokeOpacity,\n strokeWidth: defaultStrokeWidth,\n strokeLinecap: defaultStrokeLinecap,\n strokeLinejoin: defaultStrokeLinejoin,\n strokeMiterlimit: defaultStrokeMiterlimit,\n paintOrder: defaultPaintOrder\n }\n) {\n // Some marks don’t support fill (e.g., tick and rule).\n if (defaultFill === null) {\n fill = null;\n fillOpacity = null;\n }\n\n // Some marks don’t support stroke (e.g., image).\n if (defaultStroke === null) {\n stroke = null;\n strokeOpacity = null;\n }\n\n // Some marks default to fill with no stroke, while others default to stroke\n // with no fill. For example, bar and area default to fill, while dot and line\n // default to stroke. For marks that fill by default, the default fill only\n // applies if the stroke is (constant) none; if you set a stroke, then the\n // default fill becomes none. Similarly for marks that stroke by stroke, the\n // default stroke only applies if the fill is (constant) none.\n if (isNoneish(defaultFill)) {\n if (!isNoneish(defaultStroke) && !isNoneish(fill)) defaultStroke = \"none\";\n } else {\n if (isNoneish(defaultStroke) && !isNoneish(stroke)) defaultFill = \"none\";\n }\n\n const [vfill, cfill] = maybeColorChannel(fill, defaultFill);\n const [vfillOpacity, cfillOpacity] = maybeNumberChannel(fillOpacity, defaultFillOpacity);\n const [vstroke, cstroke] = maybeColorChannel(stroke, defaultStroke);\n const [vstrokeOpacity, cstrokeOpacity] = maybeNumberChannel(strokeOpacity, defaultStrokeOpacity);\n const [vopacity, copacity] = maybeNumberChannel(opacity);\n\n // For styles that have no effect if there is no stroke, only apply the\n // defaults if the stroke is not the constant none. (If stroke is a channel,\n // then cstroke will be undefined, but there’s still a stroke; hence we don’t\n // use isNoneish here.)\n if (!isNone(cstroke)) {\n if (strokeWidth === undefined) strokeWidth = defaultStrokeWidth;\n if (strokeLinecap === undefined) strokeLinecap = defaultStrokeLinecap;\n if (strokeLinejoin === undefined) strokeLinejoin = defaultStrokeLinejoin;\n\n // The default stroke miterlimit need not be applied if the current stroke\n // is the constant round; this only has effect on miter joins.\n if (strokeMiterlimit === undefined && !isRound(strokeLinejoin)) strokeMiterlimit = defaultStrokeMiterlimit;\n\n // The paint order only takes effect if there is both a fill and a stroke\n // (at least if we ignore markers, which no built-in marks currently use).\n if (!isNone(cfill) && paintOrder === undefined) paintOrder = defaultPaintOrder;\n }\n\n const [vstrokeWidth, cstrokeWidth] = maybeNumberChannel(strokeWidth);\n\n // Some marks don’t support fill (e.g., tick and rule).\n if (defaultFill !== null) {\n mark.fill = impliedString(cfill, \"currentColor\");\n mark.fillOpacity = impliedNumber(cfillOpacity, 1);\n }\n\n // Some marks don’t support stroke (e.g., image).\n if (defaultStroke !== null) {\n mark.stroke = impliedString(cstroke, \"none\");\n mark.strokeWidth = impliedNumber(cstrokeWidth, 1);\n mark.strokeOpacity = impliedNumber(cstrokeOpacity, 1);\n mark.strokeLinejoin = impliedString(strokeLinejoin, \"miter\");\n mark.strokeLinecap = impliedString(strokeLinecap, \"butt\");\n mark.strokeMiterlimit = impliedNumber(strokeMiterlimit, 4);\n mark.strokeDasharray = impliedString(strokeDasharray, \"none\");\n mark.strokeDashoffset = impliedString(strokeDashoffset, \"0\");\n }\n\n mark.target = string(target);\n mark.ariaLabel = string(cariaLabel);\n mark.ariaDescription = string(ariaDescription);\n mark.ariaHidden = string(ariaHidden);\n mark.opacity = impliedNumber(copacity, 1);\n mark.mixBlendMode = impliedString(mixBlendMode, \"normal\");\n mark.paintOrder = impliedString(paintOrder, \"normal\");\n mark.pointerEvents = impliedString(pointerEvents, \"auto\");\n mark.shapeRendering = impliedString(shapeRendering, \"auto\");\n\n return {\n title: {value: title, optional: true},\n href: {value: href, optional: true},\n ariaLabel: {value: variaLabel, optional: true},\n fill: {value: vfill, scale: \"auto\", optional: true},\n fillOpacity: {value: vfillOpacity, scale: \"auto\", optional: true},\n stroke: {value: vstroke, scale: \"auto\", optional: true},\n strokeOpacity: {value: vstrokeOpacity, scale: \"auto\", optional: true},\n strokeWidth: {value: vstrokeWidth, optional: true},\n opacity: {value: vopacity, scale: \"auto\", optional: true}\n };\n}\n\n// Applies the specified titles via selection.call.\nexport function applyTitle(selection, L) {\n if (L)\n selection\n .filter((i) => nonempty(L[i]))\n .append(\"title\")\n .call(applyText, L);\n}\n\n// Like applyTitle, but for grouped data (lines, areas).\nexport function applyTitleGroup(selection, L) {\n if (L)\n selection\n .filter(([i]) => nonempty(L[i]))\n .append(\"title\")\n .call(applyTextGroup, L);\n}\n\nexport function applyText(selection, T) {\n if (T) selection.text((i) => formatDefault(T[i]));\n}\n\nexport function applyTextGroup(selection, T) {\n if (T) selection.text(([i]) => formatDefault(T[i]));\n}\n\nexport function applyChannelStyles(\n selection,\n {target},\n {\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n }\n) {\n if (AL) applyAttr(selection, \"aria-label\", (i) => AL[i]);\n if (F) applyAttr(selection, \"fill\", (i) => F[i]);\n if (FO) applyAttr(selection, \"fill-opacity\", (i) => FO[i]);\n if (S) applyAttr(selection, \"stroke\", (i) => S[i]);\n if (SO) applyAttr(selection, \"stroke-opacity\", (i) => SO[i]);\n if (SW) applyAttr(selection, \"stroke-width\", (i) => SW[i]);\n if (O) applyAttr(selection, \"opacity\", (i) => O[i]);\n if (H) applyHref(selection, (i) => H[i], target);\n applyTitle(selection, T);\n}\n\nexport function applyGroupedChannelStyles(\n selection,\n {target},\n {\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n }\n) {\n if (AL) applyAttr(selection, \"aria-label\", ([i]) => AL[i]);\n if (F) applyAttr(selection, \"fill\", ([i]) => F[i]);\n if (FO) applyAttr(selection, \"fill-opacity\", ([i]) => FO[i]);\n if (S) applyAttr(selection, \"stroke\", ([i]) => S[i]);\n if (SO) applyAttr(selection, \"stroke-opacity\", ([i]) => SO[i]);\n if (SW) applyAttr(selection, \"stroke-width\", ([i]) => SW[i]);\n if (O) applyAttr(selection, \"opacity\", ([i]) => O[i]);\n if (H) applyHref(selection, ([i]) => H[i], target);\n applyTitleGroup(selection, T);\n}\n\nfunction groupAesthetics({\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n}) {\n return [AL, T, F, FO, S, SO, SW, O, H].filter((c) => c !== undefined);\n}\n\nexport function groupZ(I, Z, z) {\n const G = group(I, (i) => Z[i]);\n if (z === undefined && G.size > I.length >> 1) {\n warn(\n `Warning: the implicit z channel has high cardinality. This may occur when the fill or stroke channel is associated with quantitative data rather than ordinal or categorical data. You can suppress this warning by setting the z option explicitly; if this data represents a single series, set z to null.`\n );\n }\n return G.values();\n}\n\nexport function* groupIndex(I, position, {z}, channels) {\n const {z: Z} = channels; // group channel\n const A = groupAesthetics(channels); // aesthetic channels\n const C = [...position, ...A]; // all channels\n\n // Group the current index by Z (if any).\n for (const G of Z ? groupZ(I, Z, z) : [I]) {\n let Ag; // the A-values (aesthetics) of the current group, if any\n let Gg; // the current group index (a subset of G, and I), if any\n out: for (const i of G) {\n // If any channel has an undefined value for this index, skip it.\n for (const c of C) {\n if (!defined(c[i])) {\n if (Gg) Gg.push(-1);\n continue out;\n }\n }\n\n // Otherwise, if this is a new group, record the aesthetics for this\n // group. Yield the current group and start a new one.\n if (Ag === undefined) {\n if (Gg) yield Gg;\n (Ag = A.map((c) => keyof(c[i]))), (Gg = [i]);\n continue;\n }\n\n // Otherwise, add the current index to the current group. Then, if any of\n // the aesthetics don’t match the current group, yield the current group\n // and start a new group of the current index.\n Gg.push(i);\n for (let j = 0; j < A.length; ++j) {\n const k = keyof(A[j][i]);\n if (k !== Ag[j]) {\n yield Gg;\n (Ag = A.map((c) => keyof(c[i]))), (Gg = [i]);\n continue out;\n }\n }\n }\n\n // Yield the current group, if any.\n if (Gg) yield Gg;\n }\n}\n\n// TODO Accept other types of clips (paths, urls, x, y, other marks…)?\n// https://github.com/observablehq/plot/issues/181\nexport function maybeClip(clip) {\n if (clip === true) clip = \"frame\";\n else if (clip === false) clip = null;\n return maybeKeyword(clip, \"clip\", [\"frame\", \"sphere\"]);\n}\n\n// Note: may mutate selection.node!\nfunction applyClip(selection, mark, dimensions, context) {\n let clipUrl;\n switch (mark.clip) {\n case \"frame\": {\n const {width, height, marginLeft, marginRight, marginTop, marginBottom} = dimensions;\n const id = getClipId();\n clipUrl = `url(#${id})`;\n selection = create(\"svg:g\", context)\n .call((g) =>\n g\n .append(\"svg:clipPath\")\n .attr(\"id\", id)\n .append(\"rect\")\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop)\n .attr(\"width\", width - marginRight - marginLeft)\n .attr(\"height\", height - marginTop - marginBottom)\n )\n .each(function () {\n this.appendChild(selection.node());\n selection.node = () => this; // Note: mutation!\n });\n break;\n }\n case \"sphere\": {\n const {projection} = context;\n if (!projection) throw new Error(`the \"sphere\" clip option requires a projection`);\n const id = getClipId();\n clipUrl = `url(#${id})`;\n selection\n .append(\"clipPath\")\n .attr(\"id\", id)\n .append(\"path\")\n .attr(\"d\", geoPath(projection)({type: \"Sphere\"}));\n break;\n }\n }\n // Here we’re careful to apply the ARIA attributes to the outer G element when\n // clipping is applied, and to apply the ARIA attributes before any other\n // attributes (for readability).\n applyAttr(selection, \"aria-label\", mark.ariaLabel);\n applyAttr(selection, \"aria-description\", mark.ariaDescription);\n applyAttr(selection, \"aria-hidden\", mark.ariaHidden);\n applyAttr(selection, \"clip-path\", clipUrl);\n}\n\n// Note: may mutate selection.node!\nexport function applyIndirectStyles(selection, mark, dimensions, context) {\n applyClip(selection, mark, dimensions, context);\n applyAttr(selection, \"fill\", mark.fill);\n applyAttr(selection, \"fill-opacity\", mark.fillOpacity);\n applyAttr(selection, \"stroke\", mark.stroke);\n applyAttr(selection, \"stroke-width\", mark.strokeWidth);\n applyAttr(selection, \"stroke-opacity\", mark.strokeOpacity);\n applyAttr(selection, \"stroke-linejoin\", mark.strokeLinejoin);\n applyAttr(selection, \"stroke-linecap\", mark.strokeLinecap);\n applyAttr(selection, \"stroke-miterlimit\", mark.strokeMiterlimit);\n applyAttr(selection, \"stroke-dasharray\", mark.strokeDasharray);\n applyAttr(selection, \"stroke-dashoffset\", mark.strokeDashoffset);\n applyAttr(selection, \"shape-rendering\", mark.shapeRendering);\n applyAttr(selection, \"paint-order\", mark.paintOrder);\n applyAttr(selection, \"pointer-events\", mark.pointerEvents);\n}\n\nexport function applyDirectStyles(selection, mark) {\n applyStyle(selection, \"mix-blend-mode\", mark.mixBlendMode);\n applyAttr(selection, \"opacity\", mark.opacity);\n}\n\nfunction applyHref(selection, href, target) {\n selection.each(function (i) {\n const h = href(i);\n if (h != null) {\n const a = this.ownerDocument.createElementNS(namespaces.svg, \"a\");\n a.setAttribute(\"fill\", \"inherit\");\n a.setAttributeNS(namespaces.xlink, \"href\", h);\n if (target != null) a.setAttribute(\"target\", target);\n this.parentNode.insertBefore(a, this).appendChild(this);\n }\n });\n}\n\nexport function applyAttr(selection, name, value) {\n if (value != null) selection.attr(name, value);\n}\n\nexport function applyStyle(selection, name, value) {\n if (value != null) selection.style(name, value);\n}\n\nexport function applyTransform(selection, mark, {x, y}, tx = offset, ty = offset) {\n tx += mark.dx;\n ty += mark.dy;\n if (x?.bandwidth) tx += x.bandwidth() / 2;\n if (y?.bandwidth) ty += y.bandwidth() / 2;\n if (tx || ty) selection.attr(\"transform\", `translate(${tx},${ty})`);\n}\n\nexport function impliedString(value, impliedValue) {\n if ((value = string(value)) !== impliedValue) return value;\n}\n\nexport function impliedNumber(value, impliedValue) {\n if ((value = number(value)) !== impliedValue) return value;\n}\n\n// https://www.w3.org/TR/CSS21/grammar.html\nconst validClassName =\n /^-?([_a-z]|[\\240-\\377]|\\\\[0-9a-f]{1,6}(\\r\\n|[ \\t\\r\\n\\f])?|\\\\[^\\r\\n\\f0-9a-f])([_a-z0-9-]|[\\240-\\377]|\\\\[0-9a-f]{1,6}(\\r\\n|[ \\t\\r\\n\\f])?|\\\\[^\\r\\n\\f0-9a-f])*$/i;\n\nexport function maybeClassName(name) {\n // The default should be changed whenever the default styles are changed, so\n // as to avoid conflict when multiple versions of Plot are on the page.\n if (name === undefined) return \"plot-d6a7b5\";\n name = `${name}`;\n if (!validClassName.test(name)) throw new Error(`invalid class name: ${name}`);\n return name;\n}\n\nexport function applyInlineStyles(selection, style) {\n if (typeof style === \"string\") {\n selection.property(\"style\", style);\n } else if (style != null) {\n for (const element of selection) {\n Object.assign(element.style, style);\n }\n }\n}\n\nexport function applyFrameAnchor({frameAnchor}, {width, height, marginTop, marginRight, marginBottom, marginLeft}) {\n return [\n /left$/.test(frameAnchor)\n ? marginLeft\n : /right$/.test(frameAnchor)\n ? width - marginRight\n : (marginLeft + width - marginRight) / 2,\n /^top/.test(frameAnchor)\n ? marginTop\n : /^bottom/.test(frameAnchor)\n ? height - marginBottom\n : (marginTop + height - marginBottom) / 2\n ];\n}\n","import {format, utcFormat} from \"d3\";\nimport {formatIsoDate} from \"./format.js\";\nimport {constant, isTemporal, string} from \"./options.js\";\nimport {isOrdinalScale} from \"./scales.js\";\n\nexport function inferFontVariant(scale) {\n return isOrdinalScale(scale) && scale.interval === undefined ? undefined : \"tabular-nums\";\n}\n\n// D3 doesn’t provide a tick format for ordinal scales; we want shorthand when\n// an ordinal domain is numbers or dates, and we want null to mean the empty\n// string, not the default identity format. TODO Remove this in favor of the\n// axis mark’s inferTickFormat.\nexport function maybeAutoTickFormat(tickFormat, domain) {\n return tickFormat === undefined\n ? isTemporal(domain)\n ? formatIsoDate\n : string\n : typeof tickFormat === \"function\"\n ? tickFormat\n : (typeof tickFormat === \"string\" ? (isTemporal(domain) ? utcFormat : format) : constant)(tickFormat);\n}\n","import {pathRound as path} from \"d3\";\nimport {inferFontVariant, maybeAutoTickFormat} from \"../axes.js\";\nimport {createContext, create} from \"../context.js\";\nimport {isNoneish, maybeColorChannel, maybeNumberChannel} from \"../options.js\";\nimport {isOrdinalScale, isThresholdScale} from \"../scales.js\";\nimport {applyInlineStyles, impliedString, maybeClassName} from \"../style.js\";\n\nfunction maybeScale(scale, key) {\n if (key == null) return key;\n const s = scale(key);\n if (!s) throw new Error(`scale not found: ${key}`);\n return s;\n}\n\nexport function legendSwatches(color, {opacity, ...options} = {}) {\n if (!isOrdinalScale(color) && !isThresholdScale(color))\n throw new Error(`swatches legend requires ordinal or threshold color scale (not ${color.type})`);\n return legendItems(color, options, (selection, scale, width, height) =>\n selection\n .append(\"svg\")\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"fill\", scale.scale)\n .attr(\"fill-opacity\", maybeNumberChannel(opacity)[1])\n .append(\"rect\")\n .attr(\"width\", \"100%\")\n .attr(\"height\", \"100%\")\n );\n}\n\nexport function legendSymbols(\n symbol,\n {\n fill = symbol.hint?.fill !== undefined ? symbol.hint.fill : \"none\",\n fillOpacity = 1,\n stroke = symbol.hint?.stroke !== undefined ? symbol.hint.stroke : isNoneish(fill) ? \"currentColor\" : \"none\",\n strokeOpacity = 1,\n strokeWidth = 1.5,\n r = 4.5,\n ...options\n } = {},\n scale\n) {\n const [vf, cf] = maybeColorChannel(fill);\n const [vs, cs] = maybeColorChannel(stroke);\n const sf = maybeScale(scale, vf);\n const ss = maybeScale(scale, vs);\n const size = r * r * Math.PI;\n fillOpacity = maybeNumberChannel(fillOpacity)[1];\n strokeOpacity = maybeNumberChannel(strokeOpacity)[1];\n strokeWidth = maybeNumberChannel(strokeWidth)[1];\n return legendItems(symbol, options, (selection, scale, width, height) =>\n selection\n .append(\"svg\")\n .attr(\"viewBox\", \"-8 -8 16 16\")\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"fill\", vf === \"color\" ? (d) => sf.scale(d) : cf)\n .attr(\"fill-opacity\", fillOpacity)\n .attr(\"stroke\", vs === \"color\" ? (d) => ss.scale(d) : cs)\n .attr(\"stroke-opacity\", strokeOpacity)\n .attr(\"stroke-width\", strokeWidth)\n .append(\"path\")\n .attr(\"d\", (d) => {\n const p = path();\n symbol.scale(d).draw(p, size);\n return p;\n })\n );\n}\n\nfunction legendItems(scale, options = {}, swatch) {\n let {\n columns,\n tickFormat,\n fontVariant = inferFontVariant(scale),\n // TODO label,\n swatchSize = 15,\n swatchWidth = swatchSize,\n swatchHeight = swatchSize,\n marginLeft = 0,\n className,\n style,\n width\n } = options;\n const context = createContext(options);\n className = maybeClassName(className);\n tickFormat = maybeAutoTickFormat(tickFormat, scale.domain);\n\n const swatches = create(\"div\", context).attr(\n \"class\",\n `${className}-swatches ${className}-swatches-${columns != null ? \"columns\" : \"wrap\"}`\n );\n\n let extraStyle;\n\n if (columns != null) {\n extraStyle = `.${className}-swatches-columns .${className}-swatch {\n display: flex;\n align-items: center;\n break-inside: avoid;\n padding-bottom: 1px;\n}\n.${className}-swatches-columns .${className}-swatch::before {\n flex-shrink: 0;\n}\n.${className}-swatches-columns .${className}-swatch-label {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}`;\n\n swatches\n .style(\"columns\", columns)\n .selectAll()\n .data(scale.domain)\n .enter()\n .append(\"div\")\n .attr(\"class\", `${className}-swatch`)\n .call(swatch, scale, swatchWidth, swatchHeight)\n .call((item) =>\n item.append(\"div\").attr(\"class\", `${className}-swatch-label`).attr(\"title\", tickFormat).text(tickFormat)\n );\n } else {\n extraStyle = `.${className}-swatches-wrap {\n display: flex;\n align-items: center;\n min-height: 33px;\n flex-wrap: wrap;\n}\n.${className}-swatches-wrap .${className}-swatch {\n display: inline-flex;\n align-items: center;\n margin-right: 1em;\n}`;\n\n swatches\n .selectAll()\n .data(scale.domain)\n .enter()\n .append(\"span\")\n .attr(\"class\", `${className}-swatch`)\n .call(swatch, scale, swatchWidth, swatchHeight)\n .append(function () {\n return this.ownerDocument.createTextNode(tickFormat.apply(this, arguments));\n });\n }\n\n return swatches\n .call((div) =>\n div.insert(\"style\", \"*\").text(\n `.${className}-swatches {\n font-family: system-ui, sans-serif;\n font-size: 10px;\n margin-bottom: 0.5em;\n}\n.${className}-swatch > svg {\n margin-right: 0.5em;\n overflow: visible;\n}\n${extraStyle}`\n )\n )\n .style(\"margin-left\", marginLeft ? `${+marginLeft}px` : null)\n .style(\"width\", width === undefined ? null : `${+width}px`)\n .style(\"font-variant\", impliedString(fontVariant, \"normal\"))\n .call(applyInlineStyles, style)\n .node();\n}\n","import {rgb} from \"d3\";\nimport {createContext} from \"./context.js\";\nimport {legendRamp} from \"./legends/ramp.js\";\nimport {legendSwatches, legendSymbols} from \"./legends/swatches.js\";\nimport {inherit, isScaleOptions} from \"./options.js\";\nimport {normalizeScale} from \"./scales.js\";\n\nconst legendRegistry = new Map([\n [\"symbol\", legendSymbols],\n [\"color\", legendColor],\n [\"opacity\", legendOpacity]\n]);\n\nexport function legend(options = {}) {\n for (const [key, value] of legendRegistry) {\n const scale = options[key];\n if (isScaleOptions(scale)) {\n // e.g., ignore {color: \"red\"}\n const context = createContext(options);\n let hint;\n // For symbol legends, pass a hint to the symbol scale.\n if (key === \"symbol\") {\n const {fill, stroke = fill === undefined && isScaleOptions(options.color) ? \"color\" : undefined} = options;\n hint = {fill, stroke};\n }\n return value(normalizeScale(key, scale, hint), legendOptions(context, scale, options), (key) =>\n isScaleOptions(options[key]) ? normalizeScale(key, options[key]) : null\n );\n }\n }\n throw new Error(\"unknown legend type; no scale found\");\n}\n\nexport function exposeLegends(scales, context, defaults = {}) {\n return (key, options) => {\n if (!legendRegistry.has(key)) throw new Error(`unknown legend type: ${key}`);\n if (!(key in scales)) return;\n return legendRegistry.get(key)(scales[key], legendOptions(context, defaults[key], options), (key) => scales[key]);\n };\n}\n\nfunction legendOptions({className, ...context}, {label, ticks, tickFormat} = {}, options) {\n return inherit(options, {className, ...context}, {label, ticks, tickFormat});\n}\n\nfunction legendColor(color, {legend = true, ...options}) {\n if (legend === true) legend = color.type === \"ordinal\" ? \"swatches\" : \"ramp\";\n if (color.domain === undefined) return;\n switch (`${legend}`.toLowerCase()) {\n case \"swatches\":\n return legendSwatches(color, options);\n case \"ramp\":\n return legendRamp(color, options);\n default:\n throw new Error(`unknown legend type: ${legend}`);\n }\n}\n\nfunction legendOpacity({type, interpolate, ...scale}, {legend = true, color = rgb(0, 0, 0), ...options}) {\n if (!interpolate) throw new Error(`${type} opacity scales are not supported`);\n if (legend === true) legend = \"ramp\";\n if (`${legend}`.toLowerCase() !== \"ramp\") throw new Error(`${legend} opacity legends are not supported`);\n return legendColor({type, ...scale, interpolate: interpolateOpacity(color)}, {legend, ...options});\n}\n\nfunction interpolateOpacity(color) {\n const {r, g, b} = rgb(color) || rgb(0, 0, 0); // treat invalid color as black\n return (t) => `rgba(${r},${g},${b},${t})`;\n}\n\nexport function createLegends(scales, context, options) {\n const legends = [];\n for (const [key, value] of legendRegistry) {\n const o = options[key];\n if (o?.legend && key in scales) {\n const legend = value(scales[key], legendOptions(context, scales[key], o), (key) => scales[key]);\n if (legend != null) legends.push(legend);\n }\n }\n return legends;\n}\n","import {quantize, interpolateNumber, piecewise, format, scaleBand, scaleLinear, axisBottom} from \"d3\";\nimport {inferFontVariant} from \"../axes.js\";\nimport {createContext, create} from \"../context.js\";\nimport {map, maybeNumberChannel} from \"../options.js\";\nimport {interpolatePiecewise} from \"../scales/quantitative.js\";\nimport {applyInlineStyles, impliedString, maybeClassName} from \"../style.js\";\n\nexport function legendRamp(color, options) {\n let {\n label = color.label,\n tickSize = 6,\n width = 240,\n height = 44 + tickSize,\n marginTop = 18,\n marginRight = 0,\n marginBottom = 16 + tickSize,\n marginLeft = 0,\n style,\n ticks = (width - marginLeft - marginRight) / 64,\n tickFormat,\n fontVariant = inferFontVariant(color),\n round = true,\n opacity,\n className\n } = options;\n const context = createContext(options);\n className = maybeClassName(className);\n opacity = maybeNumberChannel(opacity)[1];\n if (tickFormat === null) tickFormat = () => null;\n\n const svg = create(\"svg\", context)\n .attr(\"class\", `${className}-ramp`)\n .attr(\"font-family\", \"system-ui, sans-serif\")\n .attr(\"font-size\", 10)\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"viewBox\", `0 0 ${width} ${height}`)\n .call((svg) =>\n // Warning: if you edit this, change defaultClassName.\n svg.append(\"style\").text(\n `.${className}-ramp {\n display: block;\n background: white;\n height: auto;\n height: intrinsic;\n max-width: 100%;\n overflow: visible;\n}\n.${className}-ramp text {\n white-space: pre;\n}`\n )\n )\n .call(applyInlineStyles, style);\n\n let tickAdjust = (g) => g.selectAll(\".tick line\").attr(\"y1\", marginTop + marginBottom - height);\n\n let x;\n\n // Some D3 scales use scale.interpolate, some scale.interpolator, and some\n // scale.round; this normalizes the API so it works with all scale types.\n const applyRange = round ? (x, range) => x.rangeRound(range) : (x, range) => x.range(range);\n\n const {type, domain, range, interpolate, scale, pivot} = color;\n\n // Continuous\n if (interpolate) {\n // Often interpolate is a “fixed” interpolator on the [0, 1] interval, as\n // with a built-in color scheme, but sometimes it is a function that takes\n // two arguments and is used in conjunction with the range.\n const interpolator =\n range === undefined\n ? interpolate\n : piecewise(interpolate.length === 1 ? interpolatePiecewise(interpolate) : interpolate, range);\n\n // Construct a D3 scale of the same type, but with a range that evenly\n // divides the horizontal extent of the legend. (In the common case, the\n // domain.length is two, and so the range is simply the extent.) For a\n // diverging scale, we need an extra point in the range for the pivot such\n // that the pivot is always drawn in the middle.\n x = applyRange(\n scale.copy(),\n quantize(\n interpolateNumber(marginLeft, width - marginRight),\n Math.min(domain.length + (pivot !== undefined), range === undefined ? Infinity : range.length)\n )\n );\n\n // Construct a 256×1 canvas, filling each pixel using the interpolator.\n const n = 256;\n const canvas = context.document.createElement(\"canvas\");\n canvas.width = n;\n canvas.height = 1;\n const context2 = canvas.getContext(\"2d\");\n for (let i = 0, j = n - 1; i < n; ++i) {\n context2.fillStyle = interpolator(i / j);\n context2.fillRect(i, 0, 1, 1);\n }\n\n svg\n .append(\"image\")\n .attr(\"opacity\", opacity)\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop)\n .attr(\"width\", width - marginLeft - marginRight)\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"preserveAspectRatio\", \"none\")\n .attr(\"xlink:href\", canvas.toDataURL());\n }\n\n // Threshold\n else if (type === \"threshold\") {\n const thresholds = domain;\n\n const thresholdFormat =\n tickFormat === undefined ? (d) => d : typeof tickFormat === \"string\" ? format(tickFormat) : tickFormat;\n\n // Construct a linear scale with evenly-spaced ticks for each of the\n // thresholds; the domain extends one beyond the threshold extent.\n x = applyRange(scaleLinear().domain([-1, range.length - 1]), [marginLeft, width - marginRight]);\n\n svg\n .append(\"g\")\n .attr(\"fill-opacity\", opacity)\n .selectAll()\n .data(range)\n .enter()\n .append(\"rect\")\n .attr(\"x\", (d, i) => x(i - 1))\n .attr(\"y\", marginTop)\n .attr(\"width\", (d, i) => x(i) - x(i - 1))\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"fill\", (d) => d);\n\n ticks = map(thresholds, (_, i) => i);\n tickFormat = (i) => thresholdFormat(thresholds[i], i);\n }\n\n // Ordinal (hopefully!)\n else {\n x = applyRange(scaleBand().domain(domain), [marginLeft, width - marginRight]);\n\n svg\n .append(\"g\")\n .attr(\"fill-opacity\", opacity)\n .selectAll()\n .data(domain)\n .enter()\n .append(\"rect\")\n .attr(\"x\", x)\n .attr(\"y\", marginTop)\n .attr(\"width\", Math.max(0, x.bandwidth() - 1))\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"fill\", scale);\n\n tickAdjust = () => {};\n }\n\n svg\n .append(\"g\")\n .attr(\"transform\", `translate(0,${height - marginBottom})`)\n .call(\n axisBottom(x)\n .ticks(Array.isArray(ticks) ? null : ticks, typeof tickFormat === \"string\" ? tickFormat : undefined)\n .tickFormat(typeof tickFormat === \"function\" ? tickFormat : undefined)\n .tickSize(tickSize)\n .tickValues(Array.isArray(ticks) ? ticks : null)\n )\n .attr(\"font-size\", null)\n .attr(\"font-family\", null)\n .attr(\"font-variant\", impliedString(fontVariant, \"normal\"))\n .call(tickAdjust)\n .call((g) => g.select(\".domain\").remove());\n\n if (label !== undefined) {\n svg\n .append(\"text\")\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop - 6)\n .attr(\"fill\", \"currentColor\") // TODO move to stylesheet?\n .attr(\"font-weight\", \"bold\")\n .text(label);\n }\n\n return svg.node();\n}\n","import { select } from 'd3-selection';\nimport { legend } from '@observablehq/plot';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\n\ninterface LegendOptions extends PluginOptions {\n enabled: boolean;\n itemSelector: string | null;\n label: string | null;\n width: number;\n}\n\nconst DEFAULT_SELECTOR = '#ch-plugin-legend';\n\nconst defaultOptions: LegendOptions = {\n // Whether to display the legend\n enabled: true,\n\n itemSelector: null,\n\n label: null,\n\n width: 130,\n};\n\nexport default class Legend implements IPlugin {\n name = 'Legend';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: LegendOptions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n }\n\n paint(): Promise {\n const scaleOptions = this.calendar.options.options.scale;\n const { enabled, itemSelector } = this.options;\n\n if (!enabled || (itemSelector && select(itemSelector).empty())) {\n return this.destroy();\n }\n\n this.shown = true;\n\n this.root = select(\n itemSelector || this.calendar.options.options.itemSelector,\n );\n\n if (this.root.select(DEFAULT_SELECTOR).empty()) {\n this.root = this.root.append('div').attr('id', DEFAULT_SELECTOR.slice(1));\n } else {\n this.root = this.root.select(DEFAULT_SELECTOR);\n }\n\n // @ts-ignore\n const node = legend({\n ...scaleOptions,\n ...this.options,\n });\n\n this.root.selectAll('*').remove();\n this.root.append(() => node);\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","hiddenKeys","NATIVE_WEAK_MAP","sharedKey","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","require$$6","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toLength","lengthOfArrayLike","obj","toAbsoluteIndex","index","integer","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","SPECIES","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","setToStringTag","TAG","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","format","date","fallback","Date","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","year","getUTCFullYear","pad","getUTCMonth","getUTCDate","width","padStart","re","parse","timeIntervals","Map","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","every","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","interval","Error","maybeUtcInterval","TypedArray","getPrototypeOf","Uint8Array","objectToString","constant","coerceNumbers","map","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","maybeColorChannel","defaultValue","trim","startsWith","endsWith","color","isColor","maybeNumberChannel","arrayify","option","isScaleOptions","maybeInterval","isInteger","abs","d","offset","range","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","isNoneish","isNone","orderof","first","last","descending","position","radius","opacity","registry","sqrt4_3","sqrt","symbolHexagon","draw","context","size","rx","PI","ry","hy","moveTo","lineTo","closePath","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","pi","tau","createProjection","projection","inset","globalInset","insetTop","insetRight","insetBottom","insetLeft","dimensions","stream","clip","scaleProjection","geoAlbersUsa","conicProjection","geoAlbers","geoAzimuthalEqualArea","geoAzimuthalEquidistant","geoConicConformal","geoConicEqualArea","geoConicEquidistant","geoEqualEarth","geoEquirectangular","geoGnomonic","identity","reflectY","geoMercator","geoOrthographic","geoStereographic","geoTransverseMercator","namedProjection","height","marginLeft","marginRight","marginTop","marginBottom","dx","dy","x1","y1","x2","y2","s","geoClipRectangle","maybePostClip","transform","tx","ty","x0","y0","geoPath","bounds","k","geoTransform","point","y","kx","ky","rotate","precision","clipAngle","scale","translate","aspectRatio","parallels","fitSize","createContext","className","create","select","creator","documentElement","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","t","reverse","ordinalScheme","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","channels","nice","clamp","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","find","h25","quantile","h50","median","inferLogDomain","v","inferQuantileDomain","createScaleD","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","fill","inferHint","stroke","inferSymbolHint","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","sort","candidate","normalizeScale","typeProjection","some","asOrdinalType","filter","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","splice","pop","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","padding","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","numberFormat","compute","cacheValue","cacheKeys","memoize1","locale","Intl","NumberFormat","formatIsoDate","isoFormat","impliedString","impliedValue","formatNumber","formatAuto","validClassName","maybeClassName","applyInlineStyles","selection","style","property","element","inferFontVariant","maybeScale","legendItems","swatch","columns","tickFormat","fontVariant","swatchSize","swatchWidth","swatchHeight","utcFormat","maybeAutoTickFormat","swatches","attr","extraStyle","selectAll","append","text","ownerDocument","div","insert","legendRegistry","fillOpacity","strokeOpacity","strokeWidth","vf","cf","vs","cs","sf","ss","p","path","legendColor","legend","rgb","interpolateOpacity","legendOptions","label","rest","o","defaults","inherit","isThresholdScale","legendSwatches","tickSize","svg","tickAdjust","g","applyRange","rangeRound","copy","Infinity","canvas","context2","getContext","fillStyle","fillRect","toDataURL","thresholdFormat","bandwidth","axisBottom","isArray","tickValues","remove","legendRamp","DEFAULT_SELECTOR","defaultOptions","enabled","itemSelector","Legend","calendar","_classCallCheck","root","shown","pluginOptions","scaleOptions","_this$options","destroy"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140]} \ No newline at end of file +{"version":3,"file":"Legend.min.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/@observablehq/plot/src/defined.js","../../node_modules/isoformat/src/format.js","../../node_modules/isoformat/src/parse.js","../../node_modules/@observablehq/plot/src/time.js","../../node_modules/@observablehq/plot/src/options.js","../../node_modules/@observablehq/plot/src/scales/index.js","../../node_modules/@observablehq/plot/src/symbol.js","../../node_modules/@observablehq/plot/src/warnings.js","../../node_modules/@observablehq/plot/src/projection.js","../../node_modules/@observablehq/plot/src/context.js","../../node_modules/@observablehq/plot/src/scales/schemes.js","../../node_modules/@observablehq/plot/src/scales/quantitative.js","../../node_modules/@observablehq/plot/src/scales/diverging.js","../../node_modules/@observablehq/plot/src/scales/temporal.js","../../node_modules/@observablehq/plot/src/scales/ordinal.js","../../node_modules/@observablehq/plot/src/scales.js","../../node_modules/@observablehq/plot/src/format.js","../../node_modules/@observablehq/plot/src/memoize.js","../../node_modules/@observablehq/plot/src/style.js","../../node_modules/@observablehq/plot/src/axes.js","../../node_modules/@observablehq/plot/src/legends/swatches.js","../../node_modules/@observablehq/plot/src/legends.js","../../node_modules/@observablehq/plot/src/legends/ramp.js","../../../src/plugins/Legend.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","export default function format(date, fallback) {\n if (!(date instanceof Date)) date = new Date(+date);\n if (isNaN(date)) return typeof fallback === \"function\" ? fallback(date) : fallback;\n const hours = date.getUTCHours();\n const minutes = date.getUTCMinutes();\n const seconds = date.getUTCSeconds();\n const milliseconds = date.getUTCMilliseconds();\n return `${formatYear(date.getUTCFullYear(), 4)}-${pad(date.getUTCMonth() + 1, 2)}-${pad(date.getUTCDate(), 2)}${\n hours || minutes || seconds || milliseconds ? `T${pad(hours, 2)}:${pad(minutes, 2)}${\n seconds || milliseconds ? `:${pad(seconds, 2)}${\n milliseconds ? `.${pad(milliseconds, 3)}` : ``\n }` : ``\n }Z` : ``\n }`;\n}\n\nfunction formatYear(year) {\n return year < 0 ? `-${pad(-year, 6)}`\n : year > 9999 ? `+${pad(year, 6)}`\n : pad(year, 4);\n}\n\nfunction pad(value, width) {\n return `${value}`.padStart(width, \"0\");\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n geoAlbers,\n geoAlbersUsa,\n geoAzimuthalEqualArea,\n geoAzimuthalEquidistant,\n geoClipRectangle,\n geoConicConformal,\n geoConicEqualArea,\n geoConicEquidistant,\n geoEqualEarth,\n geoEquirectangular,\n geoGnomonic,\n geoMercator,\n geoOrthographic,\n geoPath,\n geoStereographic,\n geoTransform,\n geoTransverseMercator\n} from \"d3\";\nimport {valueObject} from \"./channel.js\";\nimport {coerceNumbers, constant, isObject} from \"./options.js\";\nimport {warn} from \"./warnings.js\";\n\nconst pi = Math.PI;\nconst tau = 2 * pi;\nconst defaultAspectRatio = 0.618;\n\nexport function createProjection(\n {\n projection,\n inset: globalInset = 0,\n insetTop = globalInset,\n insetRight = globalInset,\n insetBottom = globalInset,\n insetLeft = globalInset\n } = {},\n dimensions\n) {\n if (projection == null) return;\n if (typeof projection.stream === \"function\") return projection; // d3 projection\n let options;\n let domain;\n let clip = \"frame\";\n\n // If the projection was specified as an object with additional options,\n // extract those. The order of precedence for insetTop (and other insets) is:\n // projection.insetTop, projection.inset, (global) insetTop, (global) inset.\n // Any other options on this object will be passed through to the initializer.\n if (isObject(projection)) {\n let inset;\n ({\n type: projection,\n domain,\n inset,\n insetTop = inset !== undefined ? inset : insetTop,\n insetRight = inset !== undefined ? inset : insetRight,\n insetBottom = inset !== undefined ? inset : insetBottom,\n insetLeft = inset !== undefined ? inset : insetLeft,\n clip = clip,\n ...options\n } = projection);\n if (projection == null) return;\n }\n\n // For named projections, retrieve the corresponding projection initializer.\n if (typeof projection !== \"function\") ({type: projection} = namedProjection(projection));\n\n // Compute the frame dimensions and invoke the projection initializer.\n const {width, height, marginLeft, marginRight, marginTop, marginBottom} = dimensions;\n const dx = width - marginLeft - marginRight - insetLeft - insetRight;\n const dy = height - marginTop - marginBottom - insetTop - insetBottom;\n projection = projection?.({width: dx, height: dy, clip, ...options});\n\n // The projection initializer might decide to not use a projection.\n if (projection == null) return;\n clip = maybePostClip(clip, marginLeft, marginTop, width - marginRight, height - marginBottom);\n\n // Translate the origin to the top-left corner, respecting margins and insets.\n let tx = marginLeft + insetLeft;\n let ty = marginTop + insetTop;\n let transform;\n\n // If a domain is specified, fit the projection to the frame.\n if (domain != null) {\n const [[x0, y0], [x1, y1]] = geoPath(projection).bounds(domain);\n const k = Math.min(dx / (x1 - x0), dy / (y1 - y0));\n if (k > 0) {\n tx -= (k * (x0 + x1) - dx) / 2;\n ty -= (k * (y0 + y1) - dy) / 2;\n transform = geoTransform({\n point(x, y) {\n this.stream.point(x * k + tx, y * k + ty);\n }\n });\n } else {\n warn(`Warning: the projection could not be fit to the specified domain; using the default scale.`);\n }\n }\n\n transform ??=\n tx === 0 && ty === 0\n ? identity()\n : geoTransform({\n point(x, y) {\n this.stream.point(x + tx, y + ty);\n }\n });\n\n return {stream: (s) => projection.stream(transform.stream(clip(s)))};\n}\n\nfunction namedProjection(projection) {\n switch (`${projection}`.toLowerCase()) {\n case \"albers-usa\":\n return scaleProjection(geoAlbersUsa, 0.7463, 0.4673);\n case \"albers\":\n return conicProjection(geoAlbers, 0.7463, 0.4673);\n case \"azimuthal-equal-area\":\n return scaleProjection(geoAzimuthalEqualArea, 4, 4);\n case \"azimuthal-equidistant\":\n return scaleProjection(geoAzimuthalEquidistant, tau, tau);\n case \"conic-conformal\":\n return conicProjection(geoConicConformal, tau, tau);\n case \"conic-equal-area\":\n return conicProjection(geoConicEqualArea, 6.1702, 2.9781);\n case \"conic-equidistant\":\n return conicProjection(geoConicEquidistant, 7.312, 3.6282);\n case \"equal-earth\":\n return scaleProjection(geoEqualEarth, 5.4133, 2.6347);\n case \"equirectangular\":\n return scaleProjection(geoEquirectangular, tau, pi);\n case \"gnomonic\":\n return scaleProjection(geoGnomonic, 3.4641, 3.4641);\n case \"identity\":\n return {type: identity};\n case \"reflect-y\":\n return {type: reflectY};\n case \"mercator\":\n return scaleProjection(geoMercator, tau, tau);\n case \"orthographic\":\n return scaleProjection(geoOrthographic, 2, 2);\n case \"stereographic\":\n return scaleProjection(geoStereographic, 2, 2);\n case \"transverse-mercator\":\n return scaleProjection(geoTransverseMercator, tau, tau);\n default:\n throw new Error(`unknown projection type: ${projection}`);\n }\n}\n\nfunction maybePostClip(clip, x1, y1, x2, y2) {\n if (clip === false || clip == null || typeof clip === \"number\") return (s) => s;\n if (clip === true) clip = \"frame\";\n switch (`${clip}`.toLowerCase()) {\n case \"frame\":\n return geoClipRectangle(x1, y1, x2, y2);\n default:\n throw new Error(`unknown projection clip type: ${clip}`);\n }\n}\n\nfunction scaleProjection(createProjection, kx, ky) {\n return {\n type: ({width, height, rotate, precision = 0.15, clip}) => {\n const projection = createProjection();\n if (precision != null) projection.precision?.(precision);\n if (rotate != null) projection.rotate?.(rotate);\n if (typeof clip === \"number\") projection.clipAngle?.(clip);\n projection.scale(Math.min(width / kx, height / ky));\n projection.translate([width / 2, height / 2]);\n return projection;\n },\n aspectRatio: ky / kx\n };\n}\n\nfunction conicProjection(createProjection, kx, ky) {\n const {type, aspectRatio} = scaleProjection(createProjection, kx, ky);\n return {\n type: (options) => {\n const {parallels, domain, width, height} = options;\n const projection = type(options);\n if (parallels != null) {\n projection.parallels(parallels);\n if (domain === undefined) {\n projection.fitSize([width, height], {type: \"Sphere\"});\n }\n }\n return projection;\n },\n aspectRatio\n };\n}\n\nconst identity = constant({stream: (stream) => stream});\n\nconst reflectY = constant(\n geoTransform({\n point(x, y) {\n this.stream.point(x, -y);\n }\n })\n);\n\n// Applies a point-wise projection to the given paired x and y channels.\n// Note: mutates values!\nexport function maybeProject(cx, cy, channels, values, context) {\n const x = channels[cx] && channels[cx].scale === \"x\";\n const y = channels[cy] && channels[cy].scale === \"y\";\n if (x && y) {\n project(cx, cy, values, context.projection);\n } else if (x) {\n throw new Error(`projection requires paired x and y channels; ${cx} is missing ${cy}`);\n } else if (y) {\n throw new Error(`projection requires paired x and y channels; ${cy} is missing ${cx}`);\n }\n}\n\nfunction project(cx, cy, values, projection) {\n const x = values[cx];\n const y = values[cy];\n const n = x.length;\n const X = (values[cx] = new Float64Array(n).fill(NaN));\n const Y = (values[cy] = new Float64Array(n).fill(NaN));\n let i;\n const stream = projection.stream({\n point(x, y) {\n X[i] = x;\n Y[i] = y;\n }\n });\n for (i = 0; i < n; ++i) {\n stream.point(x[i], y[i]);\n }\n}\n\n// When a named projection is specified, we can use its natural aspect ratio to\n// determine a good value for the projection’s height based on the desired\n// width. When we don’t have a way to know, the golden ratio is our best guess.\n// Due to a circular dependency (we need to know the height before we can\n// construct the projection), we have to test the raw projection option rather\n// than the materialized projection; therefore we must be extremely careful that\n// the logic of this function exactly matches Projection above!\nexport function projectionAspectRatio(projection, marks) {\n if (typeof projection?.stream === \"function\") return defaultAspectRatio;\n if (isObject(projection)) projection = projection.type;\n if (projection == null) return hasGeometry(marks) ? defaultAspectRatio : undefined;\n if (typeof projection !== \"function\") {\n const {aspectRatio} = namedProjection(projection);\n if (aspectRatio) return aspectRatio;\n }\n return defaultAspectRatio;\n}\n\n// Extract the (possibly) scaled values for the x and y channels, and apply the\n// projection if any.\nexport function applyPosition(channels, scales, context) {\n const {x, y} = channels;\n let position = {};\n if (x) position.x = x;\n if (y) position.y = y;\n position = valueObject(position, scales);\n if (context.projection) maybeProject(\"x\", \"y\", channels, position, context);\n if (x) position.x = coerceNumbers(position.x);\n if (y) position.y = coerceNumbers(position.y);\n return position;\n}\n\nfunction hasGeometry(marks) {\n for (const mark of marks) if (mark.channels.geometry) return true;\n return false;\n}\n","import {creator, select} from \"d3\";\nimport {createProjection} from \"./projection.js\";\n\nexport function createContext(options = {}, dimensions, className) {\n const {document = typeof window !== \"undefined\" ? window.document : undefined} = options;\n return {document, className, projection: createProjection(options, dimensions)};\n}\n\nexport function create(name, {document}) {\n return select(creator(name).call(document.documentElement));\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","import {format as isoFormat} from \"isoformat\";\nimport {string} from \"./options.js\";\nimport {memoize1} from \"./memoize.js\";\n\nconst numberFormat = memoize1((locale) => {\n return new Intl.NumberFormat(locale);\n});\n\nconst monthFormat = memoize1((locale, month) => {\n return new Intl.DateTimeFormat(locale, {timeZone: \"UTC\", ...(month && {month})});\n});\n\nconst weekdayFormat = memoize1((locale, weekday) => {\n return new Intl.DateTimeFormat(locale, {timeZone: \"UTC\", ...(weekday && {weekday})});\n});\n\nexport function formatNumber(locale = \"en-US\") {\n const format = numberFormat(locale);\n return (i) => (i != null && !isNaN(i) ? format.format(i) : undefined);\n}\n\nexport function formatMonth(locale = \"en-US\", format = \"short\") {\n const fmt = monthFormat(locale, format);\n return (i) => (i != null && !isNaN((i = +new Date(Date.UTC(2000, +i)))) ? fmt.format(i) : undefined);\n}\n\nexport function formatWeekday(locale = \"en-US\", format = \"short\") {\n const fmt = weekdayFormat(locale, format);\n return (i) => (i != null && !isNaN((i = +new Date(Date.UTC(2001, 0, +i)))) ? fmt.format(i) : undefined);\n}\n\nexport function formatIsoDate(date) {\n return isoFormat(date, \"Invalid Date\");\n}\n\nexport function formatAuto(locale = \"en-US\") {\n const number = formatNumber(locale);\n return (v) => (v instanceof Date ? formatIsoDate : typeof v === \"number\" ? number : string)(v);\n}\n\n// TODO When Plot supports a top-level locale option, this should be removed\n// because it lacks context to know which locale to use; formatAuto should be\n// used instead whenever possible.\nexport const formatDefault = formatAuto();\n","export function memoize1(compute) {\n let cacheValue, cacheKeys;\n return (...keys) => {\n if (cacheKeys?.length !== keys.length || cacheKeys.some((k, i) => k !== keys[i])) {\n cacheKeys = keys;\n cacheValue = compute(...keys);\n }\n return cacheValue;\n };\n}\n","import {geoPath, group, namespaces} from \"d3\";\nimport {create} from \"./context.js\";\nimport {defined, nonempty} from \"./defined.js\";\nimport {formatDefault} from \"./format.js\";\nimport {\n string,\n number,\n maybeColorChannel,\n maybeNumberChannel,\n maybeKeyword,\n isNoneish,\n isNone,\n isRound,\n keyof\n} from \"./options.js\";\nimport {warn} from \"./warnings.js\";\n\nexport const offset = (typeof window !== \"undefined\" ? window.devicePixelRatio > 1 : typeof it === \"undefined\") ? 0 : 0.5; // prettier-ignore\n\nlet nextClipId = 0;\n\nfunction getClipId() {\n return `plot-clip-${++nextClipId}`;\n}\n\nexport function styles(\n mark,\n {\n title,\n href,\n ariaLabel: variaLabel,\n ariaDescription,\n ariaHidden,\n target,\n fill,\n fillOpacity,\n stroke,\n strokeWidth,\n strokeOpacity,\n strokeLinejoin,\n strokeLinecap,\n strokeMiterlimit,\n strokeDasharray,\n strokeDashoffset,\n opacity,\n mixBlendMode,\n paintOrder,\n pointerEvents,\n shapeRendering\n },\n {\n ariaLabel: cariaLabel,\n fill: defaultFill = \"currentColor\",\n fillOpacity: defaultFillOpacity,\n stroke: defaultStroke = \"none\",\n strokeOpacity: defaultStrokeOpacity,\n strokeWidth: defaultStrokeWidth,\n strokeLinecap: defaultStrokeLinecap,\n strokeLinejoin: defaultStrokeLinejoin,\n strokeMiterlimit: defaultStrokeMiterlimit,\n paintOrder: defaultPaintOrder\n }\n) {\n // Some marks don’t support fill (e.g., tick and rule).\n if (defaultFill === null) {\n fill = null;\n fillOpacity = null;\n }\n\n // Some marks don’t support stroke (e.g., image).\n if (defaultStroke === null) {\n stroke = null;\n strokeOpacity = null;\n }\n\n // Some marks default to fill with no stroke, while others default to stroke\n // with no fill. For example, bar and area default to fill, while dot and line\n // default to stroke. For marks that fill by default, the default fill only\n // applies if the stroke is (constant) none; if you set a stroke, then the\n // default fill becomes none. Similarly for marks that stroke by stroke, the\n // default stroke only applies if the fill is (constant) none.\n if (isNoneish(defaultFill)) {\n if (!isNoneish(defaultStroke) && !isNoneish(fill)) defaultStroke = \"none\";\n } else {\n if (isNoneish(defaultStroke) && !isNoneish(stroke)) defaultFill = \"none\";\n }\n\n const [vfill, cfill] = maybeColorChannel(fill, defaultFill);\n const [vfillOpacity, cfillOpacity] = maybeNumberChannel(fillOpacity, defaultFillOpacity);\n const [vstroke, cstroke] = maybeColorChannel(stroke, defaultStroke);\n const [vstrokeOpacity, cstrokeOpacity] = maybeNumberChannel(strokeOpacity, defaultStrokeOpacity);\n const [vopacity, copacity] = maybeNumberChannel(opacity);\n\n // For styles that have no effect if there is no stroke, only apply the\n // defaults if the stroke is not the constant none. (If stroke is a channel,\n // then cstroke will be undefined, but there’s still a stroke; hence we don’t\n // use isNoneish here.)\n if (!isNone(cstroke)) {\n if (strokeWidth === undefined) strokeWidth = defaultStrokeWidth;\n if (strokeLinecap === undefined) strokeLinecap = defaultStrokeLinecap;\n if (strokeLinejoin === undefined) strokeLinejoin = defaultStrokeLinejoin;\n\n // The default stroke miterlimit need not be applied if the current stroke\n // is the constant round; this only has effect on miter joins.\n if (strokeMiterlimit === undefined && !isRound(strokeLinejoin)) strokeMiterlimit = defaultStrokeMiterlimit;\n\n // The paint order only takes effect if there is both a fill and a stroke\n // (at least if we ignore markers, which no built-in marks currently use).\n if (!isNone(cfill) && paintOrder === undefined) paintOrder = defaultPaintOrder;\n }\n\n const [vstrokeWidth, cstrokeWidth] = maybeNumberChannel(strokeWidth);\n\n // Some marks don’t support fill (e.g., tick and rule).\n if (defaultFill !== null) {\n mark.fill = impliedString(cfill, \"currentColor\");\n mark.fillOpacity = impliedNumber(cfillOpacity, 1);\n }\n\n // Some marks don’t support stroke (e.g., image).\n if (defaultStroke !== null) {\n mark.stroke = impliedString(cstroke, \"none\");\n mark.strokeWidth = impliedNumber(cstrokeWidth, 1);\n mark.strokeOpacity = impliedNumber(cstrokeOpacity, 1);\n mark.strokeLinejoin = impliedString(strokeLinejoin, \"miter\");\n mark.strokeLinecap = impliedString(strokeLinecap, \"butt\");\n mark.strokeMiterlimit = impliedNumber(strokeMiterlimit, 4);\n mark.strokeDasharray = impliedString(strokeDasharray, \"none\");\n mark.strokeDashoffset = impliedString(strokeDashoffset, \"0\");\n }\n\n mark.target = string(target);\n mark.ariaLabel = string(cariaLabel);\n mark.ariaDescription = string(ariaDescription);\n mark.ariaHidden = string(ariaHidden);\n mark.opacity = impliedNumber(copacity, 1);\n mark.mixBlendMode = impliedString(mixBlendMode, \"normal\");\n mark.paintOrder = impliedString(paintOrder, \"normal\");\n mark.pointerEvents = impliedString(pointerEvents, \"auto\");\n mark.shapeRendering = impliedString(shapeRendering, \"auto\");\n\n return {\n title: {value: title, optional: true},\n href: {value: href, optional: true},\n ariaLabel: {value: variaLabel, optional: true},\n fill: {value: vfill, scale: \"auto\", optional: true},\n fillOpacity: {value: vfillOpacity, scale: \"auto\", optional: true},\n stroke: {value: vstroke, scale: \"auto\", optional: true},\n strokeOpacity: {value: vstrokeOpacity, scale: \"auto\", optional: true},\n strokeWidth: {value: vstrokeWidth, optional: true},\n opacity: {value: vopacity, scale: \"auto\", optional: true}\n };\n}\n\n// Applies the specified titles via selection.call.\nexport function applyTitle(selection, L) {\n if (L)\n selection\n .filter((i) => nonempty(L[i]))\n .append(\"title\")\n .call(applyText, L);\n}\n\n// Like applyTitle, but for grouped data (lines, areas).\nexport function applyTitleGroup(selection, L) {\n if (L)\n selection\n .filter(([i]) => nonempty(L[i]))\n .append(\"title\")\n .call(applyTextGroup, L);\n}\n\nexport function applyText(selection, T) {\n if (T) selection.text((i) => formatDefault(T[i]));\n}\n\nexport function applyTextGroup(selection, T) {\n if (T) selection.text(([i]) => formatDefault(T[i]));\n}\n\nexport function applyChannelStyles(\n selection,\n {target},\n {\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n }\n) {\n if (AL) applyAttr(selection, \"aria-label\", (i) => AL[i]);\n if (F) applyAttr(selection, \"fill\", (i) => F[i]);\n if (FO) applyAttr(selection, \"fill-opacity\", (i) => FO[i]);\n if (S) applyAttr(selection, \"stroke\", (i) => S[i]);\n if (SO) applyAttr(selection, \"stroke-opacity\", (i) => SO[i]);\n if (SW) applyAttr(selection, \"stroke-width\", (i) => SW[i]);\n if (O) applyAttr(selection, \"opacity\", (i) => O[i]);\n if (H) applyHref(selection, (i) => H[i], target);\n applyTitle(selection, T);\n}\n\nexport function applyGroupedChannelStyles(\n selection,\n {target},\n {\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n }\n) {\n if (AL) applyAttr(selection, \"aria-label\", ([i]) => AL[i]);\n if (F) applyAttr(selection, \"fill\", ([i]) => F[i]);\n if (FO) applyAttr(selection, \"fill-opacity\", ([i]) => FO[i]);\n if (S) applyAttr(selection, \"stroke\", ([i]) => S[i]);\n if (SO) applyAttr(selection, \"stroke-opacity\", ([i]) => SO[i]);\n if (SW) applyAttr(selection, \"stroke-width\", ([i]) => SW[i]);\n if (O) applyAttr(selection, \"opacity\", ([i]) => O[i]);\n if (H) applyHref(selection, ([i]) => H[i], target);\n applyTitleGroup(selection, T);\n}\n\nfunction groupAesthetics({\n ariaLabel: AL,\n title: T,\n fill: F,\n fillOpacity: FO,\n stroke: S,\n strokeOpacity: SO,\n strokeWidth: SW,\n opacity: O,\n href: H\n}) {\n return [AL, T, F, FO, S, SO, SW, O, H].filter((c) => c !== undefined);\n}\n\nexport function groupZ(I, Z, z) {\n const G = group(I, (i) => Z[i]);\n if (z === undefined && G.size > I.length >> 1) {\n warn(\n `Warning: the implicit z channel has high cardinality. This may occur when the fill or stroke channel is associated with quantitative data rather than ordinal or categorical data. You can suppress this warning by setting the z option explicitly; if this data represents a single series, set z to null.`\n );\n }\n return G.values();\n}\n\nexport function* groupIndex(I, position, {z}, channels) {\n const {z: Z} = channels; // group channel\n const A = groupAesthetics(channels); // aesthetic channels\n const C = [...position, ...A]; // all channels\n\n // Group the current index by Z (if any).\n for (const G of Z ? groupZ(I, Z, z) : [I]) {\n let Ag; // the A-values (aesthetics) of the current group, if any\n let Gg; // the current group index (a subset of G, and I), if any\n out: for (const i of G) {\n // If any channel has an undefined value for this index, skip it.\n for (const c of C) {\n if (!defined(c[i])) {\n if (Gg) Gg.push(-1);\n continue out;\n }\n }\n\n // Otherwise, if this is a new group, record the aesthetics for this\n // group. Yield the current group and start a new one.\n if (Ag === undefined) {\n if (Gg) yield Gg;\n (Ag = A.map((c) => keyof(c[i]))), (Gg = [i]);\n continue;\n }\n\n // Otherwise, add the current index to the current group. Then, if any of\n // the aesthetics don’t match the current group, yield the current group\n // and start a new group of the current index.\n Gg.push(i);\n for (let j = 0; j < A.length; ++j) {\n const k = keyof(A[j][i]);\n if (k !== Ag[j]) {\n yield Gg;\n (Ag = A.map((c) => keyof(c[i]))), (Gg = [i]);\n continue out;\n }\n }\n }\n\n // Yield the current group, if any.\n if (Gg) yield Gg;\n }\n}\n\n// TODO Accept other types of clips (paths, urls, x, y, other marks…)?\n// https://github.com/observablehq/plot/issues/181\nexport function maybeClip(clip) {\n if (clip === true) clip = \"frame\";\n else if (clip === false) clip = null;\n return maybeKeyword(clip, \"clip\", [\"frame\", \"sphere\"]);\n}\n\n// Note: may mutate selection.node!\nfunction applyClip(selection, mark, dimensions, context) {\n let clipUrl;\n switch (mark.clip) {\n case \"frame\": {\n const {width, height, marginLeft, marginRight, marginTop, marginBottom} = dimensions;\n const id = getClipId();\n clipUrl = `url(#${id})`;\n selection = create(\"svg:g\", context)\n .call((g) =>\n g\n .append(\"svg:clipPath\")\n .attr(\"id\", id)\n .append(\"rect\")\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop)\n .attr(\"width\", width - marginRight - marginLeft)\n .attr(\"height\", height - marginTop - marginBottom)\n )\n .each(function () {\n this.appendChild(selection.node());\n selection.node = () => this; // Note: mutation!\n });\n break;\n }\n case \"sphere\": {\n const {projection} = context;\n if (!projection) throw new Error(`the \"sphere\" clip option requires a projection`);\n const id = getClipId();\n clipUrl = `url(#${id})`;\n selection\n .append(\"clipPath\")\n .attr(\"id\", id)\n .append(\"path\")\n .attr(\"d\", geoPath(projection)({type: \"Sphere\"}));\n break;\n }\n }\n // Here we’re careful to apply the ARIA attributes to the outer G element when\n // clipping is applied, and to apply the ARIA attributes before any other\n // attributes (for readability).\n applyAttr(selection, \"aria-label\", mark.ariaLabel);\n applyAttr(selection, \"aria-description\", mark.ariaDescription);\n applyAttr(selection, \"aria-hidden\", mark.ariaHidden);\n applyAttr(selection, \"clip-path\", clipUrl);\n}\n\n// Note: may mutate selection.node!\nexport function applyIndirectStyles(selection, mark, dimensions, context) {\n applyClip(selection, mark, dimensions, context);\n applyAttr(selection, \"fill\", mark.fill);\n applyAttr(selection, \"fill-opacity\", mark.fillOpacity);\n applyAttr(selection, \"stroke\", mark.stroke);\n applyAttr(selection, \"stroke-width\", mark.strokeWidth);\n applyAttr(selection, \"stroke-opacity\", mark.strokeOpacity);\n applyAttr(selection, \"stroke-linejoin\", mark.strokeLinejoin);\n applyAttr(selection, \"stroke-linecap\", mark.strokeLinecap);\n applyAttr(selection, \"stroke-miterlimit\", mark.strokeMiterlimit);\n applyAttr(selection, \"stroke-dasharray\", mark.strokeDasharray);\n applyAttr(selection, \"stroke-dashoffset\", mark.strokeDashoffset);\n applyAttr(selection, \"shape-rendering\", mark.shapeRendering);\n applyAttr(selection, \"paint-order\", mark.paintOrder);\n applyAttr(selection, \"pointer-events\", mark.pointerEvents);\n}\n\nexport function applyDirectStyles(selection, mark) {\n applyStyle(selection, \"mix-blend-mode\", mark.mixBlendMode);\n applyAttr(selection, \"opacity\", mark.opacity);\n}\n\nfunction applyHref(selection, href, target) {\n selection.each(function (i) {\n const h = href(i);\n if (h != null) {\n const a = this.ownerDocument.createElementNS(namespaces.svg, \"a\");\n a.setAttribute(\"fill\", \"inherit\");\n a.setAttributeNS(namespaces.xlink, \"href\", h);\n if (target != null) a.setAttribute(\"target\", target);\n this.parentNode.insertBefore(a, this).appendChild(this);\n }\n });\n}\n\nexport function applyAttr(selection, name, value) {\n if (value != null) selection.attr(name, value);\n}\n\nexport function applyStyle(selection, name, value) {\n if (value != null) selection.style(name, value);\n}\n\nexport function applyTransform(selection, mark, {x, y}, tx = offset, ty = offset) {\n tx += mark.dx;\n ty += mark.dy;\n if (x?.bandwidth) tx += x.bandwidth() / 2;\n if (y?.bandwidth) ty += y.bandwidth() / 2;\n if (tx || ty) selection.attr(\"transform\", `translate(${tx},${ty})`);\n}\n\nexport function impliedString(value, impliedValue) {\n if ((value = string(value)) !== impliedValue) return value;\n}\n\nexport function impliedNumber(value, impliedValue) {\n if ((value = number(value)) !== impliedValue) return value;\n}\n\n// https://www.w3.org/TR/CSS21/grammar.html\nconst validClassName =\n /^-?([_a-z]|[\\240-\\377]|\\\\[0-9a-f]{1,6}(\\r\\n|[ \\t\\r\\n\\f])?|\\\\[^\\r\\n\\f0-9a-f])([_a-z0-9-]|[\\240-\\377]|\\\\[0-9a-f]{1,6}(\\r\\n|[ \\t\\r\\n\\f])?|\\\\[^\\r\\n\\f0-9a-f])*$/i;\n\nexport function maybeClassName(name) {\n // The default should be changed whenever the default styles are changed, so\n // as to avoid conflict when multiple versions of Plot are on the page.\n if (name === undefined) return \"plot-d6a7b5\";\n name = `${name}`;\n if (!validClassName.test(name)) throw new Error(`invalid class name: ${name}`);\n return name;\n}\n\nexport function applyInlineStyles(selection, style) {\n if (typeof style === \"string\") {\n selection.property(\"style\", style);\n } else if (style != null) {\n for (const element of selection) {\n Object.assign(element.style, style);\n }\n }\n}\n\nexport function applyFrameAnchor({frameAnchor}, {width, height, marginTop, marginRight, marginBottom, marginLeft}) {\n return [\n /left$/.test(frameAnchor)\n ? marginLeft\n : /right$/.test(frameAnchor)\n ? width - marginRight\n : (marginLeft + width - marginRight) / 2,\n /^top/.test(frameAnchor)\n ? marginTop\n : /^bottom/.test(frameAnchor)\n ? height - marginBottom\n : (marginTop + height - marginBottom) / 2\n ];\n}\n","import {format, utcFormat} from \"d3\";\nimport {formatIsoDate} from \"./format.js\";\nimport {constant, isTemporal, string} from \"./options.js\";\nimport {isOrdinalScale} from \"./scales.js\";\n\nexport function inferFontVariant(scale) {\n return isOrdinalScale(scale) && scale.interval === undefined ? undefined : \"tabular-nums\";\n}\n\n// D3 doesn’t provide a tick format for ordinal scales; we want shorthand when\n// an ordinal domain is numbers or dates, and we want null to mean the empty\n// string, not the default identity format. TODO Remove this in favor of the\n// axis mark’s inferTickFormat.\nexport function maybeAutoTickFormat(tickFormat, domain) {\n return tickFormat === undefined\n ? isTemporal(domain)\n ? formatIsoDate\n : string\n : typeof tickFormat === \"function\"\n ? tickFormat\n : (typeof tickFormat === \"string\" ? (isTemporal(domain) ? utcFormat : format) : constant)(tickFormat);\n}\n","import {pathRound as path} from \"d3\";\nimport {inferFontVariant, maybeAutoTickFormat} from \"../axes.js\";\nimport {createContext, create} from \"../context.js\";\nimport {isNoneish, maybeColorChannel, maybeNumberChannel} from \"../options.js\";\nimport {isOrdinalScale, isThresholdScale} from \"../scales.js\";\nimport {applyInlineStyles, impliedString, maybeClassName} from \"../style.js\";\n\nfunction maybeScale(scale, key) {\n if (key == null) return key;\n const s = scale(key);\n if (!s) throw new Error(`scale not found: ${key}`);\n return s;\n}\n\nexport function legendSwatches(color, {opacity, ...options} = {}) {\n if (!isOrdinalScale(color) && !isThresholdScale(color))\n throw new Error(`swatches legend requires ordinal or threshold color scale (not ${color.type})`);\n return legendItems(color, options, (selection, scale, width, height) =>\n selection\n .append(\"svg\")\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"fill\", scale.scale)\n .attr(\"fill-opacity\", maybeNumberChannel(opacity)[1])\n .append(\"rect\")\n .attr(\"width\", \"100%\")\n .attr(\"height\", \"100%\")\n );\n}\n\nexport function legendSymbols(\n symbol,\n {\n fill = symbol.hint?.fill !== undefined ? symbol.hint.fill : \"none\",\n fillOpacity = 1,\n stroke = symbol.hint?.stroke !== undefined ? symbol.hint.stroke : isNoneish(fill) ? \"currentColor\" : \"none\",\n strokeOpacity = 1,\n strokeWidth = 1.5,\n r = 4.5,\n ...options\n } = {},\n scale\n) {\n const [vf, cf] = maybeColorChannel(fill);\n const [vs, cs] = maybeColorChannel(stroke);\n const sf = maybeScale(scale, vf);\n const ss = maybeScale(scale, vs);\n const size = r * r * Math.PI;\n fillOpacity = maybeNumberChannel(fillOpacity)[1];\n strokeOpacity = maybeNumberChannel(strokeOpacity)[1];\n strokeWidth = maybeNumberChannel(strokeWidth)[1];\n return legendItems(symbol, options, (selection, scale, width, height) =>\n selection\n .append(\"svg\")\n .attr(\"viewBox\", \"-8 -8 16 16\")\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"fill\", vf === \"color\" ? (d) => sf.scale(d) : cf)\n .attr(\"fill-opacity\", fillOpacity)\n .attr(\"stroke\", vs === \"color\" ? (d) => ss.scale(d) : cs)\n .attr(\"stroke-opacity\", strokeOpacity)\n .attr(\"stroke-width\", strokeWidth)\n .append(\"path\")\n .attr(\"d\", (d) => {\n const p = path();\n symbol.scale(d).draw(p, size);\n return p;\n })\n );\n}\n\nfunction legendItems(scale, options = {}, swatch) {\n let {\n columns,\n tickFormat,\n fontVariant = inferFontVariant(scale),\n // TODO label,\n swatchSize = 15,\n swatchWidth = swatchSize,\n swatchHeight = swatchSize,\n marginLeft = 0,\n className,\n style,\n width\n } = options;\n const context = createContext(options);\n className = maybeClassName(className);\n tickFormat = maybeAutoTickFormat(tickFormat, scale.domain);\n\n const swatches = create(\"div\", context).attr(\n \"class\",\n `${className}-swatches ${className}-swatches-${columns != null ? \"columns\" : \"wrap\"}`\n );\n\n let extraStyle;\n\n if (columns != null) {\n extraStyle = `.${className}-swatches-columns .${className}-swatch {\n display: flex;\n align-items: center;\n break-inside: avoid;\n padding-bottom: 1px;\n}\n.${className}-swatches-columns .${className}-swatch::before {\n flex-shrink: 0;\n}\n.${className}-swatches-columns .${className}-swatch-label {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n}`;\n\n swatches\n .style(\"columns\", columns)\n .selectAll()\n .data(scale.domain)\n .enter()\n .append(\"div\")\n .attr(\"class\", `${className}-swatch`)\n .call(swatch, scale, swatchWidth, swatchHeight)\n .call((item) =>\n item.append(\"div\").attr(\"class\", `${className}-swatch-label`).attr(\"title\", tickFormat).text(tickFormat)\n );\n } else {\n extraStyle = `.${className}-swatches-wrap {\n display: flex;\n align-items: center;\n min-height: 33px;\n flex-wrap: wrap;\n}\n.${className}-swatches-wrap .${className}-swatch {\n display: inline-flex;\n align-items: center;\n margin-right: 1em;\n}`;\n\n swatches\n .selectAll()\n .data(scale.domain)\n .enter()\n .append(\"span\")\n .attr(\"class\", `${className}-swatch`)\n .call(swatch, scale, swatchWidth, swatchHeight)\n .append(function () {\n return this.ownerDocument.createTextNode(tickFormat.apply(this, arguments));\n });\n }\n\n return swatches\n .call((div) =>\n div.insert(\"style\", \"*\").text(\n `.${className}-swatches {\n font-family: system-ui, sans-serif;\n font-size: 10px;\n margin-bottom: 0.5em;\n}\n.${className}-swatch > svg {\n margin-right: 0.5em;\n overflow: visible;\n}\n${extraStyle}`\n )\n )\n .style(\"margin-left\", marginLeft ? `${+marginLeft}px` : null)\n .style(\"width\", width === undefined ? null : `${+width}px`)\n .style(\"font-variant\", impliedString(fontVariant, \"normal\"))\n .call(applyInlineStyles, style)\n .node();\n}\n","import {rgb} from \"d3\";\nimport {createContext} from \"./context.js\";\nimport {legendRamp} from \"./legends/ramp.js\";\nimport {legendSwatches, legendSymbols} from \"./legends/swatches.js\";\nimport {inherit, isScaleOptions} from \"./options.js\";\nimport {normalizeScale} from \"./scales.js\";\n\nconst legendRegistry = new Map([\n [\"symbol\", legendSymbols],\n [\"color\", legendColor],\n [\"opacity\", legendOpacity]\n]);\n\nexport function legend(options = {}) {\n for (const [key, value] of legendRegistry) {\n const scale = options[key];\n if (isScaleOptions(scale)) {\n // e.g., ignore {color: \"red\"}\n const context = createContext(options);\n let hint;\n // For symbol legends, pass a hint to the symbol scale.\n if (key === \"symbol\") {\n const {fill, stroke = fill === undefined && isScaleOptions(options.color) ? \"color\" : undefined} = options;\n hint = {fill, stroke};\n }\n return value(normalizeScale(key, scale, hint), legendOptions(context, scale, options), (key) =>\n isScaleOptions(options[key]) ? normalizeScale(key, options[key]) : null\n );\n }\n }\n throw new Error(\"unknown legend type; no scale found\");\n}\n\nexport function exposeLegends(scales, context, defaults = {}) {\n return (key, options) => {\n if (!legendRegistry.has(key)) throw new Error(`unknown legend type: ${key}`);\n if (!(key in scales)) return;\n return legendRegistry.get(key)(scales[key], legendOptions(context, defaults[key], options), (key) => scales[key]);\n };\n}\n\nfunction legendOptions({className, ...context}, {label, ticks, tickFormat} = {}, options) {\n return inherit(options, {className, ...context}, {label, ticks, tickFormat});\n}\n\nfunction legendColor(color, {legend = true, ...options}) {\n if (legend === true) legend = color.type === \"ordinal\" ? \"swatches\" : \"ramp\";\n if (color.domain === undefined) return;\n switch (`${legend}`.toLowerCase()) {\n case \"swatches\":\n return legendSwatches(color, options);\n case \"ramp\":\n return legendRamp(color, options);\n default:\n throw new Error(`unknown legend type: ${legend}`);\n }\n}\n\nfunction legendOpacity({type, interpolate, ...scale}, {legend = true, color = rgb(0, 0, 0), ...options}) {\n if (!interpolate) throw new Error(`${type} opacity scales are not supported`);\n if (legend === true) legend = \"ramp\";\n if (`${legend}`.toLowerCase() !== \"ramp\") throw new Error(`${legend} opacity legends are not supported`);\n return legendColor({type, ...scale, interpolate: interpolateOpacity(color)}, {legend, ...options});\n}\n\nfunction interpolateOpacity(color) {\n const {r, g, b} = rgb(color) || rgb(0, 0, 0); // treat invalid color as black\n return (t) => `rgba(${r},${g},${b},${t})`;\n}\n\nexport function createLegends(scales, context, options) {\n const legends = [];\n for (const [key, value] of legendRegistry) {\n const o = options[key];\n if (o?.legend && key in scales) {\n const legend = value(scales[key], legendOptions(context, scales[key], o), (key) => scales[key]);\n if (legend != null) legends.push(legend);\n }\n }\n return legends;\n}\n","import {quantize, interpolateNumber, piecewise, format, scaleBand, scaleLinear, axisBottom} from \"d3\";\nimport {inferFontVariant} from \"../axes.js\";\nimport {createContext, create} from \"../context.js\";\nimport {map, maybeNumberChannel} from \"../options.js\";\nimport {interpolatePiecewise} from \"../scales/quantitative.js\";\nimport {applyInlineStyles, impliedString, maybeClassName} from \"../style.js\";\n\nexport function legendRamp(color, options) {\n let {\n label = color.label,\n tickSize = 6,\n width = 240,\n height = 44 + tickSize,\n marginTop = 18,\n marginRight = 0,\n marginBottom = 16 + tickSize,\n marginLeft = 0,\n style,\n ticks = (width - marginLeft - marginRight) / 64,\n tickFormat,\n fontVariant = inferFontVariant(color),\n round = true,\n opacity,\n className\n } = options;\n const context = createContext(options);\n className = maybeClassName(className);\n opacity = maybeNumberChannel(opacity)[1];\n if (tickFormat === null) tickFormat = () => null;\n\n const svg = create(\"svg\", context)\n .attr(\"class\", `${className}-ramp`)\n .attr(\"font-family\", \"system-ui, sans-serif\")\n .attr(\"font-size\", 10)\n .attr(\"width\", width)\n .attr(\"height\", height)\n .attr(\"viewBox\", `0 0 ${width} ${height}`)\n .call((svg) =>\n // Warning: if you edit this, change defaultClassName.\n svg.append(\"style\").text(\n `.${className}-ramp {\n display: block;\n background: white;\n height: auto;\n height: intrinsic;\n max-width: 100%;\n overflow: visible;\n}\n.${className}-ramp text {\n white-space: pre;\n}`\n )\n )\n .call(applyInlineStyles, style);\n\n let tickAdjust = (g) => g.selectAll(\".tick line\").attr(\"y1\", marginTop + marginBottom - height);\n\n let x;\n\n // Some D3 scales use scale.interpolate, some scale.interpolator, and some\n // scale.round; this normalizes the API so it works with all scale types.\n const applyRange = round ? (x, range) => x.rangeRound(range) : (x, range) => x.range(range);\n\n const {type, domain, range, interpolate, scale, pivot} = color;\n\n // Continuous\n if (interpolate) {\n // Often interpolate is a “fixed” interpolator on the [0, 1] interval, as\n // with a built-in color scheme, but sometimes it is a function that takes\n // two arguments and is used in conjunction with the range.\n const interpolator =\n range === undefined\n ? interpolate\n : piecewise(interpolate.length === 1 ? interpolatePiecewise(interpolate) : interpolate, range);\n\n // Construct a D3 scale of the same type, but with a range that evenly\n // divides the horizontal extent of the legend. (In the common case, the\n // domain.length is two, and so the range is simply the extent.) For a\n // diverging scale, we need an extra point in the range for the pivot such\n // that the pivot is always drawn in the middle.\n x = applyRange(\n scale.copy(),\n quantize(\n interpolateNumber(marginLeft, width - marginRight),\n Math.min(domain.length + (pivot !== undefined), range === undefined ? Infinity : range.length)\n )\n );\n\n // Construct a 256×1 canvas, filling each pixel using the interpolator.\n const n = 256;\n const canvas = context.document.createElement(\"canvas\");\n canvas.width = n;\n canvas.height = 1;\n const context2 = canvas.getContext(\"2d\");\n for (let i = 0, j = n - 1; i < n; ++i) {\n context2.fillStyle = interpolator(i / j);\n context2.fillRect(i, 0, 1, 1);\n }\n\n svg\n .append(\"image\")\n .attr(\"opacity\", opacity)\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop)\n .attr(\"width\", width - marginLeft - marginRight)\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"preserveAspectRatio\", \"none\")\n .attr(\"xlink:href\", canvas.toDataURL());\n }\n\n // Threshold\n else if (type === \"threshold\") {\n const thresholds = domain;\n\n const thresholdFormat =\n tickFormat === undefined ? (d) => d : typeof tickFormat === \"string\" ? format(tickFormat) : tickFormat;\n\n // Construct a linear scale with evenly-spaced ticks for each of the\n // thresholds; the domain extends one beyond the threshold extent.\n x = applyRange(scaleLinear().domain([-1, range.length - 1]), [marginLeft, width - marginRight]);\n\n svg\n .append(\"g\")\n .attr(\"fill-opacity\", opacity)\n .selectAll()\n .data(range)\n .enter()\n .append(\"rect\")\n .attr(\"x\", (d, i) => x(i - 1))\n .attr(\"y\", marginTop)\n .attr(\"width\", (d, i) => x(i) - x(i - 1))\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"fill\", (d) => d);\n\n ticks = map(thresholds, (_, i) => i);\n tickFormat = (i) => thresholdFormat(thresholds[i], i);\n }\n\n // Ordinal (hopefully!)\n else {\n x = applyRange(scaleBand().domain(domain), [marginLeft, width - marginRight]);\n\n svg\n .append(\"g\")\n .attr(\"fill-opacity\", opacity)\n .selectAll()\n .data(domain)\n .enter()\n .append(\"rect\")\n .attr(\"x\", x)\n .attr(\"y\", marginTop)\n .attr(\"width\", Math.max(0, x.bandwidth() - 1))\n .attr(\"height\", height - marginTop - marginBottom)\n .attr(\"fill\", scale);\n\n tickAdjust = () => {};\n }\n\n svg\n .append(\"g\")\n .attr(\"transform\", `translate(0,${height - marginBottom})`)\n .call(\n axisBottom(x)\n .ticks(Array.isArray(ticks) ? null : ticks, typeof tickFormat === \"string\" ? tickFormat : undefined)\n .tickFormat(typeof tickFormat === \"function\" ? tickFormat : undefined)\n .tickSize(tickSize)\n .tickValues(Array.isArray(ticks) ? ticks : null)\n )\n .attr(\"font-size\", null)\n .attr(\"font-family\", null)\n .attr(\"font-variant\", impliedString(fontVariant, \"normal\"))\n .call(tickAdjust)\n .call((g) => g.select(\".domain\").remove());\n\n if (label !== undefined) {\n svg\n .append(\"text\")\n .attr(\"x\", marginLeft)\n .attr(\"y\", marginTop - 6)\n .attr(\"fill\", \"currentColor\") // TODO move to stylesheet?\n .attr(\"font-weight\", \"bold\")\n .text(label);\n }\n\n return svg.node();\n}\n","import { select } from 'd3-selection';\nimport { legend } from '@observablehq/plot';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\n\ninterface LegendOptions extends PluginOptions {\n enabled: boolean;\n itemSelector: string | null;\n label: string | null;\n width: number;\n}\n\nconst DEFAULT_SELECTOR = '#ch-plugin-legend';\n\nconst defaultOptions: LegendOptions = {\n // Whether to display the legend\n enabled: true,\n\n itemSelector: null,\n\n label: null,\n\n width: 130,\n};\n\nexport default class Legend implements IPlugin {\n name = 'Legend';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: LegendOptions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n }\n\n paint(): Promise {\n const scaleOptions = this.calendar.options.options.scale;\n const { enabled, itemSelector } = this.options;\n\n if (!enabled || (itemSelector && select(itemSelector).empty())) {\n return this.destroy();\n }\n\n this.shown = true;\n\n this.root = select(\n itemSelector || this.calendar.options.options.itemSelector,\n );\n\n if (this.root.select(DEFAULT_SELECTOR).empty()) {\n this.root = this.root.append('div').attr('id', DEFAULT_SELECTOR.slice(1));\n } else {\n this.root = this.root.select(DEFAULT_SELECTOR);\n }\n\n // @ts-ignore\n const node = legend({\n ...scaleOptions,\n ...this.options,\n });\n\n this.root.selectAll('*').remove();\n this.root.append(() => node);\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","hiddenKeys","NATIVE_WEAK_MAP","sharedKey","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","require$$6","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toLength","lengthOfArrayLike","obj","toAbsoluteIndex","index","integer","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","SPECIES","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","setToStringTag","TAG","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","format","date","fallback","Date","hours","getUTCHours","minutes","getUTCMinutes","seconds","getUTCSeconds","milliseconds","getUTCMilliseconds","year","getUTCFullYear","pad","getUTCMonth","getUTCDate","width","padStart","re","parse","timeIntervals","Map","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","every","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","interval","Error","maybeUtcInterval","TypedArray","getPrototypeOf","Uint8Array","objectToString","constant","coerceNumbers","map","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","maybeColorChannel","defaultValue","trim","startsWith","endsWith","color","isColor","maybeNumberChannel","arrayify","option","isScaleOptions","maybeInterval","isInteger","abs","d","offset","range","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","isNoneish","isNone","orderof","first","last","descending","position","radius","opacity","registry","sqrt4_3","sqrt","symbolHexagon","draw","context","size","rx","PI","ry","hy","moveTo","lineTo","closePath","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","pi","tau","createProjection","projection","inset","globalInset","insetTop","insetRight","insetBottom","insetLeft","dimensions","stream","clip","scaleProjection","geoAlbersUsa","conicProjection","geoAlbers","geoAzimuthalEqualArea","geoAzimuthalEquidistant","geoConicConformal","geoConicEqualArea","geoConicEquidistant","geoEqualEarth","geoEquirectangular","geoGnomonic","identity","reflectY","geoMercator","geoOrthographic","geoStereographic","geoTransverseMercator","namedProjection","height","marginLeft","marginRight","marginTop","marginBottom","dx","dy","x1","y1","x2","y2","s","geoClipRectangle","maybePostClip","transform","tx","ty","x0","y0","geoPath","bounds","k","geoTransform","point","y","kx","ky","rotate","precision","clipAngle","scale","translate","aspectRatio","parallels","fitSize","createContext","className","create","select","creator","documentElement","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","t","reverse","ordinalScheme","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","channels","nice","clamp","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","find","h25","quantile","h50","median","inferLogDomain","v","inferQuantileDomain","createScaleD","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","fill","inferHint","stroke","inferSymbolHint","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","sort","candidate","normalizeScale","typeProjection","some","asOrdinalType","filter","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","splice","pop","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","padding","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","numberFormat","compute","cacheValue","cacheKeys","memoize1","locale","Intl","NumberFormat","formatIsoDate","isoFormat","impliedString","impliedValue","formatNumber","formatAuto","validClassName","maybeClassName","applyInlineStyles","selection","style","property","element","inferFontVariant","maybeScale","legendItems","swatch","columns","tickFormat","fontVariant","swatchSize","swatchWidth","swatchHeight","utcFormat","maybeAutoTickFormat","swatches","attr","extraStyle","selectAll","append","text","ownerDocument","div","insert","legendRegistry","fillOpacity","strokeOpacity","strokeWidth","vf","cf","vs","cs","sf","ss","p","path","legendColor","legend","rgb","interpolateOpacity","legendOptions","label","rest","o","defaults","inherit","isThresholdScale","legendSwatches","tickSize","svg","tickAdjust","g","applyRange","rangeRound","copy","Infinity","canvas","context2","getContext","fillStyle","fillRect","toDataURL","thresholdFormat","bandwidth","axisBottom","isArray","tickValues","remove","legendRamp","DEFAULT_SELECTOR","defaultOptions","enabled","itemSelector","Legend","calendar","_classCallCheck","root","shown","pluginOptions","scaleOptions","_this$options","destroy"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/LegendLite.min.esm.js.map b/src/agenda_culturel/static/cal-heatmap/plugins/LegendLite.min.esm.js.map index 309db53..cb8e7d9 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/LegendLite.min.esm.js.map +++ b/src/agenda_culturel/static/cal-heatmap/plugins/LegendLite.min.esm.js.map @@ -1 +1 @@ -{"version":3,"file":"LegendLite.min.esm.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/core-js/internals/array-method-has-species-support.js","../../node_modules/core-js/modules/es.array.slice.js","../../node_modules/core-js/internals/array-method-is-strict.js","../../node_modules/core-js/modules/es.array.join.js","../../node_modules/tslib/tslib.es6.js","../../node_modules/core-js/modules/es.object.keys.js","../../node_modules/core-js/internals/is-regexp.js","../../node_modules/core-js/modules/es.string.starts-with.js","../../node_modules/core-js/internals/not-a-regexp.js","../../node_modules/core-js/internals/correct-is-regexp-logic.js","../../node_modules/core-js/internals/array-for-each.js","../../node_modules/core-js/modules/web.dom-collections.for-each.js","../../node_modules/core-js/internals/object-to-array.js","../../node_modules/core-js/modules/es.object.entries.js","../../node_modules/@observablehq/plot/src/defined.js","../../node_modules/isoformat/src/parse.js","../../node_modules/@observablehq/plot/src/time.js","../../node_modules/@observablehq/plot/src/options.js","../../node_modules/@observablehq/plot/src/scales/index.js","../../node_modules/@observablehq/plot/src/symbol.js","../../node_modules/@observablehq/plot/src/warnings.js","../../node_modules/@observablehq/plot/src/scales/schemes.js","../../node_modules/@observablehq/plot/src/scales/quantitative.js","../../node_modules/@observablehq/plot/src/scales/diverging.js","../../node_modules/@observablehq/plot/src/scales/temporal.js","../../node_modules/@observablehq/plot/src/scales/ordinal.js","../../node_modules/@observablehq/plot/src/scales.js","../../../src/constant.ts","../../../src/scale.ts","../../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../../node_modules/core-js/modules/es.array.concat.js","../../node_modules/core-js/modules/es.promise.all-settled.js","../../node_modules/core-js/internals/collection-strong.js","../../node_modules/core-js/modules/es.map.constructor.js","../../node_modules/core-js/internals/delete-property-or-throw.js","../../node_modules/core-js/internals/array-sort.js","../../node_modules/core-js/internals/engine-ff-version.js","../../node_modules/core-js/internals/engine-is-ie-or-edge.js","../../node_modules/core-js/internals/engine-webkit-version.js","../../node_modules/core-js/modules/es.array.sort.js","../../node_modules/core-js/modules/es.array.includes.js","../../node_modules/core-js/modules/es.array.map.js","../../node_modules/core-js/modules/es.array.filter.js","../../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../../node_modules/core-js/internals/array-from.js","../../node_modules/core-js/modules/es.array.from.js","../../node_modules/core-js/internals/whitespaces.js","../../node_modules/core-js/internals/string-trim.js","../../node_modules/core-js/internals/string-trim-forced.js","../../node_modules/core-js/modules/es.string.trim.js","../../../src/subDomain/SubDomainPainter.ts","../../../src/plugins/LegendLite.ts","../../../src/calendar/CalendarPainter.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-startswith -- safe\nvar nativeStartsWith = uncurryThis(''.startsWith);\nvar stringSlice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = toString(searchString);\n return nativeStartsWith\n ? nativeStartsWith(that, search, index)\n : stringSlice(that, index, index + search.length) === search;\n }\n});\n","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw new $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// in some IE versions, `propertyIsEnumerable` returns incorrect result on integer keys\n// of `null` prototype objects\nvar IE_BUG = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-create -- safe\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n});\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","// @ts-ignore\nimport { scale } from '@observablehq/plot';\nimport { OptionsType } from './options/Options';\nimport { SCALE_BASE_OPACITY_COLOR } from './constant';\n\nimport type { SubDomain } from './index';\n\ntype ValueType = string | number | undefined;\n\nexport function normalizedScale(scaleOptions: OptionsType['scale']): any {\n try {\n const scaleType = Object.keys(scaleOptions!)[0];\n\n return scale({\n [scaleType]: {\n ...scaleOptions![scaleType as 'color' | 'opacity'],\n clamp: true,\n },\n });\n } catch (error) {\n return null;\n }\n}\n\nfunction scaleStyle(_scale: any, scaleOptions: OptionsType['scale']) {\n const styles: { fill?: Function; 'fill-opacity'?: Function } = {};\n\n if (scaleOptions!.hasOwnProperty('opacity')) {\n styles.fill = () =>\n // eslint-disable-next-line implicit-arrow-linebreak\n scaleOptions!.opacity!.baseColor || SCALE_BASE_OPACITY_COLOR;\n styles['fill-opacity'] = (d: ValueType) => _scale?.apply(d);\n } else {\n styles.fill = (d: ValueType) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n (typeof d === 'string' && d?.startsWith('#') ? d : _scale?.apply(d));\n }\n\n return styles;\n}\n\nexport function applyScaleStyle(\n elem: any,\n _scale: any,\n scaleOptions: OptionsType['scale'],\n keyname?: string,\n) {\n Object.entries(scaleStyle(_scale, scaleOptions)).forEach(([prop, val]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n elem.style(prop, (d: SubDomain | string) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n val(keyname ? (d as SubDomain)[keyname as keyof SubDomain] : d)));\n}\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key === key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first === entry) state.first = next;\n if (state.last === entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind === 'keys') return createIterResultObject(entry.key, false);\n if (kind === 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","'use strict';\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","'use strict';\nvar UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar nativeSort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = lengthOfArrayLike(items);\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n // eslint-disable-next-line es/no-array-prototype-includes -- detection\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","'use strict';\n// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { Position } from '../constant';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp, SubDomain } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-subdomain';\nconst HIGHLIGHT_CLASSNAME = 'highlight';\n\nexport default class SubDomainPainter {\n calendar: CalHeatmap;\n\n root: any;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n }\n\n paint(root: any): void {\n this.root = root || this.root;\n const containerClassname = `${DEFAULT_SELECTOR}-container`;\n\n const subDomainSvgGroup = this.root\n .selectAll(containerClassname)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('svg')\n .call((selection: any) => this.#setPositions(selection))\n .attr('class', containerClassname.slice(1)),\n\n (update: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n update.call((selection: any) => this.#setPositions(selection)),\n );\n\n const {\n subDomain: {\n radius, width, height, sort,\n },\n } = this.calendar.options.options;\n const evt = this.calendar.eventEmitter;\n\n subDomainSvgGroup\n .selectAll('g')\n .data((d: Timestamp) => {\n const subDomainsCollection: SubDomain[] =\n this.calendar.domainCollection.get(d)!;\n if (sort === 'desc') {\n const max = Math.max(\n ...subDomainsCollection.map((s: SubDomain) => s.x),\n );\n subDomainsCollection.forEach((s: SubDomain, i: number) => {\n subDomainsCollection[i].x = Math.abs(s.x - max);\n });\n }\n\n return subDomainsCollection;\n })\n .join(\n (enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .insert('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .on('click', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('click', ev, d.t, d.v))\n .on('mouseover', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseover', ev, d.t, d.v))\n .on('mouseout', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseout', ev, d.t, d.v))\n .attr('rx', radius > 0 ? radius : null)\n .attr('ry', radius > 0 ? radius : null))\n .call((selection: any) => this.#appendText(selection)),\n (update: any) => update\n .selectAll('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .attr('rx', radius)\n .attr('ry', radius),\n );\n }\n\n /**\n * Set the subDomain group X and Y position\n * @param {d3-selection} selection A d3-selection object\n */\n #setPositions(selection: any): void {\n const { options } = this.calendar.options;\n const {\n padding,\n label: { position },\n } = options.domain;\n\n selection\n .attr('x', () => {\n let pos = padding[Position.LEFT];\n if (position === 'left') {\n pos += options.x.domainHorizontalLabelWidth;\n }\n return pos;\n })\n .attr('y', () => {\n let pos = padding[Position.TOP];\n if (position === 'top') {\n pos += options.x.domainVerticalLabelHeight;\n }\n return pos;\n });\n }\n\n /**\n * Return a classname if the specified date should be highlighted\n *\n * @param {number} timestamp Unix timestamp of the current subDomain\n * @return {String} the highlight class\n */\n #classname(timestamp: Timestamp, ...otherClasses: string[]): string {\n const {\n date: { highlight },\n subDomain: { type },\n } = this.calendar.options.options;\n let classname = '';\n\n if (highlight.length > 0) {\n highlight.forEach((d) => {\n const unitFn = this.calendar.templateCollection.get(type).extractUnit;\n\n if (unitFn(+d) === unitFn(timestamp)) {\n classname = HIGHLIGHT_CLASSNAME;\n }\n });\n }\n\n return [classname, ...otherClasses].join(' ').trim();\n }\n\n #appendText(elem: any) {\n const { width, height, label } = this.calendar.options.options.subDomain;\n\n if (!label) {\n return null;\n }\n\n return elem\n .append('text')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-text`))\n .attr('x', (d: SubDomain) => this.#getX(d) + width / 2)\n .attr('y', (d: SubDomain) => this.#getY(d) + height / 2)\n .attr('text-anchor', 'middle')\n .attr('dominant-baseline', 'central')\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.format(d.t, label, d.v, nodes[i]));\n }\n\n #getCoordinates(axis: 'x' | 'y', d: SubDomain): number {\n const { subDomain } = this.calendar.options.options;\n return (\n d[axis] *\n (subDomain[axis === 'x' ? 'width' : 'height'] + subDomain.gutter)\n );\n }\n\n #getX(d: SubDomain): number {\n return this.#getCoordinates('x', d);\n }\n\n #getY(d: SubDomain): number {\n return this.#getCoordinates('y', d);\n }\n}\n","import { select, create } from 'd3-selection';\nimport { normalizedScale, applyScaleStyle } from '../scale';\nimport { DEFAULT_SELECTOR as MAIN_SELECTOR } from '../calendar/CalendarPainter';\nimport {\n // force line break from prettier\n DEFAULT_SELECTOR as SUBDOMAIN_SELECTOR,\n} from '../subDomain/SubDomainPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\nimport {\n OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n} from '../constant';\n\ninterface LegendOptions extends PluginOptions {\n enabled: boolean;\n itemSelector: string | null;\n width: number;\n height: number;\n radius: number;\n gutter: number;\n includeBlank: boolean;\n}\n\nconst DEFAULT_SELECTOR = '.ch-plugin-legend-lite';\n\nconst defaultOptions: LegendOptions = {\n enabled: true, // Whether to display the legend\n itemSelector: null,\n width: OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n height: OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n gutter: OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n radius: OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n includeBlank: false,\n};\n\nexport default class LegendLite implements IPlugin {\n name = 'LegendLite';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: LegendOptions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...this.options, ...pluginOptions };\n }\n\n paint(): Promise {\n const { enabled, itemSelector } = this.options;\n\n if (!enabled || (itemSelector && select(itemSelector).empty())) {\n return this.destroy();\n }\n\n this.shown = true;\n\n this.root = select(\n itemSelector || this.calendar.options.options.itemSelector,\n );\n\n if (this.root.select(DEFAULT_SELECTOR).empty()) {\n this.root = this.root\n .append('div')\n .attr('class', DEFAULT_SELECTOR.slice(1));\n } else {\n this.root = this.root.select(DEFAULT_SELECTOR);\n }\n\n const node = this.#buildLegend();\n\n this.root.selectAll('*').remove();\n this.root.append(() => node.node());\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n\n #buildLegend() {\n const node = create('svg');\n const scale = normalizedScale(this.calendar.options.options.scale);\n const {\n width, height, gutter, includeBlank,\n } = this.options;\n\n const localRange = [...scale.range];\n if (includeBlank) {\n localRange.unshift(null);\n }\n\n node\n .attr('class', MAIN_SELECTOR.slice(1))\n .attr(\n 'width',\n localRange.length * width + (localRange.length - 1) * gutter,\n )\n .attr('height', height);\n\n node\n .selectAll('rect')\n .data(localRange)\n .join(\n (enter: any) => enter.append('rect').call((sc: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#nodeAttrs(sc, scale)),\n (update: any) => update\n .selectAll('rect')\n .call((sc: any) => this.#nodeAttrs(sc, scale)),\n );\n\n return node;\n }\n\n #nodeAttrs(selection: any, scale: any) {\n const {\n width, height, radius, gutter,\n } = this.options;\n\n return selection\n .attr('width', width)\n .attr('height', height)\n .attr('class', `${SUBDOMAIN_SELECTOR.slice(1)}-bg`)\n .attr('rx', radius)\n .attr('ry', radius)\n .attr('x', (_d: any, i: number) => i * (width + gutter))\n .attr('y', 0)\n .call((element: any) => {\n applyScaleStyle(element, scale, this.calendar.options.options.scale!);\n });\n }\n}\n","import { select } from 'd3-selection';\n\nimport DomainsContainerPainter from '../domain/DomainsContainerPainter';\nimport PluginPainter from '../plugins/PluginPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport { ScrollDirection } from '../constant';\nimport type { Dimensions } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-container';\n\nexport default class CalendarPainter {\n calendar: CalHeatmap;\n\n dimensions: Dimensions;\n\n root: any;\n\n domainsContainerPainter: DomainsContainerPainter;\n\n pluginPainter: PluginPainter;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.root = null;\n this.domainsContainerPainter = new DomainsContainerPainter(calendar);\n this.pluginPainter = new PluginPainter(calendar);\n }\n\n setup(): boolean {\n const { itemSelector, theme } = this.calendar.options.options;\n\n if (!this.root) {\n this.root = select(itemSelector)\n .append('svg')\n .attr('data-theme', theme)\n .attr('class', DEFAULT_SELECTOR.slice(1));\n this.domainsContainerPainter.setup();\n }\n\n this.calendar.pluginManager.setupAll();\n\n return true;\n }\n\n paint(navigationDir: ScrollDirection = ScrollDirection.SCROLL_NONE) {\n const transitions = this.domainsContainerPainter\n .paint(navigationDir)\n .concat(this.pluginPainter.paint())\n .concat(this.domainsContainerPainter.updatePosition());\n\n this.#resize();\n\n return Promise.allSettled(transitions);\n }\n\n #getHeight(): Dimensions['height'] {\n return (\n this.domainsContainerPainter.height() + this.pluginPainter.insideHeight()\n );\n }\n\n #getWidth(): Dimensions['width'] {\n return (\n this.domainsContainerPainter.width() + this.pluginPainter.insideWidth()\n );\n }\n\n #resize(): void {\n const { options } = this.calendar.options;\n\n const newWidth = this.#getWidth();\n const newHeight = this.#getHeight();\n\n this.root\n .transition()\n .duration(options.animationDuration)\n .attr('width', newWidth)\n .attr('height', newHeight);\n\n if (\n newWidth !== this.dimensions.width ||\n newHeight !== this.dimensions.height\n ) {\n this.calendar.eventEmitter.emit(\n 'resize',\n newWidth,\n newHeight,\n this.dimensions.width,\n this.dimensions.height,\n );\n }\n\n this.dimensions = {\n width: newWidth,\n height: newHeight,\n };\n }\n\n destroy(): Promise {\n const result: Promise[] = this.calendar.pluginManager\n .destroyAll()\n .concat(this.domainsContainerPainter.destroy());\n\n if (!this.root) {\n return Promise.allSettled(result);\n }\n\n result.push(\n this.root\n .transition()\n .duration(this.calendar.options.options.animationDuration)\n .attr('width', 0)\n .attr('height', 0)\n .remove()\n .end(),\n );\n\n return Promise.allSettled(result);\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","SPECIES","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionUncurryThisClause","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","addToUnscopables","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","createProperty","propertyKey","$Array","arraySliceSimple","start","end","k","fin","$getOwnPropertyNames","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","collection","common","IS_MAP","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","getConstructor","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","defineBuiltIns","isArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","define","init","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","arrayMethodHasSpeciesSupport","array","foo","Boolean","nativeSlice","HAS_SPECIES_SUPPORT","arrayMethodIsStrict","nativeJoin","__classPrivateFieldGet","receiver","separator","nativeKeys","MATCH","isRegExp","notARegExp","correctIsRegExpLogic","regexp","error1","error2","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","search","$forEach","IE_BUG","TO_ENTRIES","IE_WORKAROUND","$entries","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","re","parse","fallback","Date","timeIntervals","Map","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","interval","Error","maybeUtcInterval","TypedArray","Uint8Array","objectToString","constant","coerceNumbers","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","arrayify","isScaleOptions","option","maybeInterval","isInteger","abs","d","offset","range","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","trim","orderof","last","descending","color","radius","opacity","registry","sqrt4_3","sqrt","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","draw","context","rx","PI","ry","hy","moveTo","lineTo","closePath","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","t","reverse","ordinalScheme","s","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","scale","channels","nice","clamp","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","h25","quantile","h50","median","inferLogDomain","v","inferQuantileDomain","createScaleD","transform","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","fill","inferHint","stroke","inferSymbolHint","isNone","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","sort","candidate","normalizeScale","projection","typeProjection","asOrdinalType","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","pop","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","padding","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","exposeScale","percent","bandwidth","ScrollDirection","Position","SCALE_BASE_OPACITY_COLOR","normalizedScale","scaleOptions","scaleType","applyScaleStyle","elem","_scale","keyname","styles","baseColor","scaleStyle","_ref","_ref2","_slicedToArray","prop","doesNotExceedSafeInteger","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","arg","len","E","allSettled","status","collectionStrong","previous","getEntry","removed","prev","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","mergeSort","comparefn","middle","insertionSort","merge","element","left","right","llength","rlength","lindex","rindex","arraySort","firefox","engineFfVersion","engineIsIeOrEdge","webkit","engineWebkitVersion","deletePropertyOrThrow","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STRICT_METHOD","STABLE_SORT","code","fromCharCode","itemsLength","items","arrayLength","y","getSortCompare","$includes","$map","$filter","callWithSafeIterationClosing","arrayLike","IS_CONSTRUCTOR","mapfn","mapping","whitespaces","ltrim","RegExp","rtrim","stringTrim","$trim","forcedStringTrimMethod","DEFAULT_SELECTOR","defaultOptions","enabled","itemSelector","width","height","gutter","includeBlank","LegendLite","calendar","_classCallCheck","root","shown","pluginOptions","_this$options","select","destroy","append","attr","selectAll","remove","_this$options2","localRange","_toConsumableArray","unshift","sc","_this","_LegendLite_instances","_LegendLite_nodeAttrs","update","selection","_this2","_this$options3","_d"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199]} \ No newline at end of file +{"version":3,"file":"LegendLite.min.esm.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/core-js/internals/array-method-has-species-support.js","../../node_modules/core-js/modules/es.array.slice.js","../../node_modules/core-js/internals/array-method-is-strict.js","../../node_modules/core-js/modules/es.array.join.js","../../node_modules/tslib/tslib.es6.js","../../node_modules/core-js/modules/es.object.keys.js","../../node_modules/core-js/internals/is-regexp.js","../../node_modules/core-js/modules/es.string.starts-with.js","../../node_modules/core-js/internals/not-a-regexp.js","../../node_modules/core-js/internals/correct-is-regexp-logic.js","../../node_modules/core-js/internals/array-for-each.js","../../node_modules/core-js/modules/web.dom-collections.for-each.js","../../node_modules/core-js/internals/object-to-array.js","../../node_modules/core-js/modules/es.object.entries.js","../../node_modules/@observablehq/plot/src/defined.js","../../node_modules/isoformat/src/parse.js","../../node_modules/@observablehq/plot/src/time.js","../../node_modules/@observablehq/plot/src/options.js","../../node_modules/@observablehq/plot/src/scales/index.js","../../node_modules/@observablehq/plot/src/symbol.js","../../node_modules/@observablehq/plot/src/warnings.js","../../node_modules/@observablehq/plot/src/scales/schemes.js","../../node_modules/@observablehq/plot/src/scales/quantitative.js","../../node_modules/@observablehq/plot/src/scales/diverging.js","../../node_modules/@observablehq/plot/src/scales/temporal.js","../../node_modules/@observablehq/plot/src/scales/ordinal.js","../../node_modules/@observablehq/plot/src/scales.js","../../../src/constant.ts","../../../src/scale.ts","../../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../../node_modules/core-js/modules/es.array.concat.js","../../node_modules/core-js/modules/es.promise.all-settled.js","../../node_modules/core-js/internals/collection-strong.js","../../node_modules/core-js/modules/es.map.constructor.js","../../node_modules/core-js/internals/delete-property-or-throw.js","../../node_modules/core-js/internals/array-sort.js","../../node_modules/core-js/internals/engine-ff-version.js","../../node_modules/core-js/internals/engine-is-ie-or-edge.js","../../node_modules/core-js/internals/engine-webkit-version.js","../../node_modules/core-js/modules/es.array.sort.js","../../node_modules/core-js/modules/es.array.includes.js","../../node_modules/core-js/modules/es.array.map.js","../../node_modules/core-js/modules/es.array.filter.js","../../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../../node_modules/core-js/internals/array-from.js","../../node_modules/core-js/modules/es.array.from.js","../../node_modules/core-js/internals/whitespaces.js","../../node_modules/core-js/internals/string-trim.js","../../node_modules/core-js/internals/string-trim-forced.js","../../node_modules/core-js/modules/es.string.trim.js","../../../src/subDomain/SubDomainPainter.ts","../../../src/plugins/LegendLite.ts","../../../src/calendar/CalendarPainter.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-startswith -- safe\nvar nativeStartsWith = uncurryThis(''.startsWith);\nvar stringSlice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = toString(searchString);\n return nativeStartsWith\n ? nativeStartsWith(that, search, index)\n : stringSlice(that, index, index + search.length) === search;\n }\n});\n","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw new $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// in some IE versions, `propertyIsEnumerable` returns incorrect result on integer keys\n// of `null` prototype objects\nvar IE_BUG = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-create -- safe\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n});\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","// @ts-ignore\nimport { scale } from '@observablehq/plot';\nimport { OptionsType } from './options/Options';\nimport { SCALE_BASE_OPACITY_COLOR } from './constant';\n\nimport type { SubDomain } from './index';\n\ntype ValueType = string | number | undefined;\n\nexport function normalizedScale(scaleOptions: OptionsType['scale']): any {\n try {\n const scaleType = Object.keys(scaleOptions!)[0];\n\n return scale({\n [scaleType]: {\n ...scaleOptions![scaleType as 'color' | 'opacity'],\n clamp: true,\n },\n });\n } catch (error) {\n return null;\n }\n}\n\nfunction scaleStyle(_scale: any, scaleOptions: OptionsType['scale']) {\n const styles: { fill?: Function; 'fill-opacity'?: Function } = {};\n\n if (scaleOptions!.hasOwnProperty('opacity')) {\n styles.fill = () =>\n // eslint-disable-next-line implicit-arrow-linebreak\n scaleOptions!.opacity!.baseColor || SCALE_BASE_OPACITY_COLOR;\n styles['fill-opacity'] = (d: ValueType) => _scale?.apply(d);\n } else {\n styles.fill = (d: ValueType) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n (typeof d === 'string' && d?.startsWith('#') ? d : _scale?.apply(d));\n }\n\n return styles;\n}\n\nexport function applyScaleStyle(\n elem: any,\n _scale: any,\n scaleOptions: OptionsType['scale'],\n keyname?: string,\n) {\n Object.entries(scaleStyle(_scale, scaleOptions)).forEach(([prop, val]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n elem.style(prop, (d: SubDomain | string) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n val(keyname ? (d as SubDomain)[keyname as keyof SubDomain] : d)));\n}\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key === key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first === entry) state.first = next;\n if (state.last === entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind === 'keys') return createIterResultObject(entry.key, false);\n if (kind === 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","'use strict';\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","'use strict';\nvar UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar nativeSort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = lengthOfArrayLike(items);\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n // eslint-disable-next-line es/no-array-prototype-includes -- detection\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","'use strict';\n// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { Position } from '../constant';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp, SubDomain } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-subdomain';\nconst HIGHLIGHT_CLASSNAME = 'highlight';\n\nexport default class SubDomainPainter {\n calendar: CalHeatmap;\n\n root: any;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n }\n\n paint(root: any): void {\n this.root = root || this.root;\n const containerClassname = `${DEFAULT_SELECTOR}-container`;\n\n const subDomainSvgGroup = this.root\n .selectAll(containerClassname)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('svg')\n .call((selection: any) => this.#setPositions(selection))\n .attr('class', containerClassname.slice(1)),\n\n (update: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n update.call((selection: any) => this.#setPositions(selection)),\n );\n\n const {\n subDomain: {\n radius, width, height, sort,\n },\n } = this.calendar.options.options;\n const evt = this.calendar.eventEmitter;\n\n subDomainSvgGroup\n .selectAll('g')\n .data((d: Timestamp) => {\n const subDomainsCollection: SubDomain[] =\n this.calendar.domainCollection.get(d)!;\n if (sort === 'desc') {\n const max = Math.max(\n ...subDomainsCollection.map((s: SubDomain) => s.x),\n );\n subDomainsCollection.forEach((s: SubDomain, i: number) => {\n subDomainsCollection[i].x = Math.abs(s.x - max);\n });\n }\n\n return subDomainsCollection;\n })\n .join(\n (enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .insert('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .on('click', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('click', ev, d.t, d.v))\n .on('mouseover', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseover', ev, d.t, d.v))\n .on('mouseout', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseout', ev, d.t, d.v))\n .attr('rx', radius > 0 ? radius : null)\n .attr('ry', radius > 0 ? radius : null))\n .call((selection: any) => this.#appendText(selection)),\n (update: any) => update\n .selectAll('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .attr('rx', radius)\n .attr('ry', radius),\n );\n }\n\n /**\n * Set the subDomain group X and Y position\n * @param {d3-selection} selection A d3-selection object\n */\n #setPositions(selection: any): void {\n const { options } = this.calendar.options;\n const {\n padding,\n label: { position },\n } = options.domain;\n\n selection\n .attr('x', () => {\n let pos = padding[Position.LEFT];\n if (position === 'left') {\n pos += options.x.domainHorizontalLabelWidth;\n }\n return pos;\n })\n .attr('y', () => {\n let pos = padding[Position.TOP];\n if (position === 'top') {\n pos += options.x.domainVerticalLabelHeight;\n }\n return pos;\n });\n }\n\n /**\n * Return a classname if the specified date should be highlighted\n *\n * @param {number} timestamp Unix timestamp of the current subDomain\n * @return {String} the highlight class\n */\n #classname(timestamp: Timestamp, ...otherClasses: string[]): string {\n const {\n date: { highlight },\n subDomain: { type },\n } = this.calendar.options.options;\n let classname = '';\n\n if (highlight.length > 0) {\n highlight.forEach((d) => {\n const unitFn = this.calendar.templateCollection.get(type).extractUnit;\n\n if (unitFn(+d) === unitFn(timestamp)) {\n classname = HIGHLIGHT_CLASSNAME;\n }\n });\n }\n\n return [classname, ...otherClasses].join(' ').trim();\n }\n\n #appendText(elem: any) {\n const { width, height, label } = this.calendar.options.options.subDomain;\n\n if (!label) {\n return null;\n }\n\n return elem\n .append('text')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-text`))\n .attr('x', (d: SubDomain) => this.#getX(d) + width / 2)\n .attr('y', (d: SubDomain) => this.#getY(d) + height / 2)\n .attr('text-anchor', 'middle')\n .attr('dominant-baseline', 'central')\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.format(d.t, label, d.v, nodes[i]));\n }\n\n #getCoordinates(axis: 'x' | 'y', d: SubDomain): number {\n const { subDomain } = this.calendar.options.options;\n return (\n d[axis] *\n (subDomain[axis === 'x' ? 'width' : 'height'] + subDomain.gutter)\n );\n }\n\n #getX(d: SubDomain): number {\n return this.#getCoordinates('x', d);\n }\n\n #getY(d: SubDomain): number {\n return this.#getCoordinates('y', d);\n }\n}\n","import { select, create } from 'd3-selection';\nimport { normalizedScale, applyScaleStyle } from '../scale';\nimport { DEFAULT_SELECTOR as MAIN_SELECTOR } from '../calendar/CalendarPainter';\nimport {\n // force line break from prettier\n DEFAULT_SELECTOR as SUBDOMAIN_SELECTOR,\n} from '../subDomain/SubDomainPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\nimport {\n OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n} from '../constant';\n\ninterface LegendOptions extends PluginOptions {\n enabled: boolean;\n itemSelector: string | null;\n width: number;\n height: number;\n radius: number;\n gutter: number;\n includeBlank: boolean;\n}\n\nconst DEFAULT_SELECTOR = '.ch-plugin-legend-lite';\n\nconst defaultOptions: LegendOptions = {\n enabled: true, // Whether to display the legend\n itemSelector: null,\n width: OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n height: OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n gutter: OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n radius: OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n includeBlank: false,\n};\n\nexport default class LegendLite implements IPlugin {\n name = 'LegendLite';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: LegendOptions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...this.options, ...pluginOptions };\n }\n\n paint(): Promise {\n const { enabled, itemSelector } = this.options;\n\n if (!enabled || (itemSelector && select(itemSelector).empty())) {\n return this.destroy();\n }\n\n this.shown = true;\n\n this.root = select(\n itemSelector || this.calendar.options.options.itemSelector,\n );\n\n if (this.root.select(DEFAULT_SELECTOR).empty()) {\n this.root = this.root\n .append('div')\n .attr('class', DEFAULT_SELECTOR.slice(1));\n } else {\n this.root = this.root.select(DEFAULT_SELECTOR);\n }\n\n const node = this.#buildLegend();\n\n this.root.selectAll('*').remove();\n this.root.append(() => node.node());\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n\n #buildLegend() {\n const node = create('svg');\n const scale = normalizedScale(this.calendar.options.options.scale);\n const {\n width, height, gutter, includeBlank,\n } = this.options;\n\n const localRange = [...scale.range];\n if (includeBlank) {\n localRange.unshift(null);\n }\n\n node\n .attr('class', MAIN_SELECTOR.slice(1))\n .attr(\n 'width',\n localRange.length * width + (localRange.length - 1) * gutter,\n )\n .attr('height', height);\n\n node\n .selectAll('rect')\n .data(localRange)\n .join(\n (enter: any) => enter.append('rect').call((sc: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#nodeAttrs(sc, scale)),\n (update: any) => update\n .selectAll('rect')\n .call((sc: any) => this.#nodeAttrs(sc, scale)),\n );\n\n return node;\n }\n\n #nodeAttrs(selection: any, scale: any) {\n const {\n width, height, radius, gutter,\n } = this.options;\n\n return selection\n .attr('width', width)\n .attr('height', height)\n .attr('class', `${SUBDOMAIN_SELECTOR.slice(1)}-bg`)\n .attr('rx', radius)\n .attr('ry', radius)\n .attr('x', (_d: any, i: number) => i * (width + gutter))\n .attr('y', 0)\n .call((element: any) => {\n applyScaleStyle(element, scale, this.calendar.options.options.scale!);\n });\n }\n}\n","import { select } from 'd3-selection';\n\nimport DomainsContainerPainter from '../domain/DomainsContainerPainter';\nimport PluginPainter from '../plugins/PluginPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport { ScrollDirection } from '../constant';\nimport type { Dimensions } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-container';\n\nexport default class CalendarPainter {\n calendar: CalHeatmap;\n\n dimensions: Dimensions;\n\n root: any;\n\n domainsContainerPainter: DomainsContainerPainter;\n\n pluginPainter: PluginPainter;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.root = null;\n this.domainsContainerPainter = new DomainsContainerPainter(calendar);\n this.pluginPainter = new PluginPainter(calendar);\n }\n\n setup(): boolean {\n const { itemSelector, theme } = this.calendar.options.options;\n\n if (!this.root) {\n this.root = select(itemSelector)\n .append('svg')\n .attr('data-theme', theme)\n .attr('class', DEFAULT_SELECTOR.slice(1));\n this.domainsContainerPainter.setup();\n }\n\n this.calendar.pluginManager.setupAll();\n\n return true;\n }\n\n paint(navigationDir: ScrollDirection = ScrollDirection.SCROLL_NONE) {\n const transitions = this.domainsContainerPainter\n .paint(navigationDir)\n .concat(this.pluginPainter.paint())\n .concat(this.domainsContainerPainter.updatePosition());\n\n this.#resize();\n\n return Promise.allSettled(transitions);\n }\n\n #getHeight(): Dimensions['height'] {\n return (\n this.domainsContainerPainter.height() + this.pluginPainter.insideHeight()\n );\n }\n\n #getWidth(): Dimensions['width'] {\n return (\n this.domainsContainerPainter.width() + this.pluginPainter.insideWidth()\n );\n }\n\n #resize(): void {\n const { options } = this.calendar.options;\n\n const newWidth = this.#getWidth();\n const newHeight = this.#getHeight();\n\n this.root\n .transition()\n .duration(options.animationDuration)\n .attr('width', newWidth)\n .attr('height', newHeight);\n\n if (\n newWidth !== this.dimensions.width ||\n newHeight !== this.dimensions.height\n ) {\n this.calendar.eventEmitter.emit(\n 'resize',\n newWidth,\n newHeight,\n this.dimensions.width,\n this.dimensions.height,\n );\n }\n\n this.dimensions = {\n width: newWidth,\n height: newHeight,\n };\n }\n\n destroy(): Promise {\n const result: Promise[] = this.calendar.pluginManager\n .destroyAll()\n .concat(this.domainsContainerPainter.destroy());\n\n if (!this.root) {\n return Promise.allSettled(result);\n }\n\n result.push(\n this.root\n .transition()\n .duration(this.calendar.options.options.animationDuration)\n .attr('width', 0)\n .attr('height', 0)\n .remove()\n .end(),\n );\n\n return Promise.allSettled(result);\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","SPECIES","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionUncurryThisClause","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","addToUnscopables","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","createProperty","propertyKey","$Array","arraySliceSimple","start","end","k","fin","$getOwnPropertyNames","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","collection","common","IS_MAP","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","getConstructor","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","defineBuiltIns","isArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","define","init","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","arrayMethodHasSpeciesSupport","array","foo","Boolean","nativeSlice","HAS_SPECIES_SUPPORT","arrayMethodIsStrict","nativeJoin","__classPrivateFieldGet","receiver","separator","nativeKeys","MATCH","isRegExp","notARegExp","correctIsRegExpLogic","regexp","error1","error2","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","search","$forEach","IE_BUG","TO_ENTRIES","IE_WORKAROUND","$entries","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","re","parse","fallback","Date","timeIntervals","Map","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","interval","Error","maybeUtcInterval","TypedArray","Uint8Array","objectToString","constant","coerceNumbers","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","arrayify","isScaleOptions","option","maybeInterval","isInteger","abs","d","offset","range","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","trim","orderof","last","descending","color","radius","opacity","registry","sqrt4_3","sqrt","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","draw","context","rx","PI","ry","hy","moveTo","lineTo","closePath","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","t","reverse","ordinalScheme","s","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","scale","channels","nice","clamp","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","h25","quantile","h50","median","inferLogDomain","v","inferQuantileDomain","createScaleD","transform","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","fill","inferHint","stroke","inferSymbolHint","isNone","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","sort","candidate","normalizeScale","projection","typeProjection","asOrdinalType","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","pop","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","padding","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","exposeScale","percent","bandwidth","ScrollDirection","Position","SCALE_BASE_OPACITY_COLOR","normalizedScale","scaleOptions","scaleType","applyScaleStyle","elem","_scale","keyname","styles","baseColor","scaleStyle","_ref","_ref2","_slicedToArray","prop","doesNotExceedSafeInteger","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","arg","len","E","allSettled","status","collectionStrong","previous","getEntry","removed","prev","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","mergeSort","comparefn","middle","insertionSort","merge","element","left","right","llength","rlength","lindex","rindex","arraySort","firefox","engineFfVersion","engineIsIeOrEdge","webkit","engineWebkitVersion","deletePropertyOrThrow","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STRICT_METHOD","STABLE_SORT","code","fromCharCode","itemsLength","items","arrayLength","y","getSortCompare","$includes","$map","$filter","callWithSafeIterationClosing","arrayLike","IS_CONSTRUCTOR","mapfn","mapping","whitespaces","ltrim","RegExp","rtrim","stringTrim","$trim","forcedStringTrimMethod","DEFAULT_SELECTOR","defaultOptions","enabled","itemSelector","width","height","gutter","includeBlank","LegendLite","calendar","_classCallCheck","root","shown","pluginOptions","_this$options","select","destroy","append","attr","selectAll","remove","_this$options2","localRange","_toConsumableArray","unshift","sc","_this","_LegendLite_instances","_LegendLite_nodeAttrs","update","selection","_this2","_this$options3","_d"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/LegendLite.min.js.map b/src/agenda_culturel/static/cal-heatmap/plugins/LegendLite.min.js.map index bde1490..40f0a9a 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/LegendLite.min.js.map +++ b/src/agenda_culturel/static/cal-heatmap/plugins/LegendLite.min.js.map @@ -1 +1 @@ -{"version":3,"file":"LegendLite.min.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/core-js/internals/array-method-has-species-support.js","../../node_modules/core-js/modules/es.array.slice.js","../../node_modules/core-js/internals/array-method-is-strict.js","../../node_modules/core-js/modules/es.array.join.js","../../node_modules/tslib/tslib.es6.js","../../node_modules/core-js/modules/es.object.keys.js","../../node_modules/core-js/internals/is-regexp.js","../../node_modules/core-js/modules/es.string.starts-with.js","../../node_modules/core-js/internals/not-a-regexp.js","../../node_modules/core-js/internals/correct-is-regexp-logic.js","../../node_modules/core-js/internals/array-for-each.js","../../node_modules/core-js/modules/web.dom-collections.for-each.js","../../node_modules/core-js/internals/object-to-array.js","../../node_modules/core-js/modules/es.object.entries.js","../../node_modules/@observablehq/plot/src/defined.js","../../node_modules/isoformat/src/parse.js","../../node_modules/@observablehq/plot/src/time.js","../../node_modules/@observablehq/plot/src/options.js","../../node_modules/@observablehq/plot/src/scales/index.js","../../node_modules/@observablehq/plot/src/symbol.js","../../node_modules/@observablehq/plot/src/warnings.js","../../node_modules/@observablehq/plot/src/scales/schemes.js","../../node_modules/@observablehq/plot/src/scales/quantitative.js","../../node_modules/@observablehq/plot/src/scales/diverging.js","../../node_modules/@observablehq/plot/src/scales/temporal.js","../../node_modules/@observablehq/plot/src/scales/ordinal.js","../../node_modules/@observablehq/plot/src/scales.js","../../../src/constant.ts","../../../src/scale.ts","../../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../../node_modules/core-js/modules/es.array.concat.js","../../node_modules/core-js/modules/es.promise.all-settled.js","../../node_modules/core-js/internals/collection-strong.js","../../node_modules/core-js/modules/es.map.constructor.js","../../node_modules/core-js/internals/delete-property-or-throw.js","../../node_modules/core-js/internals/array-sort.js","../../node_modules/core-js/internals/engine-ff-version.js","../../node_modules/core-js/internals/engine-is-ie-or-edge.js","../../node_modules/core-js/internals/engine-webkit-version.js","../../node_modules/core-js/modules/es.array.sort.js","../../node_modules/core-js/modules/es.array.includes.js","../../node_modules/core-js/modules/es.array.map.js","../../node_modules/core-js/modules/es.array.filter.js","../../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../../node_modules/core-js/internals/array-from.js","../../node_modules/core-js/modules/es.array.from.js","../../node_modules/core-js/internals/whitespaces.js","../../node_modules/core-js/internals/string-trim.js","../../node_modules/core-js/internals/string-trim-forced.js","../../node_modules/core-js/modules/es.string.trim.js","../../../src/subDomain/SubDomainPainter.ts","../../../src/plugins/LegendLite.ts","../../../src/calendar/CalendarPainter.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-startswith -- safe\nvar nativeStartsWith = uncurryThis(''.startsWith);\nvar stringSlice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = toString(searchString);\n return nativeStartsWith\n ? nativeStartsWith(that, search, index)\n : stringSlice(that, index, index + search.length) === search;\n }\n});\n","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw new $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// in some IE versions, `propertyIsEnumerable` returns incorrect result on integer keys\n// of `null` prototype objects\nvar IE_BUG = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-create -- safe\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n});\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","// @ts-ignore\nimport { scale } from '@observablehq/plot';\nimport { OptionsType } from './options/Options';\nimport { SCALE_BASE_OPACITY_COLOR } from './constant';\n\nimport type { SubDomain } from './index';\n\ntype ValueType = string | number | undefined;\n\nexport function normalizedScale(scaleOptions: OptionsType['scale']): any {\n try {\n const scaleType = Object.keys(scaleOptions!)[0];\n\n return scale({\n [scaleType]: {\n ...scaleOptions![scaleType as 'color' | 'opacity'],\n clamp: true,\n },\n });\n } catch (error) {\n return null;\n }\n}\n\nfunction scaleStyle(_scale: any, scaleOptions: OptionsType['scale']) {\n const styles: { fill?: Function; 'fill-opacity'?: Function } = {};\n\n if (scaleOptions!.hasOwnProperty('opacity')) {\n styles.fill = () =>\n // eslint-disable-next-line implicit-arrow-linebreak\n scaleOptions!.opacity!.baseColor || SCALE_BASE_OPACITY_COLOR;\n styles['fill-opacity'] = (d: ValueType) => _scale?.apply(d);\n } else {\n styles.fill = (d: ValueType) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n (typeof d === 'string' && d?.startsWith('#') ? d : _scale?.apply(d));\n }\n\n return styles;\n}\n\nexport function applyScaleStyle(\n elem: any,\n _scale: any,\n scaleOptions: OptionsType['scale'],\n keyname?: string,\n) {\n Object.entries(scaleStyle(_scale, scaleOptions)).forEach(([prop, val]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n elem.style(prop, (d: SubDomain | string) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n val(keyname ? (d as SubDomain)[keyname as keyof SubDomain] : d)));\n}\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key === key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first === entry) state.first = next;\n if (state.last === entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind === 'keys') return createIterResultObject(entry.key, false);\n if (kind === 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","'use strict';\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","'use strict';\nvar UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar nativeSort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = lengthOfArrayLike(items);\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n // eslint-disable-next-line es/no-array-prototype-includes -- detection\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","'use strict';\n// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { Position } from '../constant';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp, SubDomain } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-subdomain';\nconst HIGHLIGHT_CLASSNAME = 'highlight';\n\nexport default class SubDomainPainter {\n calendar: CalHeatmap;\n\n root: any;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n }\n\n paint(root: any): void {\n this.root = root || this.root;\n const containerClassname = `${DEFAULT_SELECTOR}-container`;\n\n const subDomainSvgGroup = this.root\n .selectAll(containerClassname)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('svg')\n .call((selection: any) => this.#setPositions(selection))\n .attr('class', containerClassname.slice(1)),\n\n (update: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n update.call((selection: any) => this.#setPositions(selection)),\n );\n\n const {\n subDomain: {\n radius, width, height, sort,\n },\n } = this.calendar.options.options;\n const evt = this.calendar.eventEmitter;\n\n subDomainSvgGroup\n .selectAll('g')\n .data((d: Timestamp) => {\n const subDomainsCollection: SubDomain[] =\n this.calendar.domainCollection.get(d)!;\n if (sort === 'desc') {\n const max = Math.max(\n ...subDomainsCollection.map((s: SubDomain) => s.x),\n );\n subDomainsCollection.forEach((s: SubDomain, i: number) => {\n subDomainsCollection[i].x = Math.abs(s.x - max);\n });\n }\n\n return subDomainsCollection;\n })\n .join(\n (enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .insert('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .on('click', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('click', ev, d.t, d.v))\n .on('mouseover', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseover', ev, d.t, d.v))\n .on('mouseout', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseout', ev, d.t, d.v))\n .attr('rx', radius > 0 ? radius : null)\n .attr('ry', radius > 0 ? radius : null))\n .call((selection: any) => this.#appendText(selection)),\n (update: any) => update\n .selectAll('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .attr('rx', radius)\n .attr('ry', radius),\n );\n }\n\n /**\n * Set the subDomain group X and Y position\n * @param {d3-selection} selection A d3-selection object\n */\n #setPositions(selection: any): void {\n const { options } = this.calendar.options;\n const {\n padding,\n label: { position },\n } = options.domain;\n\n selection\n .attr('x', () => {\n let pos = padding[Position.LEFT];\n if (position === 'left') {\n pos += options.x.domainHorizontalLabelWidth;\n }\n return pos;\n })\n .attr('y', () => {\n let pos = padding[Position.TOP];\n if (position === 'top') {\n pos += options.x.domainVerticalLabelHeight;\n }\n return pos;\n });\n }\n\n /**\n * Return a classname if the specified date should be highlighted\n *\n * @param {number} timestamp Unix timestamp of the current subDomain\n * @return {String} the highlight class\n */\n #classname(timestamp: Timestamp, ...otherClasses: string[]): string {\n const {\n date: { highlight },\n subDomain: { type },\n } = this.calendar.options.options;\n let classname = '';\n\n if (highlight.length > 0) {\n highlight.forEach((d) => {\n const unitFn = this.calendar.templateCollection.get(type).extractUnit;\n\n if (unitFn(+d) === unitFn(timestamp)) {\n classname = HIGHLIGHT_CLASSNAME;\n }\n });\n }\n\n return [classname, ...otherClasses].join(' ').trim();\n }\n\n #appendText(elem: any) {\n const { width, height, label } = this.calendar.options.options.subDomain;\n\n if (!label) {\n return null;\n }\n\n return elem\n .append('text')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-text`))\n .attr('x', (d: SubDomain) => this.#getX(d) + width / 2)\n .attr('y', (d: SubDomain) => this.#getY(d) + height / 2)\n .attr('text-anchor', 'middle')\n .attr('dominant-baseline', 'central')\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.format(d.t, label, d.v, nodes[i]));\n }\n\n #getCoordinates(axis: 'x' | 'y', d: SubDomain): number {\n const { subDomain } = this.calendar.options.options;\n return (\n d[axis] *\n (subDomain[axis === 'x' ? 'width' : 'height'] + subDomain.gutter)\n );\n }\n\n #getX(d: SubDomain): number {\n return this.#getCoordinates('x', d);\n }\n\n #getY(d: SubDomain): number {\n return this.#getCoordinates('y', d);\n }\n}\n","import { select, create } from 'd3-selection';\nimport { normalizedScale, applyScaleStyle } from '../scale';\nimport { DEFAULT_SELECTOR as MAIN_SELECTOR } from '../calendar/CalendarPainter';\nimport {\n // force line break from prettier\n DEFAULT_SELECTOR as SUBDOMAIN_SELECTOR,\n} from '../subDomain/SubDomainPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\nimport {\n OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n} from '../constant';\n\ninterface LegendOptions extends PluginOptions {\n enabled: boolean;\n itemSelector: string | null;\n width: number;\n height: number;\n radius: number;\n gutter: number;\n includeBlank: boolean;\n}\n\nconst DEFAULT_SELECTOR = '.ch-plugin-legend-lite';\n\nconst defaultOptions: LegendOptions = {\n enabled: true, // Whether to display the legend\n itemSelector: null,\n width: OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n height: OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n gutter: OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n radius: OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n includeBlank: false,\n};\n\nexport default class LegendLite implements IPlugin {\n name = 'LegendLite';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: LegendOptions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...this.options, ...pluginOptions };\n }\n\n paint(): Promise {\n const { enabled, itemSelector } = this.options;\n\n if (!enabled || (itemSelector && select(itemSelector).empty())) {\n return this.destroy();\n }\n\n this.shown = true;\n\n this.root = select(\n itemSelector || this.calendar.options.options.itemSelector,\n );\n\n if (this.root.select(DEFAULT_SELECTOR).empty()) {\n this.root = this.root\n .append('div')\n .attr('class', DEFAULT_SELECTOR.slice(1));\n } else {\n this.root = this.root.select(DEFAULT_SELECTOR);\n }\n\n const node = this.#buildLegend();\n\n this.root.selectAll('*').remove();\n this.root.append(() => node.node());\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n\n #buildLegend() {\n const node = create('svg');\n const scale = normalizedScale(this.calendar.options.options.scale);\n const {\n width, height, gutter, includeBlank,\n } = this.options;\n\n const localRange = [...scale.range];\n if (includeBlank) {\n localRange.unshift(null);\n }\n\n node\n .attr('class', MAIN_SELECTOR.slice(1))\n .attr(\n 'width',\n localRange.length * width + (localRange.length - 1) * gutter,\n )\n .attr('height', height);\n\n node\n .selectAll('rect')\n .data(localRange)\n .join(\n (enter: any) => enter.append('rect').call((sc: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#nodeAttrs(sc, scale)),\n (update: any) => update\n .selectAll('rect')\n .call((sc: any) => this.#nodeAttrs(sc, scale)),\n );\n\n return node;\n }\n\n #nodeAttrs(selection: any, scale: any) {\n const {\n width, height, radius, gutter,\n } = this.options;\n\n return selection\n .attr('width', width)\n .attr('height', height)\n .attr('class', `${SUBDOMAIN_SELECTOR.slice(1)}-bg`)\n .attr('rx', radius)\n .attr('ry', radius)\n .attr('x', (_d: any, i: number) => i * (width + gutter))\n .attr('y', 0)\n .call((element: any) => {\n applyScaleStyle(element, scale, this.calendar.options.options.scale!);\n });\n }\n}\n","import { select } from 'd3-selection';\n\nimport DomainsContainerPainter from '../domain/DomainsContainerPainter';\nimport PluginPainter from '../plugins/PluginPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport { ScrollDirection } from '../constant';\nimport type { Dimensions } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-container';\n\nexport default class CalendarPainter {\n calendar: CalHeatmap;\n\n dimensions: Dimensions;\n\n root: any;\n\n domainsContainerPainter: DomainsContainerPainter;\n\n pluginPainter: PluginPainter;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.root = null;\n this.domainsContainerPainter = new DomainsContainerPainter(calendar);\n this.pluginPainter = new PluginPainter(calendar);\n }\n\n setup(): boolean {\n const { itemSelector, theme } = this.calendar.options.options;\n\n if (!this.root) {\n this.root = select(itemSelector)\n .append('svg')\n .attr('data-theme', theme)\n .attr('class', DEFAULT_SELECTOR.slice(1));\n this.domainsContainerPainter.setup();\n }\n\n this.calendar.pluginManager.setupAll();\n\n return true;\n }\n\n paint(navigationDir: ScrollDirection = ScrollDirection.SCROLL_NONE) {\n const transitions = this.domainsContainerPainter\n .paint(navigationDir)\n .concat(this.pluginPainter.paint())\n .concat(this.domainsContainerPainter.updatePosition());\n\n this.#resize();\n\n return Promise.allSettled(transitions);\n }\n\n #getHeight(): Dimensions['height'] {\n return (\n this.domainsContainerPainter.height() + this.pluginPainter.insideHeight()\n );\n }\n\n #getWidth(): Dimensions['width'] {\n return (\n this.domainsContainerPainter.width() + this.pluginPainter.insideWidth()\n );\n }\n\n #resize(): void {\n const { options } = this.calendar.options;\n\n const newWidth = this.#getWidth();\n const newHeight = this.#getHeight();\n\n this.root\n .transition()\n .duration(options.animationDuration)\n .attr('width', newWidth)\n .attr('height', newHeight);\n\n if (\n newWidth !== this.dimensions.width ||\n newHeight !== this.dimensions.height\n ) {\n this.calendar.eventEmitter.emit(\n 'resize',\n newWidth,\n newHeight,\n this.dimensions.width,\n this.dimensions.height,\n );\n }\n\n this.dimensions = {\n width: newWidth,\n height: newHeight,\n };\n }\n\n destroy(): Promise {\n const result: Promise[] = this.calendar.pluginManager\n .destroyAll()\n .concat(this.domainsContainerPainter.destroy());\n\n if (!this.root) {\n return Promise.allSettled(result);\n }\n\n result.push(\n this.root\n .transition()\n .duration(this.calendar.options.options.animationDuration)\n .attr('width', 0)\n .attr('height', 0)\n .remove()\n .end(),\n );\n\n return Promise.allSettled(result);\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","SPECIES","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionUncurryThisClause","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","addToUnscopables","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","createProperty","propertyKey","$Array","arraySliceSimple","start","end","k","fin","$getOwnPropertyNames","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","collection","common","IS_MAP","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","getConstructor","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","defineBuiltIns","isArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","define","init","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","arrayMethodHasSpeciesSupport","array","foo","Boolean","nativeSlice","HAS_SPECIES_SUPPORT","arrayMethodIsStrict","nativeJoin","__classPrivateFieldGet","receiver","separator","nativeKeys","MATCH","isRegExp","notARegExp","correctIsRegExpLogic","regexp","error1","error2","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","search","$forEach","arrayForEach","IE_BUG","TO_ENTRIES","IE_WORKAROUND","$entries","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","re","parse","fallback","Date","timeIntervals","Map","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","interval","Error","maybeUtcInterval","TypedArray","Uint8Array","objectToString","constant","coerceNumbers","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","arrayify","isScaleOptions","option","maybeInterval","isInteger","abs","d","offset","range","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","trim","orderof","last","descending","color","radius","opacity","registry","sqrt4_3","sqrt","symbolHexagon","draw","context","rx","PI","ry","hy","moveTo","lineTo","closePath","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","t","reverse","ordinalScheme","s","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","scale","channels","nice","clamp","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","h25","quantile","h50","median","inferLogDomain","v","inferQuantileDomain","createScaleD","transform","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","fill","inferHint","stroke","inferSymbolHint","isNone","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","sort","candidate","normalizeScale","projection","typeProjection","asOrdinalType","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","pop","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","padding","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","exposeScale","percent","bandwidth","ScrollDirection","Position","SCALE_BASE_OPACITY_COLOR","normalizedScale","scaleOptions","scaleType","applyScaleStyle","elem","_scale","keyname","styles","baseColor","scaleStyle","_ref","_ref2","_slicedToArray","prop","doesNotExceedSafeInteger","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","arg","len","E","allSettled","status","collectionStrong","previous","getEntry","removed","prev","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","mergeSort","comparefn","middle","insertionSort","merge","element","left","right","llength","rlength","lindex","rindex","arraySort","firefox","engineFfVersion","engineIsIeOrEdge","webkit","engineWebkitVersion","deletePropertyOrThrow","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STRICT_METHOD","STABLE_SORT","code","fromCharCode","itemsLength","items","arrayLength","y","getSortCompare","$includes","$map","$filter","callWithSafeIterationClosing","arrayLike","IS_CONSTRUCTOR","mapfn","mapping","whitespaces","ltrim","RegExp","rtrim","stringTrim","$trim","forcedStringTrimMethod","DEFAULT_SELECTOR","defaultOptions","enabled","itemSelector","width","height","gutter","includeBlank","LegendLite","calendar","_classCallCheck","root","shown","pluginOptions","_this$options","select","destroy","append","attr","selectAll","remove","_this$options2","localRange","_toConsumableArray","unshift","sc","_this","_LegendLite_instances","_LegendLite_nodeAttrs","update","selection","_this2","_this$options3","_d"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199]} \ No newline at end of file +{"version":3,"file":"LegendLite.min.js","sources":["../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/core-js/internals/array-method-has-species-support.js","../../node_modules/core-js/modules/es.array.slice.js","../../node_modules/core-js/internals/array-method-is-strict.js","../../node_modules/core-js/modules/es.array.join.js","../../node_modules/tslib/tslib.es6.js","../../node_modules/core-js/modules/es.object.keys.js","../../node_modules/core-js/internals/is-regexp.js","../../node_modules/core-js/modules/es.string.starts-with.js","../../node_modules/core-js/internals/not-a-regexp.js","../../node_modules/core-js/internals/correct-is-regexp-logic.js","../../node_modules/core-js/internals/array-for-each.js","../../node_modules/core-js/modules/web.dom-collections.for-each.js","../../node_modules/core-js/internals/object-to-array.js","../../node_modules/core-js/modules/es.object.entries.js","../../node_modules/@observablehq/plot/src/defined.js","../../node_modules/isoformat/src/parse.js","../../node_modules/@observablehq/plot/src/time.js","../../node_modules/@observablehq/plot/src/options.js","../../node_modules/@observablehq/plot/src/scales/index.js","../../node_modules/@observablehq/plot/src/symbol.js","../../node_modules/@observablehq/plot/src/warnings.js","../../node_modules/@observablehq/plot/src/scales/schemes.js","../../node_modules/@observablehq/plot/src/scales/quantitative.js","../../node_modules/@observablehq/plot/src/scales/diverging.js","../../node_modules/@observablehq/plot/src/scales/temporal.js","../../node_modules/@observablehq/plot/src/scales/ordinal.js","../../node_modules/@observablehq/plot/src/scales.js","../../../src/constant.ts","../../../src/scale.ts","../../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../../node_modules/core-js/modules/es.array.concat.js","../../node_modules/core-js/modules/es.promise.all-settled.js","../../node_modules/core-js/internals/collection-strong.js","../../node_modules/core-js/modules/es.map.constructor.js","../../node_modules/core-js/internals/delete-property-or-throw.js","../../node_modules/core-js/internals/array-sort.js","../../node_modules/core-js/internals/engine-ff-version.js","../../node_modules/core-js/internals/engine-is-ie-or-edge.js","../../node_modules/core-js/internals/engine-webkit-version.js","../../node_modules/core-js/modules/es.array.sort.js","../../node_modules/core-js/modules/es.array.includes.js","../../node_modules/core-js/modules/es.array.map.js","../../node_modules/core-js/modules/es.array.filter.js","../../node_modules/core-js/internals/call-with-safe-iteration-closing.js","../../node_modules/core-js/internals/array-from.js","../../node_modules/core-js/modules/es.array.from.js","../../node_modules/core-js/internals/whitespaces.js","../../node_modules/core-js/internals/string-trim.js","../../node_modules/core-js/internals/string-trim-forced.js","../../node_modules/core-js/modules/es.string.trim.js","../../../src/subDomain/SubDomainPainter.ts","../../../src/plugins/LegendLite.ts","../../../src/calendar/CalendarPainter.ts"],"sourcesContent":["'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar createProperty = require('../internals/create-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar nativeSlice = require('../internals/array-slice');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\nvar max = Math.max;\n\n// `Array.prototype.slice` method\n// https://tc39.es/ecma262/#sec-array.prototype.slice\n// fallback for not array-like ES3 strings and DOM objects\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n slice: function slice(start, end) {\n var O = toIndexedObject(this);\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible\n var Constructor, result, n;\n if (isArray(O)) {\n Constructor = O.constructor;\n // cross-realm fallback\n if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {\n Constructor = undefined;\n } else if (isObject(Constructor)) {\n Constructor = Constructor[SPECIES];\n if (Constructor === null) Constructor = undefined;\n }\n if (Constructor === $Array || Constructor === undefined) {\n return nativeSlice(O, k, fin);\n }\n }\n result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));\n for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call -- required for testing\n method.call(null, argument || function () { return 1; }, 1);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar nativeJoin = uncurryThis([].join);\n\nvar ES3_STRINGS = IndexedObject !== Object;\nvar FORCED = ES3_STRINGS || !arrayMethodIsStrict('join', ',');\n\n// `Array.prototype.join` method\n// https://tc39.es/ecma262/#sec-array.prototype.join\n$({ target: 'Array', proto: true, forced: FORCED }, {\n join: function join(separator) {\n return nativeJoin(toIndexedObject(this), separator === undefined ? ',' : separator);\n }\n});\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","'use strict';\nvar $ = require('../internals/export');\nvar toObject = require('../internals/to-object');\nvar nativeKeys = require('../internals/object-keys');\nvar fails = require('../internals/fails');\n\nvar FAILS_ON_PRIMITIVES = fails(function () { nativeKeys(1); });\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES }, {\n keys: function keys(it) {\n return nativeKeys(toObject(it));\n }\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) === 'RegExp');\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-startswith -- safe\nvar nativeStartsWith = uncurryThis(''.startsWith);\nvar stringSlice = uncurryThis(''.slice);\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('startsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'startsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.startsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.startswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var index = toLength(min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = toString(searchString);\n return nativeStartsWith\n ? nativeStartsWith(that, search, index)\n : stringSlice(that, index, index + search.length) === search;\n }\n});\n","'use strict';\nvar isRegExp = require('../internals/is-regexp');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it) {\n if (isRegExp(it)) {\n throw new $TypeError(\"The method doesn't accept regular expressions\");\n } return it;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\nmodule.exports = function (METHOD_NAME) {\n var regexp = /./;\n try {\n '/./'[METHOD_NAME](regexp);\n } catch (error1) {\n try {\n regexp[MATCH] = false;\n return '/./'[METHOD_NAME](regexp);\n } catch (error2) { /* empty */ }\n } return false;\n};\n","'use strict';\nvar $forEach = require('../internals/array-iteration').forEach;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\n\nvar STRICT_METHOD = arrayMethodIsStrict('forEach');\n\n// `Array.prototype.forEach` method implementation\n// https://tc39.es/ecma262/#sec-array.prototype.foreach\nmodule.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n// eslint-disable-next-line es/no-array-prototype-foreach -- safe\n} : [].forEach;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar forEach = require('../internals/array-for-each');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nvar handlePrototype = function (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try {\n createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach);\n } catch (error) {\n CollectionPrototype.forEach = forEach;\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n if (DOMIterables[COLLECTION_NAME]) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype);\n }\n}\n\nhandlePrototype(DOMTokenListPrototype);\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar objectGetPrototypeOf = require('../internals/object-get-prototype-of');\nvar objectKeys = require('../internals/object-keys');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $propertyIsEnumerable = require('../internals/object-property-is-enumerable').f;\n\nvar propertyIsEnumerable = uncurryThis($propertyIsEnumerable);\nvar push = uncurryThis([].push);\n\n// in some IE versions, `propertyIsEnumerable` returns incorrect result on integer keys\n// of `null` prototype objects\nvar IE_BUG = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-create -- safe\n var O = Object.create(null);\n O[2] = 2;\n return !propertyIsEnumerable(O, 2);\n});\n\n// `Object.{ entries, values }` methods implementation\nvar createMethod = function (TO_ENTRIES) {\n return function (it) {\n var O = toIndexedObject(it);\n var keys = objectKeys(O);\n var IE_WORKAROUND = IE_BUG && objectGetPrototypeOf(O) === null;\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || (IE_WORKAROUND ? key in O : propertyIsEnumerable(O, key))) {\n push(result, TO_ENTRIES ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\nmodule.exports = {\n // `Object.entries` method\n // https://tc39.es/ecma262/#sec-object.entries\n entries: createMethod(true),\n // `Object.values` method\n // https://tc39.es/ecma262/#sec-object.values\n values: createMethod(false)\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $entries = require('../internals/object-to-array').entries;\n\n// `Object.entries` method\n// https://tc39.es/ecma262/#sec-object.entries\n$({ target: 'Object', stat: true }, {\n entries: function entries(O) {\n return $entries(O);\n }\n});\n","import {ascending, descending} from \"d3\";\n\nexport function defined(x) {\n return x != null && !Number.isNaN(x);\n}\n\nexport function ascendingDefined(a, b) {\n return +defined(b) - +defined(a) || ascending(a, b);\n}\n\nexport function descendingDefined(a, b) {\n return +defined(b) - +defined(a) || descending(a, b);\n}\n\nexport function nonempty(x) {\n return x != null && `${x}` !== \"\";\n}\n\nexport function finite(x) {\n return isFinite(x) ? x : NaN;\n}\n\nexport function positive(x) {\n return x > 0 && isFinite(x) ? x : NaN;\n}\n\nexport function negative(x) {\n return x < 0 && isFinite(x) ? x : NaN;\n}\n","const re = /^(?:[-+]\\d{2})?\\d{4}(?:-\\d{2}(?:-\\d{2})?)?(?:T\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{3})?)?(?:Z|[-+]\\d{2}:?\\d{2})?)?$/;\n\nexport default function parse(string, fallback) {\n if (!re.test(string += \"\")) return typeof fallback === \"function\" ? fallback(string) : fallback;\n return new Date(string);\n}\n","import {utcSecond, utcMinute, utcHour, utcDay, utcWeek, utcMonth, utcYear} from \"d3\";\nimport {utcMonday, utcTuesday, utcWednesday, utcThursday, utcFriday, utcSaturday, utcSunday} from \"d3\";\nimport {timeSecond, timeMinute, timeHour, timeDay, timeWeek, timeMonth, timeYear} from \"d3\";\nimport {timeMonday, timeTuesday, timeWednesday, timeThursday, timeFriday, timeSaturday, timeSunday} from \"d3\";\n\nconst timeIntervals = new Map([\n [\"second\", timeSecond],\n [\"minute\", timeMinute],\n [\"hour\", timeHour],\n [\"day\", timeDay],\n [\"week\", timeWeek],\n [\"month\", timeMonth],\n [\"quarter\", timeMonth.every(3)],\n [\"half\", timeMonth.every(6)],\n [\"year\", timeYear],\n [\"monday\", timeMonday],\n [\"tuesday\", timeTuesday],\n [\"wednesday\", timeWednesday],\n [\"thursday\", timeThursday],\n [\"friday\", timeFriday],\n [\"saturday\", timeSaturday],\n [\"sunday\", timeSunday]\n]);\n\nconst utcIntervals = new Map([\n [\"second\", utcSecond],\n [\"minute\", utcMinute],\n [\"hour\", utcHour],\n [\"day\", utcDay],\n [\"week\", utcWeek],\n [\"month\", utcMonth],\n [\"quarter\", utcMonth.every(3)],\n [\"half\", utcMonth.every(6)],\n [\"year\", utcYear],\n [\"monday\", utcMonday],\n [\"tuesday\", utcTuesday],\n [\"wednesday\", utcWednesday],\n [\"thursday\", utcThursday],\n [\"friday\", utcFriday],\n [\"saturday\", utcSaturday],\n [\"sunday\", utcSunday]\n]);\n\nexport function maybeTimeInterval(interval) {\n const i = timeIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n\nexport function maybeUtcInterval(interval) {\n const i = utcIntervals.get(`${interval}`.toLowerCase());\n if (!i) throw new Error(`unknown interval: ${interval}`);\n return i;\n}\n","import {parse as isoParse} from \"isoformat\";\nimport {color, descending, range as rangei, quantile} from \"d3\";\nimport {maybeTimeInterval, maybeUtcInterval} from \"./time.js\";\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray\nexport const TypedArray = Object.getPrototypeOf(Uint8Array);\nconst objectToString = Object.prototype.toString;\n\nexport function valueof(data, value, type) {\n const valueType = typeof value;\n return valueType === \"string\"\n ? maybeTypedMap(data, field(value), type)\n : valueType === \"function\"\n ? maybeTypedMap(data, value, type)\n : valueType === \"number\" || value instanceof Date || valueType === \"boolean\"\n ? map(data, constant(value), type)\n : typeof value?.transform === \"function\"\n ? maybeTypedArrayify(value.transform(data), type)\n : maybeTypedArrayify(value, type);\n}\n\nfunction maybeTypedMap(data, f, type) {\n return map(data, type?.prototype instanceof TypedArray ? floater(f) : f, type);\n}\n\nfunction maybeTypedArrayify(data, type) {\n return type === undefined\n ? arrayify(data) // preserve undefined type\n : data instanceof type\n ? data\n : type.prototype instanceof TypedArray && !(data instanceof TypedArray)\n ? type.from(data, coerceNumber)\n : type.from(data);\n}\n\nfunction floater(f) {\n return (d, i) => coerceNumber(f(d, i));\n}\n\nexport const field = (name) => (d) => d[name];\nexport const indexOf = {transform: range};\nexport const identity = {transform: (d) => d};\nexport const zero = () => 0;\nexport const one = () => 1;\nexport const yes = () => true;\nexport const string = (x) => (x == null ? x : `${x}`);\nexport const number = (x) => (x == null ? x : +x);\nexport const boolean = (x) => (x == null ? x : !!x);\nexport const first = (x) => (x ? x[0] : undefined);\nexport const second = (x) => (x ? x[1] : undefined);\nexport const third = (x) => (x ? x[2] : undefined);\nexport const constant = (x) => () => x;\n\n// Converts a string like “p25” into a function that takes an index I and an\n// accessor function f, returning the corresponding percentile value.\nexport function percentile(reduce) {\n const p = +`${reduce}`.slice(1) / 100;\n return (I, f) => quantile(I, p, f);\n}\n\n// If the values are specified as a typed array, no coercion is required.\nexport function coerceNumbers(values) {\n return values instanceof TypedArray ? values : map(values, coerceNumber, Float64Array);\n}\n\n// Unlike Mark’s number, here we want to convert null and undefined to NaN since\n// the result will be stored in a Float64Array and we don’t want null to be\n// coerced to zero. We use Number instead of unary + to allow BigInt coercion.\nfunction coerceNumber(x) {\n return x == null ? NaN : Number(x);\n}\n\nexport function coerceDates(values) {\n return map(values, coerceDate);\n}\n\n// When coercing strings to dates, we only want to allow the ISO 8601 format\n// since the built-in string parsing of the Date constructor varies across\n// browsers. (In the future, this could be made more liberal if desired, though\n// it is still generally preferable to do date parsing yourself explicitly,\n// rather than rely on Plot.) Any non-string values are coerced to number first\n// and treated as milliseconds since UNIX epoch.\nexport function coerceDate(x) {\n return x instanceof Date && !isNaN(x)\n ? x\n : typeof x === \"string\"\n ? isoParse(x)\n : x == null || isNaN((x = +x))\n ? undefined\n : new Date(x);\n}\n\n// Some channels may allow a string constant to be specified; to differentiate\n// string constants (e.g., \"red\") from named fields (e.g., \"date\"), this\n// function tests whether the given value is a CSS color string and returns a\n// tuple [channel, constant] where one of the two is undefined, and the other is\n// the given value. If you wish to reference a named field that is also a valid\n// CSS color, use an accessor (d => d.red) instead.\nexport function maybeColorChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null ? [undefined, \"none\"] : isColor(value) ? [undefined, value] : [value, undefined];\n}\n\n// Similar to maybeColorChannel, this tests whether the given value is a number\n// indicating a constant, and otherwise assumes that it’s a channel value.\nexport function maybeNumberChannel(value, defaultValue) {\n if (value === undefined) value = defaultValue;\n return value === null || typeof value === \"number\" ? [undefined, value] : [value, undefined];\n}\n\n// Validates the specified optional string against the allowed list of keywords.\nexport function maybeKeyword(input, name, allowed) {\n if (input != null) return keyword(input, name, allowed);\n}\n\n// Validates the specified required string against the allowed list of keywords.\nexport function keyword(input, name, allowed) {\n const i = `${input}`.toLowerCase();\n if (!allowed.includes(i)) throw new Error(`invalid ${name}: ${input}`);\n return i;\n}\n\n// Promotes the specified data to an array as needed.\nexport function arrayify(data) {\n return data == null || data instanceof Array || data instanceof TypedArray ? data : Array.from(data);\n}\n\n// An optimization of type.from(values, f): if the given values are already an\n// instanceof the desired array type, the faster values.map method is used.\nexport function map(values, f, type = Array) {\n return values == null ? values : values instanceof type ? values.map(f) : type.from(values, f);\n}\n\n// An optimization of type.from(values): if the given values are already an\n// instanceof the desired array type, the faster values.slice method is used.\nexport function slice(values, type = Array) {\n return values instanceof type ? values.slice() : type.from(values);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a primitive value.\nexport function isObject(option) {\n return option?.toString === objectToString;\n}\n\n// Disambiguates a scale options object (e.g., {color: {type: \"linear\"}}) from\n// some other option (e.g., {color: \"red\"}). When creating standalone legends,\n// this is used to test whether a scale is defined; this should be consistent\n// with inferScaleType when there are no channels associated with the scale, and\n// if this returns true, then normalizeScale must return non-null.\nexport function isScaleOptions(option) {\n return isObject(option) && (option.type !== undefined || option.domain !== undefined);\n}\n\n// Disambiguates an options object (e.g., {y: \"x2\"}) from a channel value\n// definition expressed as a channel transform (e.g., {transform: …}).\nexport function isOptions(option) {\n return isObject(option) && typeof option.transform !== \"function\";\n}\n\n// Disambiguates a sort transform (e.g., {sort: \"date\"}) from a channel domain\n// sort definition (e.g., {sort: {y: \"x\"}}).\nexport function isDomainSort(sort) {\n return isOptions(sort) && sort.value === undefined && sort.channel === undefined;\n}\n\n// For marks specified either as [0, x] or [x1, x2], such as areas and bars.\nexport function maybeZero(x, x1, x2, x3 = identity) {\n if (x1 === undefined && x2 === undefined) {\n // {x} or {}\n (x1 = 0), (x2 = x === undefined ? x3 : x);\n } else if (x1 === undefined) {\n // {x, x2} or {x2}\n x1 = x === undefined ? 0 : x;\n } else if (x2 === undefined) {\n // {x, x1} or {x1}\n x2 = x === undefined ? 0 : x;\n }\n return [x1, x2];\n}\n\n// For marks that have x and y channels (e.g., cell, dot, line, text).\nexport function maybeTuple(x, y) {\n return x === undefined && y === undefined ? [first, second] : [x, y];\n}\n\n// A helper for extracting the z channel, if it is variable. Used by transforms\n// that require series, such as moving average and normalize.\nexport function maybeZ({z, fill, stroke} = {}) {\n if (z === undefined) [z] = maybeColorChannel(fill);\n if (z === undefined) [z] = maybeColorChannel(stroke);\n return z;\n}\n\n// Returns a Uint32Array with elements [0, 1, 2, … data.length - 1].\nexport function range(data) {\n const n = data.length;\n const r = new Uint32Array(n);\n for (let i = 0; i < n; ++i) r[i] = i;\n return r;\n}\n\n// Returns a filtered range of data given the test function.\nexport function where(data, test) {\n return range(data).filter((i) => test(data[i], i, data));\n}\n\n// Returns an array [values[index[0]], values[index[1]], …].\nexport function take(values, index) {\n return map(index, (i) => values[i]);\n}\n\n// Based on InternMap (d3.group).\nexport function keyof(value) {\n return value !== null && typeof value === \"object\" ? value.valueOf() : value;\n}\n\nexport function maybeInput(key, options) {\n if (options[key] !== undefined) return options[key];\n switch (key) {\n case \"x1\":\n case \"x2\":\n key = \"x\";\n break;\n case \"y1\":\n case \"y2\":\n key = \"y\";\n break;\n }\n return options[key];\n}\n\nexport function column(source) {\n // Defines a column whose values are lazily populated by calling the returned\n // setter. If the given source is labeled, the label is propagated to the\n // returned column definition.\n let value;\n return [\n {\n transform: () => value,\n label: labelof(source)\n },\n (v) => (value = v)\n ];\n}\n\n// Like column, but allows the source to be null.\nexport function maybeColumn(source) {\n return source == null ? [source] : column(source);\n}\n\nexport function labelof(value, defaultValue) {\n return typeof value === \"string\" ? value : value && value.label !== undefined ? value.label : defaultValue;\n}\n\n// Assuming that both x1 and x2 and lazy columns (per above), this derives a new\n// a column that’s the average of the two, and which inherits the column label\n// (if any). Both input columns are assumed to be quantitative. If either column\n// is temporal, the returned column is also temporal.\nexport function mid(x1, x2) {\n return {\n transform(data) {\n const X1 = x1.transform(data);\n const X2 = x2.transform(data);\n return isTemporal(X1) || isTemporal(X2)\n ? map(X1, (_, i) => new Date((+X1[i] + +X2[i]) / 2))\n : map(X1, (_, i) => (+X1[i] + +X2[i]) / 2, Float64Array);\n },\n label: x1.label\n };\n}\n\n// If interval is not nullish, converts interval shorthand such as a number (for\n// multiples) or a time interval name (such as “day”) to a {floor, offset,\n// range} object similar to a D3 time interval.\nexport function maybeInterval(interval, type) {\n if (interval == null) return;\n if (typeof interval === \"number\") {\n if (0 < interval && interval < 1 && Number.isInteger(1 / interval)) interval = -1 / interval;\n const n = Math.abs(interval);\n return interval < 0\n ? {\n floor: (d) => Math.floor(d * n) / n,\n offset: (d) => (d * n + 1) / n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo * n), hi * n).map((x) => x / n)\n }\n : {\n floor: (d) => Math.floor(d / n) * n,\n offset: (d) => d + n, // note: no optional step for simplicity\n range: (lo, hi) => rangei(Math.ceil(lo / n), hi / n).map((x) => x * n)\n };\n }\n if (typeof interval === \"string\") return (type === \"time\" ? maybeTimeInterval : maybeUtcInterval)(interval);\n if (typeof interval.floor !== \"function\") throw new Error(\"invalid interval; missing floor method\");\n if (typeof interval.offset !== \"function\") throw new Error(\"invalid interval; missing offset method\");\n return interval;\n}\n\n// Like maybeInterval, but requires a range method too.\nexport function maybeRangeInterval(interval, type) {\n interval = maybeInterval(interval, type);\n if (interval && typeof interval.range !== \"function\") throw new Error(\"invalid interval: missing range method\");\n return interval;\n}\n\n// Like maybeRangeInterval, but requires a ceil method too.\nexport function maybeNiceInterval(interval, type) {\n interval = maybeRangeInterval(interval, type);\n if (interval && typeof interval.ceil !== \"function\") throw new Error(\"invalid interval: missing ceil method\");\n return interval;\n}\n\n// This distinguishes between per-dimension options and a standalone value.\nexport function maybeValue(value) {\n return value === undefined || isOptions(value) ? value : {value};\n}\n\n// Coerces the given channel values (if any) to numbers. This is useful when\n// values will be interpolated into other code, such as an SVG transform, and\n// where we don’t wish to allow unexpected behavior for weird input.\nexport function numberChannel(source) {\n return source == null\n ? null\n : {\n transform: (data) => valueof(data, source, Float64Array),\n label: labelof(source)\n };\n}\n\nexport function isTuples(data) {\n if (!isIterable(data)) return false;\n for (const d of data) {\n if (d == null) continue;\n return typeof d === \"object\" && \"0\" in d && \"1\" in d;\n }\n}\n\nexport function isIterable(value) {\n return value && typeof value[Symbol.iterator] === \"function\";\n}\n\nexport function isTextual(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value !== \"object\" || value instanceof Date;\n }\n}\n\nexport function isOrdinal(values) {\n for (const value of values) {\n if (value == null) continue;\n const type = typeof value;\n return type === \"string\" || type === \"boolean\";\n }\n}\n\nexport function isTemporal(values) {\n for (const value of values) {\n if (value == null) continue;\n return value instanceof Date;\n }\n}\n\n// Are these strings that might represent dates? This is stricter than ISO 8601\n// because we want to ignore false positives on numbers; for example, the string\n// \"1192\" is more likely to represent a number than a date even though it is\n// valid ISO 8601 representing 1192-01-01.\nexport function isTemporalString(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"string\" && isNaN(value) && isoParse(value);\n }\n}\n\n// Are these strings that might represent numbers? This is stricter than\n// coercion because we want to ignore false positives on e.g. empty strings.\nexport function isNumericString(values) {\n for (const value of values) {\n if (value == null) continue;\n if (typeof value !== \"string\") return false;\n if (!value.trim()) continue;\n return !isNaN(value);\n }\n}\n\nexport function isNumeric(values) {\n for (const value of values) {\n if (value == null) continue;\n return typeof value === \"number\";\n }\n}\n\n// Returns true if every non-null value in the specified iterable of values\n// passes the specified predicate, and there is at least one non-null value;\n// returns false if at least one non-null value does not pass the specified\n// predicate; otherwise returns undefined (as if all values are null).\nexport function isEvery(values, is) {\n let every;\n for (const value of values) {\n if (value == null) continue;\n if (!is(value)) return false;\n every = true;\n }\n return every;\n}\n\n// Mostly relies on d3-color, with a few extra color keywords. Currently this\n// strictly requires that the value be a string; we might want to apply string\n// coercion here, though note that d3-color instances would need to support\n// valueOf to work correctly with InternMap.\n// https://www.w3.org/TR/SVG11/painting.html#SpecifyingPaint\nexport function isColor(value) {\n if (typeof value !== \"string\") return false;\n value = value.toLowerCase().trim();\n return (\n value === \"none\" ||\n value === \"currentcolor\" ||\n (value.startsWith(\"url(\") && value.endsWith(\")\")) || // , e.g. pattern or gradient\n (value.startsWith(\"var(\") && value.endsWith(\")\")) || // CSS variable\n color(value) !== null\n );\n}\n\nexport function isOpacity(value) {\n return typeof value === \"number\" && ((0 <= value && value <= 1) || isNaN(value));\n}\n\nexport function isNoneish(value) {\n return value == null || isNone(value);\n}\n\nexport function isNone(value) {\n return /^\\s*none\\s*$/i.test(value);\n}\n\nexport function isRound(value) {\n return /^\\s*round\\s*$/i.test(value);\n}\n\nexport function maybeFrameAnchor(value = \"middle\") {\n return keyword(value, \"frameAnchor\", [\n \"middle\",\n \"top-left\",\n \"top\",\n \"top-right\",\n \"right\",\n \"bottom-right\",\n \"bottom\",\n \"bottom-left\",\n \"left\"\n ]);\n}\n\n// Like a sort comparator, returns a positive value if the given array of values\n// is in ascending order, a negative value if the values are in descending\n// order. Assumes monotonicity; only tests the first and last values.\nexport function orderof(values) {\n if (values == null) return;\n const first = values[0];\n const last = values[values.length - 1];\n return descending(first, last);\n}\n\n// Unlike {...defaults, ...options}, this ensures that any undefined (but\n// present) properties in options inherit the given default value.\nexport function inherit(options = {}, ...rest) {\n let o = options;\n for (const defaults of rest) {\n for (const key in defaults) {\n if (o[key] === undefined) {\n const value = defaults[key];\n if (o === options) o = {...o, [key]: value};\n else o[key] = value;\n }\n }\n }\n return o;\n}\n\n// Given an iterable of named things (objects with a name property), returns a\n// corresponding object with properties associated with the given name.\nexport function named(things) {\n console.warn(\"named iterables are deprecated; please use an object instead\");\n const names = new Set();\n return Object.fromEntries(\n Array.from(things, (thing) => {\n const {name} = thing;\n if (name == null) throw new Error(\"missing name\");\n const key = `${name}`;\n if (key === \"__proto__\") throw new Error(`illegal name: ${key}`);\n if (names.has(key)) throw new Error(`duplicate name: ${key}`);\n names.add(key);\n return [name, thing];\n })\n );\n}\n\nexport function maybeNamed(things) {\n return isIterable(things) ? named(things) : things;\n}\n","// Positional scales have associated axes, and for ordinal data, a point or band\n// scale is used instead of an ordinal scale.\nexport const position = Symbol(\"position\");\n\n// Color scales default to the turbo interpolator for quantitative data, and to\n// the Tableau10 scheme for ordinal data. Color scales may also have an\n// associated legend.\nexport const color = Symbol(\"color\");\n\n// Radius scales default to the sqrt type, have a default range of [0, 3], and a\n// default domain from 0 to the median first quartile of associated channels.\nexport const radius = Symbol(\"radius\");\n\n// Length scales default to the linear type, have a default range of [0, 12],\n// and a default domain from 0 to the median median of associated channels.\nexport const length = Symbol(\"length\");\n\n// Opacity scales have a default range of [0, 1], and a default domain from 0 to\n// the maximum value of associated channels.\nexport const opacity = Symbol(\"opacity\");\n\n// Symbol scales have a default range of categorical symbols.\nexport const symbol = Symbol(\"symbol\");\n\n// TODO Rather than hard-coding the list of known scale names, collect the names\n// and categories for each plot specification, so that custom marks can register\n// custom scales.\nexport const registry = new Map([\n [\"x\", position],\n [\"y\", position],\n [\"fx\", position],\n [\"fy\", position],\n [\"r\", radius],\n [\"color\", color],\n [\"opacity\", opacity],\n [\"symbol\", symbol],\n [\"length\", length]\n]);\n","import {symbolAsterisk, symbolDiamond2, symbolPlus, symbolSquare2, symbolTriangle2, symbolTimes} from \"d3\";\nimport {symbolCircle, symbolCross, symbolDiamond, symbolSquare, symbolStar, symbolTriangle, symbolWye} from \"d3\";\n\nexport const sqrt3 = Math.sqrt(3);\nexport const sqrt4_3 = 2 / sqrt3;\n\nconst symbolHexagon = {\n draw(context, size) {\n const rx = Math.sqrt(size / Math.PI),\n ry = rx * sqrt4_3,\n hy = ry / 2;\n context.moveTo(0, ry);\n context.lineTo(rx, hy);\n context.lineTo(rx, -hy);\n context.lineTo(0, -ry);\n context.lineTo(-rx, -hy);\n context.lineTo(-rx, hy);\n context.closePath();\n }\n};\n\nconst symbols = new Map([\n [\"asterisk\", symbolAsterisk],\n [\"circle\", symbolCircle],\n [\"cross\", symbolCross],\n [\"diamond\", symbolDiamond],\n [\"diamond2\", symbolDiamond2],\n [\"hexagon\", symbolHexagon],\n [\"plus\", symbolPlus],\n [\"square\", symbolSquare],\n [\"square2\", symbolSquare2],\n [\"star\", symbolStar],\n [\"times\", symbolTimes],\n [\"triangle\", symbolTriangle],\n [\"triangle2\", symbolTriangle2],\n [\"wye\", symbolWye]\n]);\n\nfunction isSymbolObject(value) {\n return value && typeof value.draw === \"function\";\n}\n\nexport function isSymbol(value) {\n if (isSymbolObject(value)) return true;\n if (typeof value !== \"string\") return false;\n return symbols.has(value.toLowerCase());\n}\n\nexport function maybeSymbol(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return symbol;\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return value;\n throw new Error(`invalid symbol: ${symbol}`);\n}\n\nexport function maybeSymbolChannel(symbol) {\n if (symbol == null || isSymbolObject(symbol)) return [undefined, symbol];\n if (typeof symbol === \"string\") {\n const value = symbols.get(`${symbol}`.toLowerCase());\n if (value) return [undefined, value];\n }\n return [symbol, undefined];\n}\n","let warnings = 0;\n\nexport function consumeWarnings() {\n const w = warnings;\n warnings = 0;\n return w;\n}\n\nexport function warn(message) {\n console.warn(message);\n ++warnings;\n}\n","import {\n interpolateBlues,\n interpolateBrBG,\n interpolateBuGn,\n interpolateBuPu,\n interpolateGnBu,\n interpolateGreens,\n interpolateGreys,\n interpolateOranges,\n interpolateOrRd,\n interpolatePiYG,\n interpolatePRGn,\n interpolatePuBu,\n interpolatePuBuGn,\n interpolatePuOr,\n interpolatePuRd,\n interpolatePurples,\n interpolateRdBu,\n interpolateRdGy,\n interpolateRdPu,\n interpolateRdYlBu,\n interpolateRdYlGn,\n interpolateReds,\n interpolateSpectral,\n interpolateYlGn,\n interpolateYlGnBu,\n interpolateYlOrBr,\n interpolateYlOrRd,\n interpolateTurbo,\n interpolateViridis,\n interpolateMagma,\n interpolateInferno,\n interpolatePlasma,\n interpolateCividis,\n interpolateCubehelixDefault,\n interpolateWarm,\n interpolateCool,\n interpolateRainbow,\n interpolateSinebow,\n quantize,\n schemeAccent,\n schemeBlues,\n schemeBrBG,\n schemeBuGn,\n schemeBuPu,\n schemeCategory10,\n schemeDark2,\n schemeGnBu,\n schemeGreens,\n schemeGreys,\n schemeOranges,\n schemeOrRd,\n schemePaired,\n schemePastel1,\n schemePastel2,\n schemePiYG,\n schemePRGn,\n schemePuBu,\n schemePuBuGn,\n schemePuOr,\n schemePuRd,\n schemePurples,\n schemeRdBu,\n schemeRdGy,\n schemeRdPu,\n schemeRdYlBu,\n schemeRdYlGn,\n schemeReds,\n schemeSet1,\n schemeSet2,\n schemeSet3,\n schemeSpectral,\n schemeTableau10,\n schemeYlGn,\n schemeYlGnBu,\n schemeYlOrBr,\n schemeYlOrRd\n} from \"d3\";\n\nconst ordinalSchemes = new Map([\n // categorical\n [\"accent\", schemeAccent],\n [\"category10\", schemeCategory10],\n [\"dark2\", schemeDark2],\n [\"paired\", schemePaired],\n [\"pastel1\", schemePastel1],\n [\"pastel2\", schemePastel2],\n [\"set1\", schemeSet1],\n [\"set2\", schemeSet2],\n [\"set3\", schemeSet3],\n [\"tableau10\", schemeTableau10],\n\n // diverging\n [\"brbg\", scheme11(schemeBrBG, interpolateBrBG)],\n [\"prgn\", scheme11(schemePRGn, interpolatePRGn)],\n [\"piyg\", scheme11(schemePiYG, interpolatePiYG)],\n [\"puor\", scheme11(schemePuOr, interpolatePuOr)],\n [\"rdbu\", scheme11(schemeRdBu, interpolateRdBu)],\n [\"rdgy\", scheme11(schemeRdGy, interpolateRdGy)],\n [\"rdylbu\", scheme11(schemeRdYlBu, interpolateRdYlBu)],\n [\"rdylgn\", scheme11(schemeRdYlGn, interpolateRdYlGn)],\n [\"spectral\", scheme11(schemeSpectral, interpolateSpectral)],\n\n // reversed diverging (for temperature data)\n [\"burd\", scheme11r(schemeRdBu, interpolateRdBu)],\n [\"buylrd\", scheme11r(schemeRdYlBu, interpolateRdYlBu)],\n\n // sequential (single-hue)\n [\"blues\", scheme9(schemeBlues, interpolateBlues)],\n [\"greens\", scheme9(schemeGreens, interpolateGreens)],\n [\"greys\", scheme9(schemeGreys, interpolateGreys)],\n [\"oranges\", scheme9(schemeOranges, interpolateOranges)],\n [\"purples\", scheme9(schemePurples, interpolatePurples)],\n [\"reds\", scheme9(schemeReds, interpolateReds)],\n\n // sequential (multi-hue)\n [\"turbo\", schemei(interpolateTurbo)],\n [\"viridis\", schemei(interpolateViridis)],\n [\"magma\", schemei(interpolateMagma)],\n [\"inferno\", schemei(interpolateInferno)],\n [\"plasma\", schemei(interpolatePlasma)],\n [\"cividis\", schemei(interpolateCividis)],\n [\"cubehelix\", schemei(interpolateCubehelixDefault)],\n [\"warm\", schemei(interpolateWarm)],\n [\"cool\", schemei(interpolateCool)],\n [\"bugn\", scheme9(schemeBuGn, interpolateBuGn)],\n [\"bupu\", scheme9(schemeBuPu, interpolateBuPu)],\n [\"gnbu\", scheme9(schemeGnBu, interpolateGnBu)],\n [\"orrd\", scheme9(schemeOrRd, interpolateOrRd)],\n [\"pubu\", scheme9(schemePuBu, interpolatePuBu)],\n [\"pubugn\", scheme9(schemePuBuGn, interpolatePuBuGn)],\n [\"purd\", scheme9(schemePuRd, interpolatePuRd)],\n [\"rdpu\", scheme9(schemeRdPu, interpolateRdPu)],\n [\"ylgn\", scheme9(schemeYlGn, interpolateYlGn)],\n [\"ylgnbu\", scheme9(schemeYlGnBu, interpolateYlGnBu)],\n [\"ylorbr\", scheme9(schemeYlOrBr, interpolateYlOrBr)],\n [\"ylorrd\", scheme9(schemeYlOrRd, interpolateYlOrRd)],\n\n // cyclical\n [\"rainbow\", schemeicyclical(interpolateRainbow)],\n [\"sinebow\", schemeicyclical(interpolateSinebow)]\n]);\n\nfunction scheme9(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 1) return [scheme[3][1]]; // favor midpoint\n if (n === 2) return [scheme[3][1], scheme[3][2]]; // favor darker\n n = Math.max(3, Math.floor(n));\n return n > 9 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][0], scheme[3][2]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize(interpolate, n) : scheme[n];\n };\n}\n\nfunction scheme11r(scheme, interpolate) {\n return ({length: n}) => {\n if (n === 2) return [scheme[3][2], scheme[3][0]]; // favor diverging extrema\n n = Math.max(3, Math.floor(n));\n return n > 11 ? quantize((t) => interpolate(1 - t), n) : scheme[n].slice().reverse();\n };\n}\n\nfunction schemei(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.max(2, Math.floor(n)));\n}\n\nfunction schemeicyclical(interpolate) {\n return ({length: n}) => quantize(interpolate, Math.floor(n) + 1).slice(0, -1);\n}\n\nexport function ordinalScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!ordinalSchemes.has(s)) throw new Error(`unknown ordinal scheme: ${s}`);\n return ordinalSchemes.get(s);\n}\n\nexport function ordinalRange(scheme, length) {\n const s = ordinalScheme(scheme);\n const r = typeof s === \"function\" ? s({length}) : s;\n return r.length !== length ? r.slice(0, length) : r;\n}\n\n// If the specified domain contains only booleans (ignoring null and undefined),\n// returns a corresponding range where false is mapped to the low color and true\n// is mapped to the high color of the specified scheme.\nexport function maybeBooleanRange(domain, scheme = \"greys\") {\n const range = new Set();\n const [f, t] = ordinalRange(scheme, 2);\n for (const value of domain) {\n if (value == null) continue;\n if (value === true) range.add(t);\n else if (value === false) range.add(f);\n else return;\n }\n return [...range];\n}\n\nconst quantitativeSchemes = new Map([\n // diverging\n [\"brbg\", interpolateBrBG],\n [\"prgn\", interpolatePRGn],\n [\"piyg\", interpolatePiYG],\n [\"puor\", interpolatePuOr],\n [\"rdbu\", interpolateRdBu],\n [\"rdgy\", interpolateRdGy],\n [\"rdylbu\", interpolateRdYlBu],\n [\"rdylgn\", interpolateRdYlGn],\n [\"spectral\", interpolateSpectral],\n\n // reversed diverging (for temperature data)\n [\"burd\", (t) => interpolateRdBu(1 - t)],\n [\"buylrd\", (t) => interpolateRdYlBu(1 - t)],\n\n // sequential (single-hue)\n [\"blues\", interpolateBlues],\n [\"greens\", interpolateGreens],\n [\"greys\", interpolateGreys],\n [\"purples\", interpolatePurples],\n [\"reds\", interpolateReds],\n [\"oranges\", interpolateOranges],\n\n // sequential (multi-hue)\n [\"turbo\", interpolateTurbo],\n [\"viridis\", interpolateViridis],\n [\"magma\", interpolateMagma],\n [\"inferno\", interpolateInferno],\n [\"plasma\", interpolatePlasma],\n [\"cividis\", interpolateCividis],\n [\"cubehelix\", interpolateCubehelixDefault],\n [\"warm\", interpolateWarm],\n [\"cool\", interpolateCool],\n [\"bugn\", interpolateBuGn],\n [\"bupu\", interpolateBuPu],\n [\"gnbu\", interpolateGnBu],\n [\"orrd\", interpolateOrRd],\n [\"pubugn\", interpolatePuBuGn],\n [\"pubu\", interpolatePuBu],\n [\"purd\", interpolatePuRd],\n [\"rdpu\", interpolateRdPu],\n [\"ylgnbu\", interpolateYlGnBu],\n [\"ylgn\", interpolateYlGn],\n [\"ylorbr\", interpolateYlOrBr],\n [\"ylorrd\", interpolateYlOrRd],\n\n // cyclical\n [\"rainbow\", interpolateRainbow],\n [\"sinebow\", interpolateSinebow]\n]);\n\nexport function quantitativeScheme(scheme) {\n const s = `${scheme}`.toLowerCase();\n if (!quantitativeSchemes.has(s)) throw new Error(`unknown quantitative scheme: ${s}`);\n return quantitativeSchemes.get(s);\n}\n\nconst divergingSchemes = new Set([\n \"brbg\",\n \"prgn\",\n \"piyg\",\n \"puor\",\n \"rdbu\",\n \"rdgy\",\n \"rdylbu\",\n \"rdylgn\",\n \"spectral\",\n \"burd\",\n \"buylrd\"\n]);\n\nexport function isDivergingScheme(scheme) {\n return scheme != null && divergingSchemes.has(`${scheme}`.toLowerCase());\n}\n","import {\n descending,\n extent,\n interpolateHcl,\n interpolateHsl,\n interpolateLab,\n interpolateNumber,\n interpolateRgb,\n interpolateRound,\n min,\n max,\n median,\n quantile,\n quantize,\n reverse as reverseof,\n scaleLinear,\n scaleLog,\n scalePow,\n scaleQuantile,\n scaleSymlog,\n scaleThreshold,\n scaleIdentity,\n ticks\n} from \"d3\";\nimport {positive, negative, finite} from \"../defined.js\";\nimport {arrayify, constant, orderof, slice, maybeNiceInterval, maybeRangeInterval} from \"../options.js\";\nimport {ordinalRange, quantitativeScheme} from \"./schemes.js\";\nimport {registry, radius, opacity, color, length} from \"./index.js\";\n\nexport const flip = (i) => (t) => i(1 - t);\nconst unit = [0, 1];\n\nconst interpolators = new Map([\n // numbers\n [\"number\", interpolateNumber],\n\n // color spaces\n [\"rgb\", interpolateRgb],\n [\"hsl\", interpolateHsl],\n [\"hcl\", interpolateHcl],\n [\"lab\", interpolateLab]\n]);\n\nexport function maybeInterpolator(interpolate) {\n const i = `${interpolate}`.toLowerCase();\n if (!interpolators.has(i)) throw new Error(`unknown interpolator: ${i}`);\n return interpolators.get(i);\n}\n\nexport function createScaleQ(\n key,\n scale,\n channels,\n {\n type,\n nice,\n clamp,\n zero,\n domain = inferAutoDomain(key, channels),\n unknown,\n round,\n scheme,\n interval,\n range = registry.get(key) === radius\n ? inferRadialRange(channels, domain)\n : registry.get(key) === length\n ? inferLengthRange(channels, domain)\n : registry.get(key) === opacity\n ? unit\n : undefined,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : type === \"cyclical\" ? \"rainbow\" : \"turbo\")\n : round\n ? interpolateRound\n : interpolateNumber,\n reverse\n }\n) {\n interval = maybeRangeInterval(interval, type);\n if (type === \"cyclical\" || type === \"sequential\") type = \"linear\"; // shorthand for color schemes\n reverse = !!reverse;\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n if (interpolate.length === 1) {\n if (reverse) {\n interpolate = flip(interpolate);\n reverse = false;\n }\n if (range === undefined) {\n range = Float64Array.from(domain, (_, i) => i / (domain.length - 1));\n if (range.length === 2) range = unit; // optimize common case of [0, 1]\n }\n scale.interpolate((range === unit ? constant : interpolatePiecewise)(interpolate));\n } else {\n scale.interpolate(interpolate);\n }\n\n // If a zero option is specified, we assume that the domain is numeric, and we\n // want to ensure that the domain crosses zero. However, note that the domain\n // may be reversed (descending) so we shouldn’t assume that the first value is\n // smaller than the last; and also it’s possible that the domain has more than\n // two values for a “poly” scale. And lastly be careful not to mutate input!\n if (zero) {\n const [min, max] = extent(domain);\n if (min > 0 || max < 0) {\n domain = slice(domain);\n if (orderof(domain) !== Math.sign(min)) domain[domain.length - 1] = 0;\n // [2, 1] or [-2, -1]\n else domain[0] = 0; // [1, 2] or [-1, -2]\n }\n }\n\n if (reverse) domain = reverseof(domain);\n scale.domain(domain).unknown(unknown);\n if (nice) scale.nice(maybeNice(nice, type)), (domain = scale.domain());\n if (range !== undefined) scale.range(range);\n if (clamp) scale.clamp(clamp);\n return {type, domain, range, scale, interpolate, interval};\n}\n\nfunction maybeNice(nice, type) {\n return nice === true ? undefined : typeof nice === \"number\" ? nice : maybeNiceInterval(nice, type);\n}\n\nexport function createScaleLinear(key, channels, options) {\n return createScaleQ(key, scaleLinear(), channels, options);\n}\n\nexport function createScaleSqrt(key, channels, options) {\n return createScalePow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScalePow(key, channels, {exponent = 1, ...options}) {\n return createScaleQ(key, scalePow().exponent(exponent), channels, {...options, type: \"pow\"});\n}\n\nexport function createScaleLog(key, channels, {base = 10, domain = inferLogDomain(channels), ...options}) {\n return createScaleQ(key, scaleLog().base(base), channels, {...options, domain});\n}\n\nexport function createScaleSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleQ(key, scaleSymlog().constant(constant), channels, options);\n}\n\nexport function createScaleQuantile(\n key,\n channels,\n {\n range,\n quantiles = range === undefined ? 5 : (range = [...range]).length, // deprecated; use n instead\n n = quantiles,\n scheme = \"rdylbu\",\n domain = inferQuantileDomain(channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n if (range === undefined) {\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n }\n if (domain.length > 0) {\n domain = scaleQuantile(domain, range === undefined ? {length: n} : range).quantiles();\n }\n return createScaleThreshold(key, channels, {domain, range, reverse, unknown});\n}\n\nexport function createScaleQuantize(\n key,\n channels,\n {\n range,\n n = range === undefined ? 5 : (range = [...range]).length,\n scheme = \"rdylbu\",\n domain = inferAutoDomain(key, channels),\n unknown,\n interpolate,\n reverse\n }\n) {\n const [min, max] = extent(domain);\n let thresholds;\n if (range === undefined) {\n thresholds = ticks(min, max, n); // approximate number of nice, round thresholds\n if (thresholds[0] <= min) thresholds.splice(0, 1); // drop exact lower bound\n if (thresholds[thresholds.length - 1] >= max) thresholds.pop(); // drop exact upper bound\n n = thresholds.length + 1;\n range =\n interpolate !== undefined\n ? quantize(interpolate, n)\n : registry.get(key) === color\n ? ordinalRange(scheme, n)\n : undefined;\n } else {\n thresholds = quantize(interpolateNumber(min, max), n + 1).slice(1, -1); // exactly n - 1 thresholds to match range\n if (min instanceof Date) thresholds = thresholds.map((x) => new Date(x)); // preserve date types\n }\n if (orderof(arrayify(domain)) < 0) thresholds.reverse(); // preserve descending domain\n return createScaleThreshold(key, channels, {domain: thresholds, range, reverse, unknown});\n}\n\nexport function createScaleThreshold(\n key,\n channels,\n {\n domain = [0], // explicit thresholds in ascending order\n unknown,\n scheme = \"rdylbu\",\n interpolate,\n range = interpolate !== undefined\n ? quantize(interpolate, domain.length + 1)\n : registry.get(key) === color\n ? ordinalRange(scheme, domain.length + 1)\n : undefined,\n reverse\n }\n) {\n domain = arrayify(domain);\n const sign = orderof(domain); // preserve descending domain\n if (!isNaN(sign) && !isOrdered(domain, sign)) throw new Error(`the ${key} scale has a non-monotonic domain`);\n if (reverse) range = reverseof(range); // domain ascending, so reverse range\n return {\n type: \"threshold\",\n scale: scaleThreshold(sign < 0 ? reverseof(domain) : domain, range === undefined ? [] : range).unknown(unknown),\n domain,\n range\n };\n}\n\nfunction isOrdered(domain, sign) {\n for (let i = 1, n = domain.length, d = domain[0]; i < n; ++i) {\n const s = descending(d, (d = domain[i]));\n if (s !== 0 && s !== sign) return false;\n }\n return true;\n}\n\nexport function createScaleIdentity() {\n return {type: \"identity\", scale: scaleIdentity()};\n}\n\nexport function inferDomain(channels, f = finite) {\n return channels.length\n ? [\n min(channels, ({value}) => (value === undefined ? value : min(value, f))),\n max(channels, ({value}) => (value === undefined ? value : max(value, f)))\n ]\n : [0, 1];\n}\n\nfunction inferAutoDomain(key, channels) {\n const type = registry.get(key);\n return (type === radius || type === opacity || type === length ? inferZeroDomain : inferDomain)(channels);\n}\n\nfunction inferZeroDomain(channels) {\n return [0, channels.length ? max(channels, ({value}) => (value === undefined ? value : max(value, finite))) : 1];\n}\n\n// We don’t want the upper bound of the radial domain to be zero, as this would\n// be degenerate, so we ignore nonpositive values. We also don’t want the\n// maximum default radius to exceed 30px.\nfunction inferRadialRange(channels, domain) {\n const hint = channels.find(({radius}) => radius !== undefined);\n if (hint !== undefined) return [0, hint.radius]; // a natural maximum radius, e.g. hexbins\n const h25 = quantile(channels, 0.5, ({value}) => (value === undefined ? NaN : quantile(value, 0.25, positive)));\n const range = domain.map((d) => 3 * Math.sqrt(d / h25));\n const k = 30 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\n// We want a length scale’s domain to go from zero to a positive value, and to\n// treat negative lengths if any as inverted vectors of equivalent magnitude. We\n// also don’t want the maximum default length to exceed 60px.\nfunction inferLengthRange(channels, domain) {\n const h50 = median(channels, ({value}) => (value === undefined ? NaN : median(value, Math.abs)));\n const range = domain.map((d) => (12 * d) / h50);\n const k = 60 / max(range);\n return k < 1 ? range.map((r) => r * k) : range;\n}\n\nfunction inferLogDomain(channels) {\n for (const {value} of channels) {\n if (value !== undefined) {\n for (let v of value) {\n if (v > 0) return inferDomain(channels, positive);\n if (v < 0) return inferDomain(channels, negative);\n }\n }\n }\n return [1, 10];\n}\n\nfunction inferQuantileDomain(channels) {\n const domain = [];\n for (const {value} of channels) {\n if (value === undefined) continue;\n for (const v of value) domain.push(v);\n }\n return domain;\n}\n\nexport function interpolatePiecewise(interpolate) {\n return (i, j) => (t) => interpolate(i + t * (j - i));\n}\n","import {\n descending,\n interpolateNumber,\n interpolateRgb,\n piecewise,\n scaleDiverging,\n scaleDivergingLog,\n scaleDivergingPow,\n scaleDivergingSymlog\n} from \"d3\";\nimport {positive, negative} from \"../defined.js\";\nimport {quantitativeScheme} from \"./schemes.js\";\nimport {registry, color} from \"./index.js\";\nimport {inferDomain, maybeInterpolator, flip, interpolatePiecewise} from \"./quantitative.js\";\n\nfunction createScaleD(\n key,\n scale,\n transform,\n channels,\n {\n type,\n nice,\n clamp,\n domain = inferDomain(channels),\n unknown,\n pivot = 0,\n scheme,\n range,\n symmetric = true,\n interpolate = registry.get(key) === color\n ? scheme == null && range !== undefined\n ? interpolateRgb\n : quantitativeScheme(scheme !== undefined ? scheme : \"rdbu\")\n : interpolateNumber,\n reverse\n }\n) {\n pivot = +pivot;\n let [min, max] = domain;\n if (descending(min, max) < 0) ([min, max] = [max, min]), (reverse = !reverse);\n min = Math.min(min, pivot);\n max = Math.max(max, pivot);\n\n // Sometimes interpolate is a named interpolator, such as \"lab\" for Lab color\n // space. Other times interpolate is a function that takes two arguments and\n // is used in conjunction with the range. And other times the interpolate\n // function is a “fixed” interpolator on the [0, 1] interval, as when a\n // color scheme such as interpolateRdBu is used.\n if (typeof interpolate !== \"function\") {\n interpolate = maybeInterpolator(interpolate);\n }\n\n // If an explicit range is specified, promote it to a piecewise interpolator.\n if (range !== undefined) {\n interpolate =\n interpolate.length === 1 ? interpolatePiecewise(interpolate)(...range) : piecewise(interpolate, range);\n }\n\n // Reverse before normalization.\n if (reverse) interpolate = flip(interpolate);\n\n // Normalize the interpolator for symmetric difference around the pivot.\n if (symmetric) {\n const mid = transform.apply(pivot);\n const mindelta = mid - transform.apply(min);\n const maxdelta = transform.apply(max) - mid;\n if (mindelta < maxdelta) min = transform.invert(mid - maxdelta);\n else if (mindelta > maxdelta) max = transform.invert(mid + mindelta);\n }\n\n scale.domain([min, pivot, max]).unknown(unknown).interpolator(interpolate);\n if (clamp) scale.clamp(clamp);\n if (nice) scale.nice(nice);\n return {type, domain: [min, max], pivot, interpolate, scale};\n}\n\nexport function createScaleDiverging(key, channels, options) {\n return createScaleD(key, scaleDiverging(), transformIdentity, channels, options);\n}\n\nexport function createScaleDivergingSqrt(key, channels, options) {\n return createScaleDivergingPow(key, channels, {...options, exponent: 0.5});\n}\n\nexport function createScaleDivergingPow(key, channels, {exponent = 1, ...options}) {\n return createScaleD(key, scaleDivergingPow().exponent((exponent = +exponent)), transformPow(exponent), channels, {\n ...options,\n type: \"diverging-pow\"\n });\n}\n\nexport function createScaleDivergingLog(\n key,\n channels,\n {base = 10, pivot = 1, domain = inferDomain(channels, pivot < 0 ? negative : positive), ...options}\n) {\n return createScaleD(key, scaleDivergingLog().base((base = +base)), transformLog, channels, {\n domain,\n pivot,\n ...options\n });\n}\n\nexport function createScaleDivergingSymlog(key, channels, {constant = 1, ...options}) {\n return createScaleD(\n key,\n scaleDivergingSymlog().constant((constant = +constant)),\n transformSymlog(constant),\n channels,\n options\n );\n}\n\nconst transformIdentity = {\n apply(x) {\n return x;\n },\n invert(x) {\n return x;\n }\n};\n\nconst transformLog = {\n apply: Math.log,\n invert: Math.exp\n};\n\nconst transformSqrt = {\n apply(x) {\n return Math.sign(x) * Math.sqrt(Math.abs(x));\n },\n invert(x) {\n return Math.sign(x) * (x * x);\n }\n};\n\nfunction transformPow(exponent) {\n return exponent === 0.5\n ? transformSqrt\n : {\n apply(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), exponent);\n },\n invert(x) {\n return Math.sign(x) * Math.pow(Math.abs(x), 1 / exponent);\n }\n };\n}\n\nfunction transformSymlog(constant) {\n return {\n apply(x) {\n return Math.sign(x) * Math.log1p(Math.abs(x / constant));\n },\n invert(x) {\n return Math.sign(x) * Math.expm1(Math.abs(x)) * constant;\n }\n };\n}\n","import {scaleTime, scaleUtc} from \"d3\";\nimport {createScaleQ} from \"./quantitative.js\";\n\nfunction createScaleT(key, scale, channels, options) {\n return createScaleQ(key, scale, channels, options);\n}\n\nexport function createScaleTime(key, channels, options) {\n return createScaleT(key, scaleTime(), channels, options);\n}\n\nexport function createScaleUtc(key, channels, options) {\n return createScaleT(key, scaleUtc(), channels, options);\n}\n","import {InternSet, extent, quantize, reverse as reverseof, sort, symbolsFill, symbolsStroke} from \"d3\";\nimport {scaleBand, scaleOrdinal, scalePoint, scaleImplicit} from \"d3\";\nimport {ascendingDefined} from \"../defined.js\";\nimport {isNoneish, map, maybeRangeInterval} from \"../options.js\";\nimport {maybeSymbol} from \"../symbol.js\";\nimport {registry, color, position, symbol} from \"./index.js\";\nimport {maybeBooleanRange, ordinalScheme, quantitativeScheme} from \"./schemes.js\";\n\n// This denotes an implicitly ordinal color scale: the scale type was not set,\n// but the associated values are strings or booleans. If the associated defined\n// values are entirely boolean, the range will default to greys. You can opt out\n// of this by setting the type explicitly.\nexport const ordinalImplicit = Symbol(\"ordinal\");\n\nfunction createScaleO(key, scale, channels, {type, interval, domain, range, reverse, hint}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n if (type === \"categorical\" || type === ordinalImplicit) type = \"ordinal\"; // shorthand for color schemes\n if (reverse) domain = reverseof(domain);\n scale.domain(domain);\n if (range !== undefined) {\n // If the range is specified as a function, pass it the domain.\n if (typeof range === \"function\") range = range(domain);\n scale.range(range);\n }\n return {type, domain, range, scale, hint, interval};\n}\n\nexport function createScaleOrdinal(key, channels, {type, interval, domain, range, scheme, unknown, ...options}) {\n interval = maybeRangeInterval(interval, type);\n if (domain === undefined) domain = inferDomain(channels, interval, key);\n let hint;\n if (registry.get(key) === symbol) {\n hint = inferSymbolHint(channels);\n range = range === undefined ? inferSymbolRange(hint) : map(range, maybeSymbol);\n } else if (registry.get(key) === color) {\n if (range === undefined && (type === \"ordinal\" || type === ordinalImplicit)) {\n range = maybeBooleanRange(domain, scheme);\n if (range !== undefined) scheme = undefined; // Don’t re-apply scheme.\n }\n if (scheme === undefined && range === undefined) {\n scheme = type === \"ordinal\" ? \"turbo\" : \"tableau10\";\n }\n if (scheme !== undefined) {\n if (range !== undefined) {\n const interpolate = quantitativeScheme(scheme);\n const t0 = range[0],\n d = range[1] - range[0];\n range = ({length: n}) => quantize((t) => interpolate(t0 + d * t), n);\n } else {\n range = ordinalScheme(scheme);\n }\n }\n }\n if (unknown === scaleImplicit) {\n throw new Error(`implicit unknown on ${key} scale is not supported`);\n }\n return createScaleO(key, scaleOrdinal().unknown(unknown), channels, {...options, type, domain, range, hint});\n}\n\nexport function createScalePoint(key, channels, {align = 0.5, padding = 0.5, ...options}) {\n return maybeRound(scalePoint().align(align).padding(padding), channels, options, key);\n}\n\nexport function createScaleBand(\n key,\n channels,\n {\n align = 0.5,\n padding = 0.1,\n paddingInner = padding,\n paddingOuter = key === \"fx\" || key === \"fy\" ? 0 : padding,\n ...options\n }\n) {\n return maybeRound(\n scaleBand().align(align).paddingInner(paddingInner).paddingOuter(paddingOuter),\n channels,\n options,\n key\n );\n}\n\nfunction maybeRound(scale, channels, options, key) {\n let {round} = options;\n if (round !== undefined) scale.round((round = !!round));\n scale = createScaleO(key, scale, channels, options);\n scale.round = round; // preserve for autoScaleRound\n return scale;\n}\n\nfunction inferDomain(channels, interval, key) {\n const values = new InternSet();\n for (const {value, domain} of channels) {\n if (domain !== undefined) return domain(); // see channelDomain\n if (value === undefined) continue;\n for (const v of value) values.add(v);\n }\n if (interval !== undefined) {\n const [min, max] = extent(values).map(interval.floor, interval);\n return interval.range(min, interval.offset(max));\n }\n if (values.size > 10e3 && registry.get(key) === position) {\n throw new Error(`implicit ordinal domain of ${key} scale has more than 10,000 values`);\n }\n return sort(values, ascendingDefined);\n}\n\n// If all channels provide a consistent hint, propagate it to the scale.\nfunction inferHint(channels, key) {\n let value;\n for (const {hint} of channels) {\n const candidate = hint?.[key];\n if (candidate === undefined) continue; // no hint here\n if (value === undefined) value = candidate;\n // first hint\n else if (value !== candidate) return; // inconsistent hint\n }\n return value;\n}\n\nfunction inferSymbolHint(channels) {\n return {\n fill: inferHint(channels, \"fill\"),\n stroke: inferHint(channels, \"stroke\")\n };\n}\n\nfunction inferSymbolRange(hint) {\n return isNoneish(hint.fill) ? symbolsStroke : symbolsFill;\n}\n","import {\n isOrdinal,\n isTemporal,\n isTemporalString,\n isNumericString,\n isScaleOptions,\n map,\n slice,\n coerceNumbers,\n coerceDates\n} from \"./options.js\";\nimport {registry, color, position, radius, opacity, symbol, length} from \"./scales/index.js\";\nimport {\n createScaleLinear,\n createScaleSqrt,\n createScalePow,\n createScaleLog,\n createScaleSymlog,\n createScaleQuantile,\n createScaleQuantize,\n createScaleThreshold,\n createScaleIdentity\n} from \"./scales/quantitative.js\";\nimport {\n createScaleDiverging,\n createScaleDivergingSqrt,\n createScaleDivergingPow,\n createScaleDivergingLog,\n createScaleDivergingSymlog\n} from \"./scales/diverging.js\";\nimport {isDivergingScheme} from \"./scales/schemes.js\";\nimport {createScaleTime, createScaleUtc} from \"./scales/temporal.js\";\nimport {createScaleOrdinal, createScalePoint, createScaleBand, ordinalImplicit} from \"./scales/ordinal.js\";\nimport {maybeSymbol} from \"./symbol.js\";\nimport {warn} from \"./warnings.js\";\n\nexport function createScales(\n channelsByScale,\n {\n label: globalLabel,\n inset: globalInset = 0,\n insetTop: globalInsetTop = globalInset,\n insetRight: globalInsetRight = globalInset,\n insetBottom: globalInsetBottom = globalInset,\n insetLeft: globalInsetLeft = globalInset,\n round,\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n facet: {label: facetLabel = globalLabel} = {},\n ...options\n } = {}\n) {\n const scales = {};\n for (const [key, channels] of channelsByScale) {\n const scaleOptions = options[key];\n const scale = createScale(key, channels, {\n round: registry.get(key) === position ? round : undefined, // only for position\n nice,\n clamp,\n zero,\n align,\n padding,\n projection,\n ...scaleOptions\n });\n if (scale) {\n // populate generic scale options (percent, transform, insets)\n let {\n label = key === \"fx\" || key === \"fy\" ? facetLabel : globalLabel,\n percent,\n transform,\n inset,\n insetTop = inset !== undefined ? inset : key === \"y\" ? globalInsetTop : 0, // not fy\n insetRight = inset !== undefined ? inset : key === \"x\" ? globalInsetRight : 0, // not fx\n insetBottom = inset !== undefined ? inset : key === \"y\" ? globalInsetBottom : 0, // not fy\n insetLeft = inset !== undefined ? inset : key === \"x\" ? globalInsetLeft : 0 // not fx\n } = scaleOptions || {};\n if (transform == null) transform = undefined;\n else if (typeof transform !== \"function\") throw new Error(\"invalid scale transform; not a function\");\n scale.percent = !!percent;\n scale.label = label === undefined ? inferScaleLabel(channels, scale) : label;\n scale.transform = transform;\n if (key === \"x\" || key === \"fx\") {\n scale.insetLeft = +insetLeft;\n scale.insetRight = +insetRight;\n } else if (key === \"y\" || key === \"fy\") {\n scale.insetTop = +insetTop;\n scale.insetBottom = +insetBottom;\n }\n scales[key] = scale;\n }\n }\n return scales;\n}\n\nexport function createScaleFunctions(scales) {\n return Object.fromEntries(\n Object.entries(scales)\n .filter(([, {scale}]) => scale) // drop identity scales\n .map(([name, {scale, type, interval, label}]) => {\n scale.type = type; // for axis\n if (interval != null) scale.interval = interval; // for axis\n if (label != null) scale.label = label; // for axis\n return [name, scale];\n })\n );\n}\n\n// Mutates scale.range!\nexport function autoScaleRange(scales, dimensions) {\n const {x, y, fx, fy} = scales;\n const superdimensions = fx || fy ? outerDimensions(dimensions) : dimensions;\n if (fx) autoScaleRangeX(fx, superdimensions);\n if (fy) autoScaleRangeY(fy, superdimensions);\n const subdimensions = fx || fy ? innerDimensions(scales, dimensions) : dimensions;\n if (x) autoScaleRangeX(x, subdimensions);\n if (y) autoScaleRangeY(y, subdimensions);\n}\n\n// Channels can have labels; if all the channels for a given scale are\n// consistently labeled (i.e., have the same value if not undefined), and the\n// corresponding scale doesn’t already have an explicit label, then the\n// channels’ label is promoted to the scale. This inferred label should have an\n// orientation-appropriate arrow added when used as an axis, but we don’t want\n// to add the arrow when the label is set explicitly as an option; so, the\n// inferred label is distinguished as an object with an “inferred” property.\nfunction inferScaleLabel(channels = [], scale) {\n let label;\n for (const {label: l} of channels) {\n if (l === undefined) continue;\n if (label === undefined) label = l;\n else if (label !== l) return;\n }\n if (label === undefined) return;\n // Ignore the implicit label for temporal scales if it’s simply “date”.\n if (isTemporalScale(scale) && /^(date|time|year)$/i.test(label)) return;\n if (!isOrdinalScale(scale) && scale.percent) label = `${label} (%)`;\n return {inferred: true, toString: () => label};\n}\n\n// Returns the dimensions of the outer frame; this is subdivided into facets\n// with the margins of each facet collapsing into the outer margins.\nexport function outerDimensions(dimensions) {\n const {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width,\n height,\n facet: {\n marginTop: facetMarginTop,\n marginRight: facetMarginRight,\n marginBottom: facetMarginBottom,\n marginLeft: facetMarginLeft\n }\n } = dimensions;\n return {\n marginTop: Math.max(marginTop, facetMarginTop),\n marginRight: Math.max(marginRight, facetMarginRight),\n marginBottom: Math.max(marginBottom, facetMarginBottom),\n marginLeft: Math.max(marginLeft, facetMarginLeft),\n width,\n height\n };\n}\n\n// Returns the dimensions of each facet.\nexport function innerDimensions({fx, fy}, dimensions) {\n const {marginTop, marginRight, marginBottom, marginLeft, width, height} = outerDimensions(dimensions);\n return {\n marginTop,\n marginRight,\n marginBottom,\n marginLeft,\n width: fx ? fx.scale.bandwidth() + marginLeft + marginRight : width,\n height: fy ? fy.scale.bandwidth() + marginTop + marginBottom : height\n };\n}\n\nfunction autoScaleRangeX(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetLeft, insetRight} = scale;\n const {width, marginLeft = 0, marginRight = 0} = dimensions;\n const left = marginLeft + insetLeft;\n const right = width - marginRight - insetRight;\n scale.range = [left, Math.max(left, right)];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRangeY(scale, dimensions) {\n if (scale.range === undefined) {\n const {insetTop, insetBottom} = scale;\n const {height, marginTop = 0, marginBottom = 0} = dimensions;\n const top = marginTop + insetTop;\n const bottom = height - marginBottom - insetBottom;\n scale.range = [Math.max(top, bottom), top];\n if (!isOrdinalScale(scale)) scale.range = piecewiseRange(scale);\n else scale.range.reverse();\n scale.scale.range(scale.range);\n }\n autoScaleRound(scale);\n}\n\nfunction autoScaleRound(scale) {\n if (scale.round === undefined && isBandScale(scale) && roundError(scale) <= 30) {\n scale.scale.round(true);\n }\n}\n\n// If we were to turn on rounding for this band or point scale, how much wasted\n// space would it introduce (on both ends of the range)? This must match\n// d3.scaleBand’s rounding behavior:\n// https://github.com/d3/d3-scale/blob/83555bd759c7314420bd4240642beda5e258db9e/src/band.js#L20-L32\nfunction roundError({scale}) {\n const n = scale.domain().length;\n const [start, stop] = scale.range();\n const paddingInner = scale.paddingInner ? scale.paddingInner() : 1;\n const paddingOuter = scale.paddingOuter ? scale.paddingOuter() : scale.padding();\n const m = n - paddingInner;\n const step = Math.abs(stop - start) / Math.max(1, m + paddingOuter * 2);\n return (step - Math.floor(step)) * m;\n}\n\nfunction piecewiseRange(scale) {\n const length = scale.scale.domain().length + isThresholdScale(scale);\n if (!(length > 2)) return scale.range;\n const [start, end] = scale.range;\n return Array.from({length}, (_, i) => start + (i / (length - 1)) * (end - start));\n}\n\nexport function normalizeScale(key, scale, hint) {\n return createScale(key, hint === undefined ? undefined : [{hint}], {...scale});\n}\n\nfunction createScale(key, channels = [], options = {}) {\n const type = inferScaleType(key, channels, options);\n\n // Warn for common misuses of implicit ordinal scales. We disable this test if\n // you specify a scale interval or if you set the domain or range explicitly,\n // since setting the domain or range (typically with a cardinality of more than\n // two) is another indication that you intended for the scale to be ordinal; we\n // also disable it for facet scales since these are always band scales.\n if (\n options.type === undefined &&\n options.domain === undefined &&\n options.range === undefined &&\n options.interval == null &&\n key !== \"fx\" &&\n key !== \"fy\" &&\n isOrdinalScale({type})\n ) {\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isTemporal))\n warn(\n `Warning: some data associated with the ${key} scale are dates. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isTemporalString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a \"utc\" or \"time\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n else if (values.some(isNumericString))\n warn(\n `Warning: some data associated with the ${key} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a \"linear\" scale rather than a \"${formatScaleType(\n type\n )}\" scale. If you want to treat this data as ordinal, you can specify the interval of the ${key} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${key} scale to \"${formatScaleType(\n type\n )}\".`\n );\n }\n\n options.type = type; // Mutates input!\n\n // Once the scale type is known, coerce the associated channel values and any\n // explicitly-specified domain to the expected type.\n switch (type) {\n case \"diverging\":\n case \"diverging-sqrt\":\n case \"diverging-pow\":\n case \"diverging-log\":\n case \"diverging-symlog\":\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n case \"sqrt\":\n case \"threshold\":\n case \"quantile\":\n case \"pow\":\n case \"log\":\n case \"symlog\":\n options = coerceType(channels, options, coerceNumbers);\n break;\n case \"identity\":\n switch (registry.get(key)) {\n case position:\n options = coerceType(channels, options, coerceNumbers);\n break;\n case symbol:\n options = coerceType(channels, options, coerceSymbols);\n break;\n }\n break;\n case \"utc\":\n case \"time\":\n options = coerceType(channels, options, coerceDates);\n break;\n }\n\n switch (type) {\n case \"diverging\":\n return createScaleDiverging(key, channels, options);\n case \"diverging-sqrt\":\n return createScaleDivergingSqrt(key, channels, options);\n case \"diverging-pow\":\n return createScaleDivergingPow(key, channels, options);\n case \"diverging-log\":\n return createScaleDivergingLog(key, channels, options);\n case \"diverging-symlog\":\n return createScaleDivergingSymlog(key, channels, options);\n case \"categorical\":\n case \"ordinal\":\n case ordinalImplicit:\n return createScaleOrdinal(key, channels, options);\n case \"cyclical\":\n case \"sequential\":\n case \"linear\":\n return createScaleLinear(key, channels, options);\n case \"sqrt\":\n return createScaleSqrt(key, channels, options);\n case \"threshold\":\n return createScaleThreshold(key, channels, options);\n case \"quantile\":\n return createScaleQuantile(key, channels, options);\n case \"quantize\":\n return createScaleQuantize(key, channels, options);\n case \"pow\":\n return createScalePow(key, channels, options);\n case \"log\":\n return createScaleLog(key, channels, options);\n case \"symlog\":\n return createScaleSymlog(key, channels, options);\n case \"utc\":\n return createScaleUtc(key, channels, options);\n case \"time\":\n return createScaleTime(key, channels, options);\n case \"point\":\n return createScalePoint(key, channels, options);\n case \"band\":\n return createScaleBand(key, channels, options);\n case \"identity\":\n return registry.get(key) === position ? createScaleIdentity() : {type: \"identity\"};\n case undefined:\n return;\n default:\n throw new Error(`unknown scale type: ${type}`);\n }\n}\n\nfunction formatScaleType(type) {\n return typeof type === \"symbol\" ? type.description : type;\n}\n\n// A special type symbol when the x and y scales are replaced with a projection.\nconst typeProjection = {toString: () => \"projection\"};\n\nfunction inferScaleType(key, channels, {type, domain, range, scheme, pivot, projection}) {\n // The facet scales are always band scales; this cannot be changed.\n if (key === \"fx\" || key === \"fy\") return \"band\";\n\n // If a projection is specified, the x- and y-scales are disabled; these\n // channels will be projected rather than scaled. (But still check that none\n // of the associated channels are incompatible with a projection.)\n if ((key === \"x\" || key === \"y\") && projection != null) type = typeProjection;\n\n // If a channel dictates a scale type, make sure that it is consistent with\n // the user-specified scale type (if any) and all other channels. For example,\n // barY requires x to be a band scale and disallows any other scale type.\n for (const {type: t} of channels) {\n if (t === undefined) continue;\n else if (type === undefined) type = t;\n else if (type !== t) throw new Error(`scale incompatible with channel: ${type} !== ${t}`);\n }\n\n // If the scale, a channel, or user specified a (consistent) type, return it.\n if (type === typeProjection) return;\n if (type !== undefined) return type;\n\n // If there’s no data (and no type) associated with this scale, don’t create a scale.\n if (domain === undefined && !channels.some(({value}) => value !== undefined)) return;\n\n // Some scales have default types.\n const kind = registry.get(key);\n if (kind === radius) return \"sqrt\";\n if (kind === opacity || kind === length) return \"linear\";\n if (kind === symbol) return \"ordinal\";\n\n // If the domain or range has more than two values, assume it’s ordinal. You\n // can still use a “piecewise” (or “polylinear”) scale, but you must set the\n // type explicitly.\n if ((domain || range || []).length > 2) return asOrdinalType(kind);\n\n // Otherwise, infer the scale type from the data! Prefer the domain, if\n // present, over channels. (The domain and channels should be consistently\n // typed, and the domain is more explicit and typically much smaller.) We only\n // check the first defined value for expedience and simplicity; we expect\n // that the types are consistent.\n if (domain !== undefined) {\n if (isOrdinal(domain)) return asOrdinalType(kind);\n if (isTemporal(domain)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n }\n\n // If any channel is ordinal or temporal, it takes priority.\n const values = channels.map(({value}) => value).filter((value) => value !== undefined);\n if (values.some(isOrdinal)) return asOrdinalType(kind);\n if (values.some(isTemporal)) return \"utc\";\n if (kind === color && (pivot != null || isDivergingScheme(scheme))) return \"diverging\";\n return \"linear\";\n}\n\n// Positional scales default to a point scale instead of an ordinal scale.\nfunction asOrdinalType(kind) {\n switch (kind) {\n case position:\n return \"point\";\n case color:\n return ordinalImplicit;\n default:\n return \"ordinal\";\n }\n}\n\nexport function isTemporalScale({type}) {\n return type === \"time\" || type === \"utc\";\n}\n\nexport function isOrdinalScale({type}) {\n return type === \"ordinal\" || type === \"point\" || type === \"band\" || type === ordinalImplicit;\n}\n\nexport function isThresholdScale({type}) {\n return type === \"threshold\";\n}\n\nfunction isBandScale({type}) {\n return type === \"point\" || type === \"band\";\n}\n\nexport function isDivergingScale({type}) {\n return /^diverging($|-)/.test(type);\n}\n\n// Certain marks have special behavior if a scale is collapsed, i.e. if the\n// domain is degenerate and represents only a single value such as [3, 3]; for\n// example, a rect will span the full extent of the chart along a collapsed\n// dimension (whereas a dot will simply be drawn in the center).\nexport function isCollapsed(scale) {\n if (scale === undefined) return true; // treat missing scale as collapsed\n const domain = scale.domain();\n const value = scale(domain[0]);\n for (let i = 1, n = domain.length; i < n; ++i) {\n if (scale(domain[i]) - value) {\n return false;\n }\n }\n return true;\n}\n\n// Mutates channel.value!\nfunction coerceType(channels, {domain, ...options}, coerceValues) {\n for (const c of channels) {\n if (c.value !== undefined) {\n c.value = coerceValues(c.value);\n }\n }\n return {\n domain: domain === undefined ? domain : coerceValues(domain),\n ...options\n };\n}\n\nfunction coerceSymbols(values) {\n return map(values, maybeSymbol);\n}\n\nexport function scale(options = {}) {\n let scale;\n for (const key in options) {\n if (!registry.has(key)) continue; // ignore unknown properties\n if (!isScaleOptions(options[key])) continue; // e.g., ignore {color: \"red\"}\n if (scale !== undefined) throw new Error(\"ambiguous scale definition; multiple scales found\");\n scale = exposeScale(normalizeScale(key, options[key]));\n }\n if (scale === undefined) throw new Error(\"invalid scale definition; no scale found\");\n return scale;\n}\n\nexport function exposeScales(scaleDescriptors) {\n return (key) => {\n if (!registry.has((key = `${key}`))) throw new Error(`unknown scale: ${key}`);\n return key in scaleDescriptors ? exposeScale(scaleDescriptors[key]) : undefined;\n };\n}\n\n// Note: axis- and legend-related properties (such as label, ticks and\n// tickFormat) are not included here as they do not affect the scale’s behavior.\nfunction exposeScale({scale, type, domain, range, interpolate, interval, transform, percent, pivot}) {\n if (type === \"identity\") return {type: \"identity\", apply: (d) => d, invert: (d) => d};\n const unknown = scale.unknown ? scale.unknown() : undefined;\n return {\n type,\n domain: slice(domain), // defensive copy\n ...(range !== undefined && {range: slice(range)}), // defensive copy\n ...(transform !== undefined && {transform}),\n ...(percent && {percent}), // only exposed if truthy\n ...(unknown !== undefined && {unknown}),\n ...(interval !== undefined && {interval}),\n\n // quantitative\n ...(interpolate !== undefined && {interpolate}),\n ...(scale.clamp && {clamp: scale.clamp()}),\n\n // diverging (always asymmetric; we never want to apply the symmetric transform twice)\n ...(pivot !== undefined && {pivot, symmetric: false}),\n\n // log, diverging-log\n ...(scale.base && {base: scale.base()}),\n\n // pow, diverging-pow\n ...(scale.exponent && {exponent: scale.exponent()}),\n\n // symlog, diverging-symlog\n ...(scale.constant && {constant: scale.constant()}),\n\n // band, point\n ...(scale.align && {align: scale.align(), round: scale.round()}),\n ...(scale.padding &&\n (scale.paddingInner\n ? {paddingInner: scale.paddingInner(), paddingOuter: scale.paddingOuter()}\n : {padding: scale.padding()})),\n ...(scale.bandwidth && {bandwidth: scale.bandwidth(), step: scale.step()}),\n\n // utilities\n apply: (t) => scale(t),\n ...(scale.invert && {invert: (t) => scale.invert(t)})\n };\n}\n","export enum ScrollDirection {\n SCROLL_NONE,\n SCROLL_BACKWARD,\n SCROLL_FORWARD,\n}\n\nexport enum Position {\n TOP,\n RIGHT,\n BOTTOM,\n LEFT,\n}\n\nexport const OPTIONS_DEFAULT_DOMAIN_TYPE = 'hour';\n\nexport const OPTIONS_DEFAULT_SUBDOMAIN_TYPE = 'minute';\nexport const OPTIONS_DEFAULT_SUBDOMAIN_WIDTH = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT = 10;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_GUTTER = 2;\nexport const OPTIONS_DEFAULT_SUBDOMAIN_RADIUS = 0;\nexport const OPTIONS_DEFAULT_ANIMATION_DURATION = 200;\nexport const OPTIONS_DEFAULT_RANGE = 12;\nexport const OPTIONS_DEFAULT_ITEM_SELECTOR = '#cal-heatmap';\nexport const OPTIONS_DEFAULT_THEME = 'light';\nexport const OPTIONS_DEFAULT_LOCALE = 'en';\n\nexport const SCALE_BASE_OPACITY_COLOR = 'red';\nexport const SCALE_BASE_COLOR_SCHEME = 'YlOrBr';\nexport const SCALE_BASE_COLOR_TYPE = 'quantize';\nexport const SCALE_BASE_COLOR_DOMAIN = [0, 100];\n","// @ts-ignore\nimport { scale } from '@observablehq/plot';\nimport { OptionsType } from './options/Options';\nimport { SCALE_BASE_OPACITY_COLOR } from './constant';\n\nimport type { SubDomain } from './index';\n\ntype ValueType = string | number | undefined;\n\nexport function normalizedScale(scaleOptions: OptionsType['scale']): any {\n try {\n const scaleType = Object.keys(scaleOptions!)[0];\n\n return scale({\n [scaleType]: {\n ...scaleOptions![scaleType as 'color' | 'opacity'],\n clamp: true,\n },\n });\n } catch (error) {\n return null;\n }\n}\n\nfunction scaleStyle(_scale: any, scaleOptions: OptionsType['scale']) {\n const styles: { fill?: Function; 'fill-opacity'?: Function } = {};\n\n if (scaleOptions!.hasOwnProperty('opacity')) {\n styles.fill = () =>\n // eslint-disable-next-line implicit-arrow-linebreak\n scaleOptions!.opacity!.baseColor || SCALE_BASE_OPACITY_COLOR;\n styles['fill-opacity'] = (d: ValueType) => _scale?.apply(d);\n } else {\n styles.fill = (d: ValueType) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n (typeof d === 'string' && d?.startsWith('#') ? d : _scale?.apply(d));\n }\n\n return styles;\n}\n\nexport function applyScaleStyle(\n elem: any,\n _scale: any,\n scaleOptions: OptionsType['scale'],\n keyname?: string,\n) {\n Object.entries(scaleStyle(_scale, scaleOptions)).forEach(([prop, val]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n elem.style(prop, (d: SubDomain | string) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n val(keyname ? (d as SubDomain)[keyname as keyof SubDomain] : d)));\n}\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.allSettled` method\n// https://tc39.es/ecma262/#sec-promise.allsettled\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n allSettled: function allSettled(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call(promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'fulfilled', value: value };\n --remaining || resolve(values);\n }, function (error) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = { status: 'rejected', reason: error };\n --remaining || resolve(values);\n });\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar create = require('../internals/object-create');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar bind = require('../internals/function-bind-context');\nvar anInstance = require('../internals/an-instance');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar iterate = require('../internals/iterate');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar setSpecies = require('../internals/set-species');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fastKey = require('../internals/internal-metadata').fastKey;\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n index: create(null),\n first: undefined,\n last: undefined,\n size: 0\n });\n if (!DESCRIPTORS) that.size = 0;\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n var previous, index;\n // change existing entry\n if (entry) {\n entry.value = value;\n // create new entry\n } else {\n state.last = entry = {\n index: index = fastKey(key, true),\n key: key,\n value: value,\n previous: previous = state.last,\n next: undefined,\n removed: false\n };\n if (!state.first) state.first = entry;\n if (previous) previous.next = entry;\n if (DESCRIPTORS) state.size++;\n else that.size++;\n // add to index\n if (index !== 'F') state.index[index] = entry;\n } return that;\n };\n\n var getEntry = function (that, key) {\n var state = getInternalState(that);\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return state.index[index];\n // frozen object case\n for (entry = state.first; entry; entry = entry.next) {\n if (entry.key === key) return entry;\n }\n };\n\n defineBuiltIns(Prototype, {\n // `{ Map, Set }.prototype.clear()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.clear\n // https://tc39.es/ecma262/#sec-set.prototype.clear\n clear: function clear() {\n var that = this;\n var state = getInternalState(that);\n var data = state.index;\n var entry = state.first;\n while (entry) {\n entry.removed = true;\n if (entry.previous) entry.previous = entry.previous.next = undefined;\n delete data[entry.index];\n entry = entry.next;\n }\n state.first = state.last = undefined;\n if (DESCRIPTORS) state.size = 0;\n else that.size = 0;\n },\n // `{ Map, Set }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.delete\n // https://tc39.es/ecma262/#sec-set.prototype.delete\n 'delete': function (key) {\n var that = this;\n var state = getInternalState(that);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.next;\n var prev = entry.previous;\n delete state.index[entry.index];\n entry.removed = true;\n if (prev) prev.next = next;\n if (next) next.previous = prev;\n if (state.first === entry) state.first = next;\n if (state.last === entry) state.last = prev;\n if (DESCRIPTORS) state.size--;\n else that.size--;\n } return !!entry;\n },\n // `{ Map, Set }.prototype.forEach(callbackfn, thisArg = undefined)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.foreach\n // https://tc39.es/ecma262/#sec-set.prototype.foreach\n forEach: function forEach(callbackfn /* , that = undefined */) {\n var state = getInternalState(this);\n var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n var entry;\n while (entry = entry ? entry.next : state.first) {\n boundFunction(entry.value, entry.key, this);\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n }\n },\n // `{ Map, Set}.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-map.prototype.has\n // https://tc39.es/ecma262/#sec-set.prototype.has\n has: function has(key) {\n return !!getEntry(this, key);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `Map.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-map.prototype.get\n get: function get(key) {\n var entry = getEntry(this, key);\n return entry && entry.value;\n },\n // `Map.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-map.prototype.set\n set: function set(key, value) {\n return define(this, key === 0 ? 0 : key, value);\n }\n } : {\n // `Set.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-set.prototype.add\n add: function add(value) {\n return define(this, value = value === 0 ? 0 : value, value);\n }\n });\n if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {\n configurable: true,\n get: function () {\n return getInternalState(this).size;\n }\n });\n return Constructor;\n },\n setStrong: function (Constructor, CONSTRUCTOR_NAME, IS_MAP) {\n var ITERATOR_NAME = CONSTRUCTOR_NAME + ' Iterator';\n var getInternalCollectionState = internalStateGetterFor(CONSTRUCTOR_NAME);\n var getInternalIteratorState = internalStateGetterFor(ITERATOR_NAME);\n // `{ Map, Set }.prototype.{ keys, values, entries, @@iterator }()` methods\n // https://tc39.es/ecma262/#sec-map.prototype.entries\n // https://tc39.es/ecma262/#sec-map.prototype.keys\n // https://tc39.es/ecma262/#sec-map.prototype.values\n // https://tc39.es/ecma262/#sec-map.prototype-@@iterator\n // https://tc39.es/ecma262/#sec-set.prototype.entries\n // https://tc39.es/ecma262/#sec-set.prototype.keys\n // https://tc39.es/ecma262/#sec-set.prototype.values\n // https://tc39.es/ecma262/#sec-set.prototype-@@iterator\n defineIterator(Constructor, CONSTRUCTOR_NAME, function (iterated, kind) {\n setInternalState(this, {\n type: ITERATOR_NAME,\n target: iterated,\n state: getInternalCollectionState(iterated),\n kind: kind,\n last: undefined\n });\n }, function () {\n var state = getInternalIteratorState(this);\n var kind = state.kind;\n var entry = state.last;\n // revert to the last existing entry\n while (entry && entry.removed) entry = entry.previous;\n // get next entry\n if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {\n // or finish the iteration\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n // return step by kind\n if (kind === 'keys') return createIterResultObject(entry.key, false);\n if (kind === 'values') return createIterResultObject(entry.value, false);\n return createIterResultObject([entry.key, entry.value], false);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // `{ Map, Set }.prototype[@@species]` accessors\n // https://tc39.es/ecma262/#sec-get-map-@@species\n // https://tc39.es/ecma262/#sec-get-set-@@species\n setSpecies(CONSTRUCTOR_NAME);\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionStrong = require('../internals/collection-strong');\n\n// `Map` constructor\n// https://tc39.es/ecma262/#sec-map-objects\ncollection('Map', function (init) {\n return function Map() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionStrong);\n","'use strict';\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (O, P) {\n if (!delete O[P]) throw new $TypeError('Cannot delete property ' + tryToString(P) + ' of ' + tryToString(O));\n};\n","'use strict';\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar floor = Math.floor;\n\nvar mergeSort = function (array, comparefn) {\n var length = array.length;\n var middle = floor(length / 2);\n return length < 8 ? insertionSort(array, comparefn) : merge(\n array,\n mergeSort(arraySlice(array, 0, middle), comparefn),\n mergeSort(arraySlice(array, middle), comparefn),\n comparefn\n );\n};\n\nvar insertionSort = function (array, comparefn) {\n var length = array.length;\n var i = 1;\n var element, j;\n\n while (i < length) {\n j = i;\n element = array[i];\n while (j && comparefn(array[j - 1], element) > 0) {\n array[j] = array[--j];\n }\n if (j !== i++) array[j] = element;\n } return array;\n};\n\nvar merge = function (array, left, right, comparefn) {\n var llength = left.length;\n var rlength = right.length;\n var lindex = 0;\n var rindex = 0;\n\n while (lindex < llength || rindex < rlength) {\n array[lindex + rindex] = (lindex < llength && rindex < rlength)\n ? comparefn(left[lindex], right[rindex]) <= 0 ? left[lindex++] : right[rindex++]\n : lindex < llength ? left[lindex++] : right[rindex++];\n } return array;\n};\n\nmodule.exports = mergeSort;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar firefox = userAgent.match(/firefox\\/(\\d+)/i);\n\nmodule.exports = !!firefox && +firefox[1];\n","'use strict';\nvar UA = require('../internals/engine-user-agent');\n\nmodule.exports = /MSIE|Trident/.test(UA);\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nvar webkit = userAgent.match(/AppleWebKit\\/(\\d+)\\./);\n\nmodule.exports = !!webkit && +webkit[1];\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar deletePropertyOrThrow = require('../internals/delete-property-or-throw');\nvar toString = require('../internals/to-string');\nvar fails = require('../internals/fails');\nvar internalSort = require('../internals/array-sort');\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar FF = require('../internals/engine-ff-version');\nvar IE_OR_EDGE = require('../internals/engine-is-ie-or-edge');\nvar V8 = require('../internals/engine-v8-version');\nvar WEBKIT = require('../internals/engine-webkit-version');\n\nvar test = [];\nvar nativeSort = uncurryThis(test.sort);\nvar push = uncurryThis(test.push);\n\n// IE8-\nvar FAILS_ON_UNDEFINED = fails(function () {\n test.sort(undefined);\n});\n// V8 bug\nvar FAILS_ON_NULL = fails(function () {\n test.sort(null);\n});\n// Old WebKit\nvar STRICT_METHOD = arrayMethodIsStrict('sort');\n\nvar STABLE_SORT = !fails(function () {\n // feature detection can be too slow, so check engines versions\n if (V8) return V8 < 70;\n if (FF && FF > 3) return;\n if (IE_OR_EDGE) return true;\n if (WEBKIT) return WEBKIT < 603;\n\n var result = '';\n var code, chr, value, index;\n\n // generate an array with more 512 elements (Chakra and old V8 fails only in this case)\n for (code = 65; code < 76; code++) {\n chr = String.fromCharCode(code);\n\n switch (code) {\n case 66: case 69: case 70: case 72: value = 3; break;\n case 68: case 71: value = 4; break;\n default: value = 2;\n }\n\n for (index = 0; index < 47; index++) {\n test.push({ k: chr + index, v: value });\n }\n }\n\n test.sort(function (a, b) { return b.v - a.v; });\n\n for (index = 0; index < test.length; index++) {\n chr = test[index].k.charAt(0);\n if (result.charAt(result.length - 1) !== chr) result += chr;\n }\n\n return result !== 'DGBEFHACIJK';\n});\n\nvar FORCED = FAILS_ON_UNDEFINED || !FAILS_ON_NULL || !STRICT_METHOD || !STABLE_SORT;\n\nvar getSortCompare = function (comparefn) {\n return function (x, y) {\n if (y === undefined) return -1;\n if (x === undefined) return 1;\n if (comparefn !== undefined) return +comparefn(x, y) || 0;\n return toString(x) > toString(y) ? 1 : -1;\n };\n};\n\n// `Array.prototype.sort` method\n// https://tc39.es/ecma262/#sec-array.prototype.sort\n$({ target: 'Array', proto: true, forced: FORCED }, {\n sort: function sort(comparefn) {\n if (comparefn !== undefined) aCallable(comparefn);\n\n var array = toObject(this);\n\n if (STABLE_SORT) return comparefn === undefined ? nativeSort(array) : nativeSort(array, comparefn);\n\n var items = [];\n var arrayLength = lengthOfArrayLike(array);\n var itemsLength, index;\n\n for (index = 0; index < arrayLength; index++) {\n if (index in array) push(items, array[index]);\n }\n\n internalSort(items, getSortCompare(comparefn));\n\n itemsLength = lengthOfArrayLike(items);\n index = 0;\n\n while (index < itemsLength) array[index] = items[index++];\n while (index < arrayLength) deletePropertyOrThrow(array, index++);\n\n return array;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $includes = require('../internals/array-includes').includes;\nvar fails = require('../internals/fails');\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\n// FF99+ bug\nvar BROKEN_ON_SPARSE = fails(function () {\n // eslint-disable-next-line es/no-array-prototype-includes -- detection\n return !Array(1).includes();\n});\n\n// `Array.prototype.includes` method\n// https://tc39.es/ecma262/#sec-array.prototype.includes\n$({ target: 'Array', proto: true, forced: BROKEN_ON_SPARSE }, {\n includes: function includes(el /* , fromIndex = 0 */) {\n return $includes(this, el, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('includes');\n","'use strict';\nvar $ = require('../internals/export');\nvar $map = require('../internals/array-iteration').map;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map');\n\n// `Array.prototype.map` method\n// https://tc39.es/ecma262/#sec-array.prototype.map\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar $filter = require('../internals/array-iteration').filter;\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter');\n\n// `Array.prototype.filter` method\n// https://tc39.es/ecma262/#sec-array.prototype.filter\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar iteratorClose = require('../internals/iterator-close');\n\n// call something on iterator step with safe closing on error\nmodule.exports = function (iterator, fn, value, ENTRIES) {\n try {\n return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar toObject = require('../internals/to-object');\nvar callWithSafeIterationClosing = require('../internals/call-with-safe-iteration-closing');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar isConstructor = require('../internals/is-constructor');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $Array = Array;\n\n// `Array.from` method implementation\n// https://tc39.es/ecma262/#sec-array.from\nmodule.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var IS_CONSTRUCTOR = isConstructor(this);\n var argumentsLength = arguments.length;\n var mapfn = argumentsLength > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined);\n var iteratorMethod = getIteratorMethod(O);\n var index = 0;\n var length, result, step, iterator, next, value;\n // if the target is not iterable or it's an array with the default iterator - use a simple case\n if (iteratorMethod && !(this === $Array && isArrayIteratorMethod(iteratorMethod))) {\n iterator = getIterator(O, iteratorMethod);\n next = iterator.next;\n result = IS_CONSTRUCTOR ? new this() : [];\n for (;!(step = call(next, iterator)).done; index++) {\n value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value;\n createProperty(result, index, value);\n }\n } else {\n length = lengthOfArrayLike(O);\n result = IS_CONSTRUCTOR ? new this(length) : $Array(length);\n for (;length > index; index++) {\n value = mapping ? mapfn(O[index], index) : O[index];\n createProperty(result, index, value);\n }\n }\n result.length = index;\n return result;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar from = require('../internals/array-from');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\n\nvar INCORRECT_ITERATION = !checkCorrectnessOfIteration(function (iterable) {\n // eslint-disable-next-line es/no-array-from -- required for testing\n Array.from(iterable);\n});\n\n// `Array.from` method\n// https://tc39.es/ecma262/#sec-array.from\n$({ target: 'Array', stat: true, forced: INCORRECT_ITERATION }, {\n from: from\n});\n","'use strict';\n// a string of all valid unicode whitespaces\nmodule.exports = '\\u0009\\u000A\\u000B\\u000C\\u000D\\u0020\\u00A0\\u1680\\u2000\\u2001\\u2002' +\n '\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar toString = require('../internals/to-string');\nvar whitespaces = require('../internals/whitespaces');\n\nvar replace = uncurryThis(''.replace);\nvar ltrim = RegExp('^[' + whitespaces + ']+');\nvar rtrim = RegExp('(^|[^' + whitespaces + '])[' + whitespaces + ']+$');\n\n// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation\nvar createMethod = function (TYPE) {\n return function ($this) {\n var string = toString(requireObjectCoercible($this));\n if (TYPE & 1) string = replace(string, ltrim, '');\n if (TYPE & 2) string = replace(string, rtrim, '$1');\n return string;\n };\n};\n\nmodule.exports = {\n // `String.prototype.{ trimLeft, trimStart }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimstart\n start: createMethod(1),\n // `String.prototype.{ trimRight, trimEnd }` methods\n // https://tc39.es/ecma262/#sec-string.prototype.trimend\n end: createMethod(2),\n // `String.prototype.trim` method\n // https://tc39.es/ecma262/#sec-string.prototype.trim\n trim: createMethod(3)\n};\n","'use strict';\nvar PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;\nvar fails = require('../internals/fails');\nvar whitespaces = require('../internals/whitespaces');\n\nvar non = '\\u200B\\u0085\\u180E';\n\n// check that a method works with the correct list\n// of whitespaces and has a correct name\nmodule.exports = function (METHOD_NAME) {\n return fails(function () {\n return !!whitespaces[METHOD_NAME]()\n || non[METHOD_NAME]() !== non\n || (PROPER_FUNCTION_NAME && whitespaces[METHOD_NAME].name !== METHOD_NAME);\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar $trim = require('../internals/string-trim').trim;\nvar forcedStringTrimMethod = require('../internals/string-trim-forced');\n\n// `String.prototype.trim` method\n// https://tc39.es/ecma262/#sec-string.prototype.trim\n$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, {\n trim: function trim() {\n return $trim(this);\n }\n});\n","import { Position } from '../constant';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { Timestamp, SubDomain } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-subdomain';\nconst HIGHLIGHT_CLASSNAME = 'highlight';\n\nexport default class SubDomainPainter {\n calendar: CalHeatmap;\n\n root: any;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n }\n\n paint(root: any): void {\n this.root = root || this.root;\n const containerClassname = `${DEFAULT_SELECTOR}-container`;\n\n const subDomainSvgGroup = this.root\n .selectAll(containerClassname)\n .data(\n (d: Timestamp) => [d],\n (d: Timestamp) => d,\n )\n .join(\n (enter: any) => enter\n .append('svg')\n .call((selection: any) => this.#setPositions(selection))\n .attr('class', containerClassname.slice(1)),\n\n (update: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n update.call((selection: any) => this.#setPositions(selection)),\n );\n\n const {\n subDomain: {\n radius, width, height, sort,\n },\n } = this.calendar.options.options;\n const evt = this.calendar.eventEmitter;\n\n subDomainSvgGroup\n .selectAll('g')\n .data((d: Timestamp) => {\n const subDomainsCollection: SubDomain[] =\n this.calendar.domainCollection.get(d)!;\n if (sort === 'desc') {\n const max = Math.max(\n ...subDomainsCollection.map((s: SubDomain) => s.x),\n );\n subDomainsCollection.forEach((s: SubDomain, i: number) => {\n subDomainsCollection[i].x = Math.abs(s.x - max);\n });\n }\n\n return subDomainsCollection;\n })\n .join(\n (enter: any) => enter\n .append('g')\n .call((selection: any) => selection\n .insert('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .on('click', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('click', ev, d.t, d.v))\n .on('mouseover', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseover', ev, d.t, d.v))\n .on('mouseout', (ev: PointerEvent, d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n evt.emit('mouseout', ev, d.t, d.v))\n .attr('rx', radius > 0 ? radius : null)\n .attr('ry', radius > 0 ? radius : null))\n .call((selection: any) => this.#appendText(selection)),\n (update: any) => update\n .selectAll('rect')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-bg`))\n .attr('width', width)\n .attr('height', height)\n .attr('x', (d: SubDomain) => this.#getX(d))\n .attr('y', (d: SubDomain) => this.#getY(d))\n .attr('rx', radius)\n .attr('ry', radius),\n );\n }\n\n /**\n * Set the subDomain group X and Y position\n * @param {d3-selection} selection A d3-selection object\n */\n #setPositions(selection: any): void {\n const { options } = this.calendar.options;\n const {\n padding,\n label: { position },\n } = options.domain;\n\n selection\n .attr('x', () => {\n let pos = padding[Position.LEFT];\n if (position === 'left') {\n pos += options.x.domainHorizontalLabelWidth;\n }\n return pos;\n })\n .attr('y', () => {\n let pos = padding[Position.TOP];\n if (position === 'top') {\n pos += options.x.domainVerticalLabelHeight;\n }\n return pos;\n });\n }\n\n /**\n * Return a classname if the specified date should be highlighted\n *\n * @param {number} timestamp Unix timestamp of the current subDomain\n * @return {String} the highlight class\n */\n #classname(timestamp: Timestamp, ...otherClasses: string[]): string {\n const {\n date: { highlight },\n subDomain: { type },\n } = this.calendar.options.options;\n let classname = '';\n\n if (highlight.length > 0) {\n highlight.forEach((d) => {\n const unitFn = this.calendar.templateCollection.get(type).extractUnit;\n\n if (unitFn(+d) === unitFn(timestamp)) {\n classname = HIGHLIGHT_CLASSNAME;\n }\n });\n }\n\n return [classname, ...otherClasses].join(' ').trim();\n }\n\n #appendText(elem: any) {\n const { width, height, label } = this.calendar.options.options.subDomain;\n\n if (!label) {\n return null;\n }\n\n return elem\n .append('text')\n .attr('class', (d: SubDomain) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#classname(d.t, `${DEFAULT_SELECTOR.slice(1)}-text`))\n .attr('x', (d: SubDomain) => this.#getX(d) + width / 2)\n .attr('y', (d: SubDomain) => this.#getY(d) + height / 2)\n .attr('text-anchor', 'middle')\n .attr('dominant-baseline', 'central')\n .text((d: SubDomain, i: number, nodes: any[]) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.calendar.dateHelper.format(d.t, label, d.v, nodes[i]));\n }\n\n #getCoordinates(axis: 'x' | 'y', d: SubDomain): number {\n const { subDomain } = this.calendar.options.options;\n return (\n d[axis] *\n (subDomain[axis === 'x' ? 'width' : 'height'] + subDomain.gutter)\n );\n }\n\n #getX(d: SubDomain): number {\n return this.#getCoordinates('x', d);\n }\n\n #getY(d: SubDomain): number {\n return this.#getCoordinates('y', d);\n }\n}\n","import { select, create } from 'd3-selection';\nimport { normalizedScale, applyScaleStyle } from '../scale';\nimport { DEFAULT_SELECTOR as MAIN_SELECTOR } from '../calendar/CalendarPainter';\nimport {\n // force line break from prettier\n DEFAULT_SELECTOR as SUBDOMAIN_SELECTOR,\n} from '../subDomain/SubDomainPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions } from '../index';\nimport {\n OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n} from '../constant';\n\ninterface LegendOptions extends PluginOptions {\n enabled: boolean;\n itemSelector: string | null;\n width: number;\n height: number;\n radius: number;\n gutter: number;\n includeBlank: boolean;\n}\n\nconst DEFAULT_SELECTOR = '.ch-plugin-legend-lite';\n\nconst defaultOptions: LegendOptions = {\n enabled: true, // Whether to display the legend\n itemSelector: null,\n width: OPTIONS_DEFAULT_SUBDOMAIN_WIDTH,\n height: OPTIONS_DEFAULT_SUBDOMAIN_HEIGHT,\n gutter: OPTIONS_DEFAULT_SUBDOMAIN_GUTTER,\n radius: OPTIONS_DEFAULT_SUBDOMAIN_RADIUS,\n includeBlank: false,\n};\n\nexport default class LegendLite implements IPlugin {\n name = 'LegendLite';\n\n calendar: CalHeatmap;\n\n root: any;\n\n shown: boolean;\n\n options: LegendOptions;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.shown = false;\n this.options = defaultOptions;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...this.options, ...pluginOptions };\n }\n\n paint(): Promise {\n const { enabled, itemSelector } = this.options;\n\n if (!enabled || (itemSelector && select(itemSelector).empty())) {\n return this.destroy();\n }\n\n this.shown = true;\n\n this.root = select(\n itemSelector || this.calendar.options.options.itemSelector,\n );\n\n if (this.root.select(DEFAULT_SELECTOR).empty()) {\n this.root = this.root\n .append('div')\n .attr('class', DEFAULT_SELECTOR.slice(1));\n } else {\n this.root = this.root.select(DEFAULT_SELECTOR);\n }\n\n const node = this.#buildLegend();\n\n this.root.selectAll('*').remove();\n this.root.append(() => node.node());\n\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root !== null) {\n this.root.remove();\n this.root = null;\n }\n\n return Promise.resolve();\n }\n\n #buildLegend() {\n const node = create('svg');\n const scale = normalizedScale(this.calendar.options.options.scale);\n const {\n width, height, gutter, includeBlank,\n } = this.options;\n\n const localRange = [...scale.range];\n if (includeBlank) {\n localRange.unshift(null);\n }\n\n node\n .attr('class', MAIN_SELECTOR.slice(1))\n .attr(\n 'width',\n localRange.length * width + (localRange.length - 1) * gutter,\n )\n .attr('height', height);\n\n node\n .selectAll('rect')\n .data(localRange)\n .join(\n (enter: any) => enter.append('rect').call((sc: any) =>\n // eslint-disable-next-line implicit-arrow-linebreak\n this.#nodeAttrs(sc, scale)),\n (update: any) => update\n .selectAll('rect')\n .call((sc: any) => this.#nodeAttrs(sc, scale)),\n );\n\n return node;\n }\n\n #nodeAttrs(selection: any, scale: any) {\n const {\n width, height, radius, gutter,\n } = this.options;\n\n return selection\n .attr('width', width)\n .attr('height', height)\n .attr('class', `${SUBDOMAIN_SELECTOR.slice(1)}-bg`)\n .attr('rx', radius)\n .attr('ry', radius)\n .attr('x', (_d: any, i: number) => i * (width + gutter))\n .attr('y', 0)\n .call((element: any) => {\n applyScaleStyle(element, scale, this.calendar.options.options.scale!);\n });\n }\n}\n","import { select } from 'd3-selection';\n\nimport DomainsContainerPainter from '../domain/DomainsContainerPainter';\nimport PluginPainter from '../plugins/PluginPainter';\n\nimport type CalHeatmap from '../CalHeatmap';\nimport { ScrollDirection } from '../constant';\nimport type { Dimensions } from '../index';\n\nexport const DEFAULT_SELECTOR = '.ch-container';\n\nexport default class CalendarPainter {\n calendar: CalHeatmap;\n\n dimensions: Dimensions;\n\n root: any;\n\n domainsContainerPainter: DomainsContainerPainter;\n\n pluginPainter: PluginPainter;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.dimensions = {\n width: 0,\n height: 0,\n };\n this.root = null;\n this.domainsContainerPainter = new DomainsContainerPainter(calendar);\n this.pluginPainter = new PluginPainter(calendar);\n }\n\n setup(): boolean {\n const { itemSelector, theme } = this.calendar.options.options;\n\n if (!this.root) {\n this.root = select(itemSelector)\n .append('svg')\n .attr('data-theme', theme)\n .attr('class', DEFAULT_SELECTOR.slice(1));\n this.domainsContainerPainter.setup();\n }\n\n this.calendar.pluginManager.setupAll();\n\n return true;\n }\n\n paint(navigationDir: ScrollDirection = ScrollDirection.SCROLL_NONE) {\n const transitions = this.domainsContainerPainter\n .paint(navigationDir)\n .concat(this.pluginPainter.paint())\n .concat(this.domainsContainerPainter.updatePosition());\n\n this.#resize();\n\n return Promise.allSettled(transitions);\n }\n\n #getHeight(): Dimensions['height'] {\n return (\n this.domainsContainerPainter.height() + this.pluginPainter.insideHeight()\n );\n }\n\n #getWidth(): Dimensions['width'] {\n return (\n this.domainsContainerPainter.width() + this.pluginPainter.insideWidth()\n );\n }\n\n #resize(): void {\n const { options } = this.calendar.options;\n\n const newWidth = this.#getWidth();\n const newHeight = this.#getHeight();\n\n this.root\n .transition()\n .duration(options.animationDuration)\n .attr('width', newWidth)\n .attr('height', newHeight);\n\n if (\n newWidth !== this.dimensions.width ||\n newHeight !== this.dimensions.height\n ) {\n this.calendar.eventEmitter.emit(\n 'resize',\n newWidth,\n newHeight,\n this.dimensions.width,\n this.dimensions.height,\n );\n }\n\n this.dimensions = {\n width: newWidth,\n height: newHeight,\n };\n }\n\n destroy(): Promise {\n const result: Promise[] = this.calendar.pluginManager\n .destroyAll()\n .concat(this.domainsContainerPainter.destroy());\n\n if (!this.root) {\n return Promise.allSettled(result);\n }\n\n result.push(\n this.root\n .transition()\n .duration(this.calendar.options.options.animationDuration)\n .attr('width', 0)\n .attr('height', 0)\n .remove()\n .end(),\n );\n\n return Promise.allSettled(result);\n }\n}\n"],"names":["fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","FunctionPrototype","Function","prototype","call","uncurryThisWithBind","functionUncurryThis","fn","apply","arguments","isNullOrUndefined","it","$TypeError","TypeError","requireObjectCoercible","$Object","toObject","argument","require$$1","hasOwnProperty_1","hasOwn","key","DESCRIPTORS","getDescriptor","getOwnPropertyDescriptor","EXISTS","functionName","PROPER","name","CONFIGURABLE","configurable","makeBuiltIn$3","exports","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","check","Math","global","globalThis","window","self","this","defineGlobalProperty","value","writable","SHARED","sharedStore","store","require$$2","functionToString","toString","inspectSource","match","version","WeakMap","weakMapBasicDetection","String","isObject","objectDefineProperty","createElement","documentCreateElement","ie8DomDefine","a","v8PrototypeDefineBug","$String","anObject","functionCall","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","userAgent","process","Deno","versions","v8","split","engineV8Version","V8_VERSION","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","V","P","func","shared$3","sharedModule","push","mode","copyright","license","source","uncurryThis","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","IE8_DOM_DEFINE","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","$getOwnPropertyDescriptor","ENUMERABLE","WRITABLE","f","O","Attributes","current","enumerable","set","has","createPropertyDescriptor","bitmap","definePropertyModule","createNonEnumerableProperty","object","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","require$$6","require$$7","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","stringSlice","slice","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltInAccessor","target","descriptor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectGetOwnPropertyDescriptor","objectPropertyIsEnumerable","$propertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","classofRaw","classof","indexedObject","IndexedObject","toIndexedObject","propertyIsEnumerableModule","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","objectKeys","require$$8","$assign","assign","objectAssign","b","A","B","alphabet","forEach","chr","T","argumentsLength","S","j","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","Array","proto","__proto__","setToStringTag","TAG","SPECIES","setSpecies","CONSTRUCTOR_NAME","Constructor","anInstance","Prototype","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","$location","defer","channel","port","isConstructor","called","aConstructor","functionApply","Reflect","functionUncurryThisClause","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","require$$10","IS_NODE","require$$11","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","C","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","$","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","isArrayIteratorMethod","getIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","addToUnscopables","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","createProperty","propertyKey","$Array","arraySliceSimple","start","end","k","fin","$getOwnPropertyNames","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","collection","common","IS_MAP","IS_WEAK","ADDER","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","getConstructor","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","defineBuiltIns","isArray","arraySpeciesConstructor","originalArray","arraySpeciesCreate","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","define","init","domIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","METHOD_NAME","arrayMethodHasSpeciesSupport","array","foo","Boolean","nativeSlice","HAS_SPECIES_SUPPORT","arrayMethodIsStrict","nativeJoin","__classPrivateFieldGet","receiver","separator","nativeKeys","MATCH","isRegExp","notARegExp","correctIsRegExpLogic","regexp","error1","error2","nativeStartsWith","startsWith","CORRECT_IS_REGEXP_LOGIC","searchString","search","$forEach","arrayForEach","IE_BUG","TO_ENTRIES","IE_WORKAROUND","$entries","defined","Number","isNaN","ascendingDefined","ascending","finite","isFinite","NaN","positive","negative","re","parse","fallback","Date","timeIntervals","Map","timeSecond","timeMinute","timeHour","timeDay","timeWeek","timeMonth","timeYear","timeMonday","timeTuesday","timeWednesday","timeThursday","timeFriday","timeSaturday","timeSunday","utcIntervals","utcSecond","utcMinute","utcHour","utcDay","utcWeek","utcMonth","utcYear","utcMonday","utcTuesday","utcWednesday","utcThursday","utcFriday","utcSaturday","utcSunday","maybeTimeInterval","interval","Error","maybeUtcInterval","TypedArray","Uint8Array","objectToString","constant","coerceNumbers","coerceNumber","Float64Array","coerceDates","coerceDate","isoParse","arrayify","isScaleOptions","option","maybeInterval","isInteger","abs","d","offset","range","lo","hi","rangei","maybeRangeInterval","isOrdinal","isTemporal","isTemporalString","isNumericString","trim","orderof","last","descending","color","radius","opacity","registry","sqrt4_3","sqrt","symbolHexagon","draw","context","rx","PI","ry","hy","moveTo","lineTo","closePath","symbols","symbolAsterisk","symbolCircle","symbolCross","symbolDiamond","symbolDiamond2","symbolPlus","symbolSquare","symbolSquare2","symbolStar","symbolTimes","symbolTriangle","symbolTriangle2","symbolWye","maybeSymbol","isSymbolObject","warn","message","ordinalSchemes","schemeAccent","schemeCategory10","schemeDark2","schemePaired","schemePastel1","schemePastel2","schemeSet1","schemeSet2","schemeSet3","schemeTableau10","scheme11","schemeBrBG","interpolateBrBG","schemePRGn","interpolatePRGn","schemePiYG","interpolatePiYG","schemePuOr","interpolatePuOr","schemeRdBu","interpolateRdBu","schemeRdGy","interpolateRdGy","schemeRdYlBu","interpolateRdYlBu","schemeRdYlGn","interpolateRdYlGn","schemeSpectral","interpolateSpectral","scheme11r","scheme9","schemeBlues","interpolateBlues","schemeGreens","interpolateGreens","schemeGreys","interpolateGreys","schemeOranges","interpolateOranges","schemePurples","interpolatePurples","schemeReds","interpolateReds","schemei","interpolateTurbo","interpolateViridis","interpolateMagma","interpolateInferno","interpolatePlasma","interpolateCividis","interpolateCubehelixDefault","interpolateWarm","interpolateCool","schemeBuGn","interpolateBuGn","schemeBuPu","interpolateBuPu","schemeGnBu","interpolateGnBu","schemeOrRd","interpolateOrRd","schemePuBu","interpolatePuBu","schemePuBuGn","interpolatePuBuGn","schemePuRd","interpolatePuRd","schemeRdPu","interpolateRdPu","schemeYlGn","interpolateYlGn","schemeYlGnBu","interpolateYlGnBu","schemeYlOrBr","interpolateYlOrBr","schemeYlOrRd","interpolateYlOrRd","schemeicyclical","interpolateRainbow","interpolateSinebow","scheme","interpolate","quantize","t","reverse","ordinalScheme","s","ordinalRange","quantitativeSchemes","quantitativeScheme","divergingSchemes","Set","isDivergingScheme","flip","unit","interpolators","interpolateNumber","interpolateRgb","interpolateHsl","interpolateHcl","interpolateLab","maybeInterpolator","createScaleQ","scale","channels","nice","clamp","zero","inferAutoDomain","unknown","round","inferRadialRange","inferLengthRange","interpolateRound","_","interpolatePiecewise","extent","sign","reverseof","maybeNiceInterval","maybeNice","createScalePow","exponent","scalePow","createScaleThreshold","isOrdered","scaleThreshold","inferDomain","inferZeroDomain","hint","h25","quantile","h50","median","inferLogDomain","v","inferQuantileDomain","createScaleD","transform","pivot","symmetric","piecewise","mid","mindelta","maxdelta","invert","interpolator","createScaleDivergingPow","scaleDivergingPow","transformSqrt","pow","transformPow","createScaleDivergingSymlog","scaleDivergingSymlog","log1p","expm1","transformSymlog","transformIdentity","transformLog","log","exp","createScaleT","ordinalImplicit","createScaleO","createScaleOrdinal","fill","inferHint","stroke","inferSymbolHint","isNone","symbolsStroke","symbolsFill","inferSymbolRange","maybeBooleanRange","t0","scaleImplicit","scaleOrdinal","maybeRound","InternSet","sort","candidate","normalizeScale","projection","typeProjection","asOrdinalType","inferScaleType","isOrdinalScale","formatScaleType","coerceType","coerceSymbols","scaleDiverging","createScaleDiverging","createScaleDivergingSqrt","base","scaleDivergingLog","createScaleDivergingLog","scaleLinear","createScaleLinear","createScaleSqrt","quantiles","scaleQuantile","createScaleQuantile","thresholds","ticks","pop","createScaleQuantize","scaleLog","createScaleLog","scaleSymlog","createScaleSymlog","scaleUtc","createScaleUtc","scaleTime","createScaleTime","align","padding","scalePoint","createScalePoint","paddingInner","paddingOuter","scaleBand","createScaleBand","scaleIdentity","createScale","description","coerceValues","c","exposeScale","percent","bandwidth","ScrollDirection","Position","SCALE_BASE_OPACITY_COLOR","normalizedScale","scaleOptions","scaleType","applyScaleStyle","elem","_scale","keyname","styles","baseColor","scaleStyle","_ref","_ref2","_slicedToArray","prop","doesNotExceedSafeInteger","IS_CONCAT_SPREADABLE","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","arg","len","E","allSettled","status","collectionStrong","previous","getEntry","removed","prev","ITERATOR_NAME","getInternalCollectionState","getInternalIteratorState","mergeSort","comparefn","middle","insertionSort","merge","element","left","right","llength","rlength","lindex","rindex","arraySort","firefox","engineFfVersion","engineIsIeOrEdge","webkit","engineWebkitVersion","deletePropertyOrThrow","internalSort","FF","IE_OR_EDGE","V8","WEBKIT","nativeSort","FAILS_ON_UNDEFINED","FAILS_ON_NULL","STRICT_METHOD","STABLE_SORT","code","fromCharCode","itemsLength","items","arrayLength","y","getSortCompare","$includes","$map","$filter","callWithSafeIterationClosing","arrayLike","IS_CONSTRUCTOR","mapfn","mapping","whitespaces","ltrim","RegExp","rtrim","stringTrim","$trim","forcedStringTrimMethod","DEFAULT_SELECTOR","defaultOptions","enabled","itemSelector","width","height","gutter","includeBlank","LegendLite","calendar","_classCallCheck","root","shown","pluginOptions","_this$options","select","destroy","append","attr","selectAll","remove","_this$options2","localRange","_toConsumableArray","unshift","sc","_this","_LegendLite_instances","_LegendLite_nodeAttrs","update","selection","_this2","_this$options3","_d"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/Tooltip.min.esm.js.map b/src/agenda_culturel/static/cal-heatmap/plugins/Tooltip.min.esm.js.map index 449a4de..c23150d 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/Tooltip.min.esm.js.map +++ b/src/agenda_culturel/static/cal-heatmap/plugins/Tooltip.min.esm.js.map @@ -1 +1 @@ -{"version":3,"file":"Tooltip.min.esm.js","sources":["../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-method-has-species-support.js","../../node_modules/core-js/modules/es.array.concat.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/tslib/tslib.es6.js","../../../src/plugins/Tooltip.ts"],"sourcesContent":["'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","import { createPopper } from '@popperjs/core';\n\nimport type dayjs from 'dayjs';\nimport type { VirtualElement, StrictModifiers } from '@popperjs/core';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions, Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '#ch-tooltip';\n\ninterface PopperOptions {\n placement: any;\n modifiers: any[];\n strategy: any;\n onFirstUpdate?: any;\n}\n\ninterface TooltipOptions extends PluginOptions, PopperOptions {\n enabled: boolean;\n text: (timestamp: Timestamp, value: number, dayjsDate: dayjs.Dayjs) => string;\n}\n\nconst defaultOptions: Partial = {\n enabled: true,\n\n // Expecting a function, which will return the tooltip content\n text: (_timestamp, value, dayjsDate): string =>\n // eslint-disable-next-line implicit-arrow-linebreak\n `${value} - ${dayjsDate.format('LLLL')}`,\n};\n\nconst DEFAULT_POPPER_OPTIONS = {\n placement: 'top',\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8],\n },\n },\n ],\n};\n\nconst virtualElement: VirtualElement = {\n getBoundingClientRect(x = 0, y = 0): DOMRect {\n return {\n width: 0,\n height: 0,\n top: y,\n right: x,\n bottom: y,\n left: x,\n x,\n y,\n toJSON: () => {},\n };\n },\n};\n\nexport default class Tooltip implements IPlugin {\n name = 'Tooltip';\n\n calendar: CalHeatmap;\n\n root: HTMLElement | null;\n\n popperInstance: any;\n\n popperOptions: any;\n\n options: Partial;\n\n listenerAttached: boolean;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.popperInstance = null;\n this.options = defaultOptions;\n this.listenerAttached = false;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n const event = this.calendar.eventEmitter;\n\n if (!this.options.enabled) {\n if (this.listenerAttached) {\n event.off('mouseover', this.mouseOverCallback, this);\n event.off('mouseout', this.mouseOutCallback, this);\n\n this.listenerAttached = false;\n }\n\n this.destroy();\n return;\n }\n\n this.popperOptions = { ...DEFAULT_POPPER_OPTIONS, ...this.options };\n\n this.root = document.getElementById(DEFAULT_SELECTOR.slice(1));\n\n if (!this.root) {\n const tooltipElem = document.createElement('div');\n tooltipElem.setAttribute('id', DEFAULT_SELECTOR.slice(1));\n tooltipElem.setAttribute('role', 'tooltip');\n tooltipElem.innerHTML =\n `
` +\n ``;\n\n this.root = document.body.appendChild(tooltipElem);\n }\n\n this.root.setAttribute('data-theme', this.calendar.options.options.theme);\n\n this.popperInstance = createPopper(\n virtualElement,\n this.root,\n this.popperOptions,\n );\n\n if (!this.listenerAttached) {\n event.on('mouseover', this.mouseOverCallback, this);\n event.on('mouseout', this.mouseOutCallback, this);\n this.listenerAttached = true;\n }\n }\n\n mouseOverCallback(e: PointerEvent, timestamp: Timestamp, value: number) {\n this.#show(e.target, timestamp, value);\n }\n\n mouseOutCallback() {\n this.#hide();\n }\n\n // eslint-disable-next-line class-methods-use-this\n paint(): Promise {\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root) {\n this.root.remove();\n }\n\n return Promise.resolve();\n }\n\n #show(e: any, timestamp: Timestamp, value: number): void {\n const formatter = this.options.text;\n const title = formatter ?\n formatter(timestamp, value, this.calendar.dateHelper.date(timestamp)) :\n null;\n\n if (!title) {\n return;\n }\n\n virtualElement.getBoundingClientRect = () => e.getBoundingClientRect();\n document.getElementById(`${DEFAULT_SELECTOR.slice(1)}-body`)!.innerHTML =\n title;\n\n this.popperInstance.setOptions(() => ({\n ...this.popperOptions,\n modifiers: [\n ...this.popperOptions.modifiers,\n { name: 'eventListeners', enabled: true },\n ],\n }));\n\n this.popperInstance.update();\n\n this.root!.setAttribute('data-show', '1');\n }\n\n #hide(): void {\n this.root!.removeAttribute('data-show');\n\n this.popperInstance.setOptions(() => ({\n ...this.popperOptions,\n modifiers: [\n ...this.popperOptions.modifiers,\n { name: 'eventListeners', enabled: false },\n ],\n }));\n }\n}\n"],"names":["commonjsGlobal","globalThis","window","global","self","check","it","Math","this","Function","fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","call","prototype","functionCall","apply","arguments","$propertyIsEnumerable","propertyIsEnumerable","getOwnPropertyDescriptor","NASHORN_BUG","objectPropertyIsEnumerable","f","V","descriptor","enumerable","match","version","createPropertyDescriptor","bitmap","value","configurable","writable","FunctionPrototype","uncurryThisWithBind","functionUncurryThis","fn","uncurryThis","toString","stringSlice","slice","classofRaw","require$$1","classof","require$$2","$Object","split","indexedObject","isNullOrUndefined","$TypeError","TypeError","requireObjectCoercible","IndexedObject","toIndexedObject","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","argument","isObject","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","String","userAgent","process","Deno","versions","v8","engineV8Version","V8_VERSION","$String","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","P","func","shared$3","exports","defineGlobalProperty","key","SHARED","sharedStore","store","sharedModule","push","mode","copyright","license","source","toObject","hasOwnProperty_1","hasOwn","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","EXISTS","createElement","documentCreateElement","ie8DomDefine","a","DESCRIPTORS","propertyIsEnumerableModule","require$$6","IE8_DOM_DEFINE","require$$7","$getOwnPropertyDescriptor","objectGetOwnPropertyDescriptor","O","objectDefineProperty","v8PrototypeDefineBug","anObject","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","ENUMERABLE","CONFIGURABLE","WRITABLE","Attributes","current","definePropertyModule","createNonEnumerableProperty","object","makeBuiltIn$3","getDescriptor","functionName","PROPER","functionToString","inspectSource","set","has","WeakMap","weakMapBasicDetection","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","target","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","isArray","Array","createProperty","propertyKey","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","isConstructor","called","SPECIES","$Array","arraySpeciesConstructor","originalArray","C","arraySpeciesCreate","$","doesNotExceedSafeInteger","require$$8","arrayMethodHasSpeciesSupport","METHOD_NAME","array","foo","Boolean","require$$11","IS_CONCAT_SPREADABLE","require$$10","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","proto","arg","k","len","E","A","defineBuiltInAccessor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectKeys","$assign","assign","objectAssign","b","B","alphabet","forEach","chr","T","argumentsLength","S","j","$location","defer","channel","port","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","__proto__","setToStringTag","TAG","anInstance","Prototype","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","IS_NODE","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","addToUnscopables","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","$getOwnPropertyNames","start","end","fin","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","getConstructor","ADDER","define","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","collection","init","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","__classPrivateFieldGet","receiver","DEFAULT_SELECTOR","defaultOptions","enabled","text","_timestamp","dayjsDate","format","DEFAULT_POPPER_OPTIONS","placement","modifiers","offset","virtualElement","getBoundingClientRect","y","width","height","top","right","bottom","left","toJSON","Tooltip","calendar","_classCallCheck","root","popperInstance","listenerAttached","pluginOptions","eventEmitter","off","mouseOverCallback","mouseOutCallback","destroy","popperOptions","getElementById","tooltipElem","setAttribute","innerHTML","body","theme","createPopper","on","e","timestamp","_Tooltip_instances","_Tooltip_show","_Tooltip_hide","remove","_this","formatter","title","dateHelper","date","setOptions","_toConsumableArray","update","_this2","removeAttribute"],"mappings":"0xCACA,IAAAA,EAAA,oBAAAC,WAAAA,WAAA,oBAAAC,OAAAA,OAAA,oBAAAC,OAAAA,OAAA,oBAAAC,KAAAA,KAAA,CAAA,EAAIC,EAAQ,SAAUC,GACpB,OAAOA,GAAMA,EAAGC,OAASA,MAAQD,CACnC,EAGAH,EAEEE,EAA2B,iBAAdJ,YAA0BA,aACvCI,EAAuB,iBAAVH,QAAsBA,SAEnCG,EAAqB,iBAARD,MAAoBA,OACjCC,EAAuB,iBAAVF,GAAsBA,IACnCE,EAAqB,iBAARG,GAAoBA,IAEjC,WAAe,OAAOA,IAAO,CAA7B,IAAoCC,SAAS,cAATA,QCdtCC,EAAiB,SAAUC,GACzB,IACE,QAASA,GACV,CAAC,MAAOC,GACP,OAAO,CACR,CACH,ECHAC,GAHYC,GAGY,WAEtB,OAA+E,IAAxEC,OAAOC,eAAe,GAAI,EAAG,CAAEC,IAAK,WAAc,OAAO,CAAI,IAAI,EAC1E,ICJAC,GAFYJ,GAEY,WAEtB,IAAIK,EAAO,WAA4B,EAAEC,OAEzC,MAAsB,mBAARD,GAAsBA,EAAKE,eAAe,YAC1D,ICPIC,EAAcR,EAEdS,EAAOd,SAASe,UAAUD,KAE9BE,EAAiBH,EAAcC,EAAKH,KAAKG,GAAQ,WAC/C,OAAOA,EAAKG,MAAMH,EAAMI,UAC1B,OCNIC,EAAwB,CAAE,EAACC,qBAE3BC,EAA2Bf,OAAOe,yBAGlCC,EAAcD,IAA6BF,EAAsBL,KAAK,CAAE,EAAG,GAAK,GAIpFS,EAAAC,EAAYF,EAAc,SAA8BG,GACtD,IAAIC,EAAaL,EAAyBtB,KAAM0B,GAChD,QAASC,GAAcA,EAAWC,UACpC,EAAIR,ECZJ,ICOIS,EAAOC,EDPXC,EAAiB,SAAUC,EAAQC,GACjC,MAAO,CACLL,aAAuB,EAATI,GACdE,eAAyB,EAATF,GAChBG,WAAqB,EAATH,GACZC,MAAOA,EAEX,EEPInB,EAAcR,EAEd8B,EAAoBnC,SAASe,UAC7BD,EAAOqB,EAAkBrB,KACzBsB,EAAsBvB,GAAesB,EAAkBxB,KAAKA,KAAKG,EAAMA,GAE3EuB,EAAiBxB,EAAcuB,EAAsB,SAAUE,GAC7D,OAAO,WACL,OAAOxB,EAAKG,MAAMqB,EAAIpB,UAC1B,CACA,ECVIqB,EAAclC,EAEdmC,EAAWD,EAAY,GAAGC,UAC1BC,EAAcF,EAAY,GAAGG,OAEjCC,EAAiB,SAAU9C,GACzB,OAAO4C,EAAYD,EAAS3C,GAAK,GAAI,EACvC,ECNII,EAAQ2C,EACRC,EAAUC,EAEVC,EAAUzC,OACV0C,EALc3C,EAKM,GAAG2C,OAG3BC,EAAiBhD,GAAM,WAGrB,OAAQ8C,EAAQ,KAAK3B,qBAAqB,EAC5C,IAAK,SAAUvB,GACb,MAAuB,WAAhBgD,EAAQhD,GAAmBmD,EAAMnD,EAAI,IAAMkD,EAAQlD,EAC5D,EAAIkD,ECZJG,EAAiB,SAAUrD,GACzB,OAAOA,OACT,ECJIqD,EAAoB7C,EAEpB8C,EAAaC,UAIjBC,EAAiB,SAAUxD,GACzB,GAAIqD,EAAkBrD,GAAK,MAAM,IAAIsD,EAAW,wBAA0BtD,GAC1E,OAAOA,CACT,ECRIyD,EAAgBjD,EAChBgD,EAAyBT,EAE7BW,EAAiB,SAAU1D,GACzB,OAAOyD,EAAcD,EAAuBxD,GAC9C,ECNI2D,EAAiC,iBAAZC,UAAwBA,SAASC,IAM1DC,EAAiB,CACfD,IAAKF,EACLI,gBAJqC,IAAfJ,QAA8CK,IAAhBL,GCFlDA,EAFenD,EAEYqD,IAI/BI,EANmBzD,EAMWuD,WAAa,SAAUG,GACnD,MAA0B,mBAAZA,GAA0BA,IAAaP,CACvD,EAAI,SAAUO,GACZ,MAA0B,mBAAZA,CAChB,ECVID,EAAazD,EAGbmD,EAFeZ,EAEYc,IAE/BM,EAJmBpB,EAIWgB,WAAa,SAAU/D,GACnD,MAAoB,iBAANA,EAAwB,OAAPA,EAAciE,EAAWjE,IAAOA,IAAO2D,CACxE,EAAI,SAAU3D,GACZ,MAAoB,iBAANA,EAAwB,OAAPA,EAAciE,EAAWjE,EAC1D,ECTIH,EAASW,EACTyD,EAAalB,EAMjBqB,EAAiB,SAAUC,EAAWC,GACpC,OAAOjD,UAAUkD,OAAS,GALFL,EAKgBrE,EAAOwE,GAJxCJ,EAAWC,GAAYA,OAAWF,GAIoBnE,EAAOwE,IAAcxE,EAAOwE,GAAWC,GALtF,IAAUJ,CAM1B,ECPAM,EAFkBhE,EAEW,CAAE,EAACiE,eCFhCC,EAAqC,oBAAbC,WAA4BC,OAAOD,UAAUE,YAAc,GZA/EhF,GAASW,EACTqE,GAAY9B,EAEZ+B,GAAUjF,GAAOiF,QACjBC,GAAOlF,GAAOkF,KACdC,GAAWF,IAAWA,GAAQE,UAAYD,IAAQA,GAAK/C,QACvDiD,GAAKD,IAAYA,GAASC,GAG1BA,KAIFjD,GAHAD,EAAQkD,GAAG9B,MAAM,MAGD,GAAK,GAAKpB,EAAM,GAAK,EAAI,IAAMA,EAAM,GAAKA,EAAM,MAK7DC,GAAW6C,OACd9C,EAAQ8C,GAAU9C,MAAM,iBACVA,EAAM,IAAM,MACxBA,EAAQ8C,GAAU9C,MAAM,oBACbC,GAAWD,EAAM,IAIhC,IAAAmD,GAAiBlD,EazBbmD,GAAa3E,GACbJ,GAAQ2C,EAGRqC,GAFSnC,EAEQ2B,OAGrBS,KAAmB5E,OAAO6E,wBAA0BlF,IAAM,WACxD,IAAImF,EAASC,OAAO,oBAKpB,OAAQJ,GAAQG,MAAa9E,OAAO8E,aAAmBC,UAEpDA,OAAOC,MAAQN,IAAcA,GAAa,EAC/C,ICdAO,GAFoBlF,KAGdgF,OAAOC,MACkB,iBAAnBD,OAAOG,SCLfvB,GAAa5D,EACbyD,GAAalB,EACb0B,GAAgBxB,EAGhBC,GAAUzC,OAEdmF,GAJwBC,GAIa,SAAU7F,GAC7C,MAAoB,iBAANA,CAChB,EAAI,SAAUA,GACZ,IAAI8F,EAAU1B,GAAW,UACzB,OAAOH,GAAW6B,IAAYrB,GAAcqB,EAAQ5E,UAAWgC,GAAQlD,GACzE,ECZIoF,GAAUR,OAEdmB,GAAiB,SAAU7B,GACzB,IACE,OAAOkB,GAAQlB,EAChB,CAAC,MAAO5D,GACP,MAAO,QACR,CACH,ECRI2D,GAAazD,EACbuF,GAAchD,GAEdO,GAAaC,UAGjByC,GAAiB,SAAU9B,GACzB,GAAID,GAAWC,GAAW,OAAOA,EACjC,MAAM,IAAIZ,GAAWyC,GAAY7B,GAAY,qBAC/C,ECTI8B,GAAYxF,GACZ6C,GAAoBN,EAIxBkD,GAAiB,SAAUrE,EAAGsE,GAC5B,IAAIC,EAAOvE,EAAEsE,GACb,OAAO7C,GAAkB8C,QAAQnC,EAAYgC,GAAUG,EACzD,ECRIlF,GAAOT,EACPyD,GAAalB,EACboB,GAAWlB,EAEXK,GAAaC,UCJjB6C,GAAA,CAAAC,QAAA,CAAA,GAAIxG,GAASW,EAGTE,GAAiBD,OAAOC,eAE5B4F,GAAiB,SAAUC,EAAKpE,GAC9B,IACEzB,GAAeb,GAAQ0G,EAAK,CAAEpE,MAAOA,EAAOC,cAAc,EAAMC,UAAU,GAC3E,CAAC,MAAO/B,GACPT,GAAO0G,GAAOpE,CACf,CAAC,OAAOA,CACX,ECVImE,GAAuBvD,GAEvByD,GAAS,qBAGbC,GANajG,EAIMgG,KAAWF,GAAqBE,GAAQ,CAAA,GCHvDE,GAAQ3D,IAEX4D,WAAiB,SAAUJ,EAAKpE,GAC/B,OAAOuE,GAAMH,KAASG,GAAMH,QAAiBvC,IAAV7B,EAAsBA,EAAQ,CAAA,EACnE,GAAG,WAAY,IAAIyE,KAAK,CACtB5E,QAAS,SACT6E,KAAyB,SACzBC,UAAW,4CACXC,QAAS,2DACTC,OAAQ,0DCVNxD,GAAyBhD,EAEzB0C,GAAUzC,OAIdwG,GAAiB,SAAU/C,GACzB,OAAOhB,GAAQM,GAAuBU,GACxC,ECPI+C,GAAWlE,GAEXhC,GAHcP,EAGe,GAAGO,gBAKpCmG,GAAiBzG,OAAO0G,QAAU,SAAgBnH,EAAIuG,GACpD,OAAOxF,GAAekG,GAASjH,GAAKuG,EACtC,ECVI7D,GAAclC,EAEd4G,GAAK,EACLC,GAAUpH,KAAKqH,SACf3E,GAAWD,GAAY,GAAIC,UAE/B4E,GAAiB,SAAUhB,GACzB,MAAO,gBAAqBvC,IAARuC,EAAoB,GAAKA,GAAO,KAAO5D,KAAWyE,GAAKC,GAAS,GACtF,ECPIG,GAASzE,GACToE,GAASlE,GACTsE,GAAM1B,GACN4B,GAAgBC,GAChBC,GAAoBC,GAEpBpC,GAPShF,EAOOgF,OAChBqC,GAAwBL,GAAO,OAC/BM,GAAwBH,GAAoBnC,GAAY,KAAKA,GAASA,IAAUA,GAAOuC,eAAiBR,GAE5GS,GAAiB,SAAUC,GAKvB,OAJGd,GAAOU,GAAuBI,KACjCJ,GAAsBI,GAAQR,IAAiBN,GAAO3B,GAAQyC,GAC1DzC,GAAOyC,GACPH,GAAsB,UAAYG,IAC/BJ,GAAsBI,EACjC,ECjBIhH,GAAOT,EACP2D,GAAWpB,EACX6C,GAAW3C,GACXgD,GAAYJ,GACZqC,GRIa,SAAUC,EAAOC,GAChC,IAAI3F,EAAI4F,EACR,GAAa,WAATD,GAAqBnE,GAAWxB,EAAK0F,EAAMxF,YAAcwB,GAASkE,EAAMpH,GAAKwB,EAAI0F,IAAS,OAAOE,EACrG,GAAIpE,GAAWxB,EAAK0F,EAAMG,WAAanE,GAASkE,EAAMpH,GAAKwB,EAAI0F,IAAS,OAAOE,EAC/E,GAAa,WAATD,GAAqBnE,GAAWxB,EAAK0F,EAAMxF,YAAcwB,GAASkE,EAAMpH,GAAKwB,EAAI0F,IAAS,OAAOE,EACrG,MAAM,IAAI/E,GAAW,0CACvB,EQPIA,GAAaC,UACbgF,GAHkBX,GAGa,eCR/BY,GDYa,SAAUL,EAAOC,GAChC,IAAKjE,GAASgE,IAAUvC,GAASuC,GAAQ,OAAOA,EAChD,IACIM,EADAC,EAAezC,GAAUkC,EAAOI,IAEpC,GAAIG,EAAc,CAGhB,QAFa1E,IAAToE,IAAoBA,EAAO,WAC/BK,EAASxH,GAAKyH,EAAcP,EAAOC,IAC9BjE,GAASsE,IAAW7C,GAAS6C,GAAS,OAAOA,EAClD,MAAM,IAAInF,GAAW,0CACtB,CAED,YADaU,IAAToE,IAAoBA,EAAO,UACxBF,GAAoBC,EAAOC,EACpC,ECvBIxC,GAAW7C,GAIf4F,GAAiB,SAAUzE,GACzB,IAAIqC,EAAMiC,GAAYtE,EAAU,UAChC,OAAO0B,GAASW,GAAOA,EAAMA,EAAM,EACrC,ECPIpC,GAAWpB,EAEXa,GAHSpD,EAGSoD,SAElBgF,GAASzE,GAASP,KAAaO,GAASP,GAASiF,eAErDC,GAAiB,SAAU9I,GACzB,OAAO4I,GAAShF,GAASiF,cAAc7I,GAAM,CAAA,CAC/C,ECPI6I,GAAgB5F,GAGpB8F,IALkBvI,IACNuC,GAI4B,WAEtC,OAES,IAFFtC,OAAOC,eAAemI,GAAc,OAAQ,IAAK,CACtDlI,IAAK,WAAc,OAAO,CAAI,IAC7BqI,CACL,ICVIC,GAAczI,EACdS,GAAO8B,EACPmG,GAA6BjG,EAC7BhB,GAA2B4D,EAC3BnC,GAAkBgE,EAClBiB,GAAgBf,GAChBT,GAASgC,GACTC,GAAiBC,GAGjBC,GAA4B7I,OAAOe,yBAI9B+H,EAAA5H,EAAGsH,GAAcK,GAA4B,SAAkCE,EAAGtD,GAGzF,GAFAsD,EAAI9F,GAAgB8F,GACpBtD,EAAIyC,GAAczC,GACdkD,GAAgB,IAClB,OAAOE,GAA0BE,EAAGtD,EACxC,CAAI,MAAO5F,GAAsB,CAC/B,GAAI6G,GAAOqC,EAAGtD,GAAI,OAAOjE,IAA0BhB,GAAKiI,GAA2BvH,EAAG6H,EAAGtD,GAAIsD,EAAEtD,GACjG,EAAA,IAAAuD,GAAA,CAAA,EChBAC,GALkBlJ,GACNuC,GAI0B,WAEpC,OAGiB,KAHVtC,OAAOC,gBAAe,WAAY,GAAiB,YAAa,CACrEyB,MAAO,GACPE,UAAU,IACTnB,SACL,ICXIiD,GAAW3D,EAEX4E,GAAUR,OACVtB,GAAaC,UAGjBoG,GAAiB,SAAUzF,GACzB,GAAIC,GAASD,GAAW,OAAOA,EAC/B,MAAM,IAAIZ,GAAW8B,GAAQlB,GAAY,oBAC3C,ECTI+E,GAAczI,EACd4I,GAAiBrG,GACjB6G,GAA0B3G,GAC1B0G,GAAW9D,GACX8C,GAAgBjB,GAEhBpE,GAAaC,UAEbsG,GAAkBpJ,OAAOC,eAEzB4I,GAA4B7I,OAAOe,yBACnCsI,GAAa,aACbC,GAAe,eACfC,GAAW,WAIfP,GAAA9H,EAAYsH,GAAcW,GAA0B,SAAwBJ,EAAGtD,EAAG+D,GAIhF,GAHAN,GAASH,GACTtD,EAAIyC,GAAczC,GAClByD,GAASM,GACQ,mBAANT,GAA0B,cAANtD,GAAqB,UAAW+D,GAAcD,MAAYC,IAAeA,EAAWD,IAAW,CAC5H,IAAIE,EAAUZ,GAA0BE,EAAGtD,GACvCgE,GAAWA,EAAQF,MACrBR,EAAEtD,GAAK+D,EAAW9H,MAClB8H,EAAa,CACX7H,aAAc2H,MAAgBE,EAAaA,EAAWF,IAAgBG,EAAQH,IAC9EjI,WAAYgI,MAAcG,EAAaA,EAAWH,IAAcI,EAAQJ,IACxEzH,UAAU,GAGf,CAAC,OAAOwH,GAAgBL,EAAGtD,EAAG+D,EACjC,EAAIJ,GAAkB,SAAwBL,EAAGtD,EAAG+D,GAIlD,GAHAN,GAASH,GACTtD,EAAIyC,GAAczC,GAClByD,GAASM,GACLb,GAAgB,IAClB,OAAOS,GAAgBL,EAAGtD,EAAG+D,EACjC,CAAI,MAAO3J,GAAsB,CAC/B,GAAI,QAAS2J,GAAc,QAASA,EAAY,MAAM,IAAI3G,GAAW,2BAErE,MADI,UAAW2G,IAAYT,EAAEtD,GAAK+D,EAAW9H,OACtCqH,CACT,EC1CA,IACIW,GAAuBpH,GACvBd,GAA2BgB,EAE/BmH,GAJkB5J,EAIa,SAAU6J,EAAQ9D,EAAKpE,GACpD,OAAOgI,GAAqBxI,EAAE0I,EAAQ9D,EAAKtE,GAAyB,EAAGE,GACzE,EAAI,SAAUkI,EAAQ9D,EAAKpE,GAEzB,OADAkI,EAAO9D,GAAOpE,EACPkI,CACT,ECTAC,GAAA,CAAAjE,QAAA,CAAA,GAAI4C,GAAczI,EACd2G,GAASpE,GAETT,GAAoBnC,SAASe,UAE7BqJ,GAAgBtB,IAAexI,OAAOe,yBAEtCoH,GAASzB,GAAO7E,GAAmB,QAKvCkI,GAAiB,CACf5B,OAAQA,GACR6B,OALW7B,IAA0D,cAAhD,WAAqC,EAAEX,KAM5D8B,aALiBnB,MAAYK,IAAgBA,IAAesB,GAAcjI,GAAmB,QAAQF,eCTnG6B,GAAalB,EACb2D,GAAQzD,GAERyH,GAJclK,EAIiBL,SAASwC,UAGvCsB,GAAWyC,GAAMiE,iBACpBjE,GAAMiE,cAAgB,SAAU3K,GAC9B,OAAO0K,GAAiB1K,EAC5B,OCEI4K,GAAKjK,GAAKkK,GDCdF,GAAiBjE,GAAMiE,cEZnB1G,GAAalB,EAEb+H,GAHStK,EAGQsK,QAErBC,GAAiB9G,GAAW6G,KAAY,cAAcjK,KAAK+D,OAAOkG,KCJ9DvD,GAAMxE,GAENiI,GAHSxK,GAGK,QAElByK,GAAiB,SAAU1E,GACzB,OAAOyE,GAAKzE,KAASyE,GAAKzE,GAAOgB,GAAIhB,GACvC,ECPA2E,GAAiB,CAAA,EHAbC,GAAkB3K,GAClBX,GAASkD,EACToB,GAAWlB,EACXmH,GAA8BvE,GAC9BsB,GAASO,GACTF,GAASI,GACTqD,GAAY9B,GACZ+B,GAAa7B,GAEb+B,GAA6B,6BAC7B7H,GAAY1D,GAAO0D,UACnBuH,GAAUjL,GAAOiL,QAgBrB,GAAIK,IAAmB3D,GAAO6D,MAAO,CACnC,IAAI3E,GAAQc,GAAO6D,QAAU7D,GAAO6D,MAAQ,IAAIP,IAEhDpE,GAAM/F,IAAM+F,GAAM/F,IAClB+F,GAAMmE,IAAMnE,GAAMmE,IAClBnE,GAAMkE,IAAMlE,GAAMkE,IAElBA,GAAM,SAAU5K,EAAIsL,GAClB,GAAI5E,GAAMmE,IAAI7K,GAAK,MAAM,IAAIuD,GAAU6H,IAGvC,OAFAE,EAASC,OAASvL,EAClB0G,GAAMkE,IAAI5K,EAAIsL,GACPA,CACX,EACE3K,GAAM,SAAUX,GACd,OAAO0G,GAAM/F,IAAIX,IAAO,CAAA,CAC5B,EACE6K,GAAM,SAAU7K,GACd,OAAO0G,GAAMmE,IAAI7K,EACrB,CACA,KAAO,CACL,IAAIwL,GAAQP,GAAU,SACtBC,GAAWM,KAAS,EACpBZ,GAAM,SAAU5K,EAAIsL,GAClB,GAAInE,GAAOnH,EAAIwL,IAAQ,MAAM,IAAIjI,GAAU6H,IAG3C,OAFAE,EAASC,OAASvL,EAClBoK,GAA4BpK,EAAIwL,GAAOF,GAChCA,CACX,EACE3K,GAAM,SAAUX,GACd,OAAOmH,GAAOnH,EAAIwL,IAASxL,EAAGwL,IAAS,EAC3C,EACEX,GAAM,SAAU7K,GACd,OAAOmH,GAAOnH,EAAIwL,GACtB,CACA,CAEA,IAAAC,GAAiB,CACfb,IAAKA,GACLjK,IAAKA,GACLkK,IAAKA,GACLa,QArDY,SAAU1L,GACtB,OAAO6K,GAAI7K,GAAMW,GAAIX,GAAM4K,GAAI5K,EAAI,CAAA,EACrC,EAoDE2L,UAlDc,SAAUC,GACxB,OAAO,SAAU5L,GACf,IAAIqL,EACJ,IAAKlH,GAASnE,KAAQqL,EAAQ1K,GAAIX,IAAK6L,OAASD,EAC9C,MAAM,IAAIrI,GAAU,0BAA4BqI,EAAO,aACvD,OAAOP,CACb,CACA,GIzBI3I,GAAclC,EACdJ,GAAQ2C,EACRkB,GAAahB,EACbkE,GAAStB,GACToD,GAAcvB,EACdoE,GAA6BlE,GAAsCmC,aACnEY,GAAgBxB,GAGhB4C,GAFsB1C,GAEqBqC,QAC3CM,GAHsB3C,GAGiB1I,IACvCyE,GAAUR,OAEVlE,GAAiBD,OAAOC,eACxBkC,GAAcF,GAAY,GAAGG,OAC7BoJ,GAAUvJ,GAAY,GAAGuJ,SACzBC,GAAOxJ,GAAY,GAAGwJ,MAEtBC,GAAsBlD,KAAgB7I,IAAM,WAC9C,OAAsF,IAA/EM,IAAe,WAA2B,GAAE,SAAU,CAAEyB,MAAO,IAAKoC,MAC7E,IAEI6H,GAAWxH,OAAOA,QAAQzB,MAAM,UAEhCkJ,GAAcC,GAAAjG,QAAiB,SAAUlE,EAAO8F,EAAMsE,GACf,YAArC3J,GAAYwC,GAAQ6C,GAAO,EAAG,KAChCA,EAAO,IAAMgE,GAAQ7G,GAAQ6C,GAAO,qBAAsB,MAAQ,KAEhEsE,GAAWA,EAAQC,SAAQvE,EAAO,OAASA,GAC3CsE,GAAWA,EAAQE,SAAQxE,EAAO,OAASA,KAC1Cd,GAAOhF,EAAO,SAAY2J,IAA8B3J,EAAM8F,OAASA,KACtEgB,GAAavI,GAAeyB,EAAO,OAAQ,CAAEA,MAAO8F,EAAM7F,cAAc,IACvED,EAAM8F,KAAOA,GAEhBkE,IAAuBI,GAAWpF,GAAOoF,EAAS,UAAYpK,EAAMoC,SAAWgI,EAAQG,OACzFhM,GAAeyB,EAAO,SAAU,CAAEA,MAAOoK,EAAQG,QAEnD,IACMH,GAAWpF,GAAOoF,EAAS,gBAAkBA,EAAQI,YACnD1D,IAAavI,GAAeyB,EAAO,YAAa,CAAEE,UAAU,IAEvDF,EAAMjB,YAAWiB,EAAMjB,eAAY8C,EAClD,CAAI,MAAO1D,GAAsB,CAC/B,IAAI+K,EAAQU,GAAqB5J,GAG/B,OAFGgF,GAAOkE,EAAO,YACjBA,EAAMrE,OAASkF,GAAKE,GAAyB,iBAARnE,EAAmBA,EAAO,KACxD9F,CACX,EAIAhC,SAASe,UAAUyB,SAAW0J,IAAY,WACxC,OAAOpI,GAAW/D,OAAS8L,GAAiB9L,MAAM8G,QAAU2D,GAAczK,KAC5E,GAAG,8BCrDC+D,GAAazD,EACb2J,GAAuBpH,GACvBsJ,GAAcpJ,GACdqD,GAAuBT,GAE3B+G,GAAiB,SAAUpD,EAAGjD,EAAKpE,EAAOoK,GACnCA,IAASA,EAAU,IACxB,IAAIM,EAASN,EAAQzK,WACjBmG,OAAwBjE,IAAjBuI,EAAQtE,KAAqBsE,EAAQtE,KAAO1B,EAEvD,GADItC,GAAW9B,IAAQkK,GAAYlK,EAAO8F,EAAMsE,GAC5CA,EAAQ1M,OACNgN,EAAQrD,EAAEjD,GAAOpE,EAChBmE,GAAqBC,EAAKpE,OAC1B,CACL,IACOoK,EAAQO,OACJtD,EAAEjD,KAAMsG,GAAS,UADErD,EAAEjD,EAEpC,CAAM,MAAOjG,GAAsB,CAC3BuM,EAAQrD,EAAEjD,GAAOpE,EAChBgI,GAAqBxI,EAAE6H,EAAGjD,EAAK,CAClCpE,MAAOA,EACPL,YAAY,EACZM,cAAemK,EAAQQ,gBACvB1K,UAAWkK,EAAQS,aAEtB,CAAC,OAAOxD,CACX,QC1BIyD,GAAOhN,KAAKgN,KACZC,GAAQjN,KAAKiN,MCDbC,GDMalN,KAAKkN,OAAS,SAAeC,GAC5C,IAAIC,GAAKD,EACT,OAAQC,EAAI,EAAIH,GAAQD,IAAMI,EAChC,ECLAC,GAAiB,SAAUpJ,GACzB,IAAIqJ,GAAUrJ,EAEd,OAAOqJ,GAAWA,GAAqB,IAAXA,EAAe,EAAIJ,GAAMI,EACvD,ECRID,GAAsB9M,GAEtBgN,GAAMvN,KAAKuN,IACXC,GAAMxN,KAAKwN,IAKfC,GAAiB,SAAUC,EAAOpJ,GAChC,IAAIqJ,EAAUN,GAAoBK,GAClC,OAAOC,EAAU,EAAIJ,GAAII,EAAUrJ,EAAQ,GAAKkJ,GAAIG,EAASrJ,EAC/D,ECXI+I,GAAsB9M,GAEtBiN,GAAMxN,KAAKwN,ICFXI,GDMa,SAAU3J,GACzB,OAAOA,EAAW,EAAIuJ,GAAIH,GAAoBpJ,GAAW,kBAAoB,CAC/E,ECJA4J,GAAiB,SAAUC,GACzB,OAAOF,GAASE,EAAIxJ,OACtB,ECNIb,GAAkBlD,EAClBkN,GAAkB3K,GAClB+K,GAAoB7K,GAGpB+K,GAAe,SAAUC,GAC3B,OAAO,SAAUC,EAAOC,EAAIC,GAC1B,IAGIjM,EAHAqH,EAAI9F,GAAgBwK,GACpB3J,EAASuJ,GAAkBtE,GAC3BmE,EAAQD,GAAgBU,EAAW7J,GAIvC,GAAI0J,GAAeE,GAAOA,GAAI,KAAO5J,EAASoJ,GAG5C,IAFAxL,EAAQqH,EAAEmE,OAEIxL,EAAO,OAAO,OAEvB,KAAMoC,EAASoJ,EAAOA,IAC3B,IAAKM,GAAeN,KAASnE,IAAMA,EAAEmE,KAAWQ,EAAI,OAAOF,GAAeN,GAAS,EACnF,OAAQM,IAAgB,CAC9B,CACA,EAEAI,GAAiB,CAGfC,SAAUN,IAAa,GAGvBO,QAASP,IAAa,IC7BpB7G,GAASpE,GACTW,GAAkBT,EAClBsL,GAAU1I,GAAuC0I,QACjDrD,GAAaxD,GAEbd,GANcpG,EAMK,GAAGoG,MAE1B4H,GAAiB,SAAUnE,EAAQoE,GACjC,IAGIlI,EAHAiD,EAAI9F,GAAgB2G,GACpBqE,EAAI,EACJjG,EAAS,GAEb,IAAKlC,KAAOiD,GAAIrC,GAAO+D,GAAY3E,IAAQY,GAAOqC,EAAGjD,IAAQK,GAAK6B,EAAQlC,GAE1E,KAAOkI,EAAMlK,OAASmK,GAAOvH,GAAOqC,EAAGjD,EAAMkI,EAAMC,SAChDH,GAAQ9F,EAAQlC,IAAQK,GAAK6B,EAAQlC,IAExC,OAAOkC,CACT,EClBAkG,GAAiB,CACf,cACA,iBACA,gBACA,uBACA,iBACA,WACA,WCREC,GAAqBpO,GAGrB0K,GAFcnI,GAEW8L,OAAO,SAAU,aAKrCC,GAAAnN,EAAGlB,OAAOsO,qBAAuB,SAA6BvF,GACrE,OAAOoF,GAAmBpF,EAAG0B,GAC/B,ECVA,IAAA8D,GAAA,CAAA,EACSA,GAAArN,EAAGlB,OAAO6E,sBCDnB,IAAIlB,GAAa5D,EAEbyO,GAA4BhM,GAC5BiM,GAA8BrJ,GAC9B8D,GAAWjC,GAEXmH,GALc9L,EAKO,GAAG8L,QAG5BM,GAAiB/K,GAAW,UAAW,YAAc,SAAiBpE,GACpE,IAAIgL,EAAOiE,GAA0BtN,EAAEgI,GAAS3J,IAC5CsF,EAAwB4J,GAA4BvN,EACxD,OAAO2D,EAAwBuJ,GAAO7D,EAAM1F,EAAsBtF,IAAOgL,CAC3E,ECbI7D,GAAS3G,GACT2O,GAAUpM,GACVqM,GAAiCnM,EACjCkH,GAAuBtE,GCHvBzF,GAAQI,EACRyD,GAAalB,EAEbsM,GAAc,kBAEdC,GAAW,SAAUC,EAASC,GAChC,IAAIrN,EAAQsN,GAAKC,GAAUH,IAC3B,OAAOpN,IAAUwN,IACbxN,IAAUyN,KACV3L,GAAWuL,GAAapP,GAAMoP,KAC5BA,EACR,EAEIE,GAAYJ,GAASI,UAAY,SAAUG,GAC7C,OAAOjL,OAAOiL,GAAQ5D,QAAQoD,GAAa,KAAKS,aAClD,EAEIL,GAAOH,GAASG,KAAO,GACvBG,GAASN,GAASM,OAAS,IAC3BD,GAAWL,GAASK,SAAW,IAEnCI,GAAiBT,GCrBbzP,GAASW,EACTgB,GAA2BuB,EAA2DpB,EACtFyI,GAA8BnH,GAC9B2J,GAAgB/G,GAChBS,GAAuBoB,GACvBsI,GFAa,SAAUC,EAAQjJ,EAAQkJ,GAIzC,IAHA,IAAIlF,EAAOmE,GAAQnI,GACftG,EAAiByJ,GAAqBxI,EACtCH,EAA2B4N,GAA+BzN,EACrD+M,EAAI,EAAGA,EAAI1D,EAAKzG,OAAQmK,IAAK,CACpC,IAAInI,EAAMyE,EAAK0D,GACVvH,GAAO8I,EAAQ1J,IAAU2J,GAAc/I,GAAO+I,EAAY3J,IAC7D7F,EAAeuP,EAAQ1J,EAAK/E,EAAyBwF,EAAQT,GAEhE,CACH,EETI+I,GAAWnG,GAiBfgH,GAAiB,SAAU5D,EAASvF,GAClC,IAGYiJ,EAAQ1J,EAAK6J,EAAgBC,EAAgBxO,EAHrDyO,EAAS/D,EAAQ0D,OACjBM,EAAShE,EAAQ1M,OACjB2Q,EAASjE,EAAQkE,KASrB,GANER,EADEM,EACO1Q,GACA2Q,EACA3Q,GAAOyQ,IAAWhK,GAAqBgK,EAAQ,CAAA,IAE9CzQ,GAAOyQ,IAAW,CAAA,GAAIpP,UAEtB,IAAKqF,KAAOS,EAAQ,CAQ9B,GAPAqJ,EAAiBrJ,EAAOT,GAGtB6J,EAFE7D,EAAQmE,gBACV7O,EAAaL,GAAyByO,EAAQ1J,KACf1E,EAAWM,MACpB8N,EAAO1J,IACtB+I,GAASiB,EAAShK,EAAM+J,GAAUE,EAAS,IAAM,KAAOjK,EAAKgG,EAAQoE,cAE5C3M,IAAnBoM,EAA8B,CAC3C,UAAWC,UAAyBD,EAAgB,SACpDJ,GAA0BK,EAAgBD,EAC3C,EAEG7D,EAAQ9G,MAAS2K,GAAkBA,EAAe3K,OACpD2E,GAA4BiG,EAAgB,QAAQ,GAEtDzD,GAAcqD,EAAQ1J,EAAK8J,EAAgB9D,EAC5C,CACH,ECrDIvJ,GAAUxC,EAKdoQ,GAAiBC,MAAMD,SAAW,SAAiB1M,GACjD,MAA6B,UAAtBlB,GAAQkB,EACjB,ECPIZ,GAAaC,UCAboF,GAAgBnI,GAChB2J,GAAuBpH,GACvBd,GAA2BgB,EAE/B6N,GAAiB,SAAUzG,EAAQ9D,EAAKpE,GACtC,IAAI4O,EAAcpI,GAAcpC,GAC5BwK,KAAe1G,EAAQF,GAAqBxI,EAAE0I,EAAQ0G,EAAa9O,GAAyB,EAAGE,IAC9FkI,EAAO0G,GAAe5O,CAC7B,ECLItB,GAAO,CAAA,EAEXA,GALsBL,GAEc,gBAGd,IAEtB,IAAAwQ,GAAkC,eAAjBpM,OAAO/D,ICPpBoQ,GAAwBzQ,GACxByD,GAAalB,EACbD,GAAaG,EAGbiO,GAFkBrL,GAEc,eAChC3C,GAAUzC,OAGV0Q,GAAwE,cAApDrO,GAAW,WAAc,OAAOzB,SAAY,CAAjC,IAUnC2B,GAAiBiO,GAAwBnO,GAAa,SAAU9C,GAC9D,IAAIwJ,EAAG4H,EAAK3I,EACZ,YAAczE,IAAPhE,EAAmB,YAAqB,OAAPA,EAAc,OAEO,iBAAjDoR,EAXD,SAAUpR,EAAIuG,GACzB,IACE,OAAOvG,EAAGuG,EACd,CAAI,MAAOjG,GAAsB,CACjC,CAOoB+Q,CAAO7H,EAAItG,GAAQlD,GAAKkR,KAA8BE,EAEpED,GAAoBrO,GAAW0G,GAEF,YAA5Bf,EAAS3F,GAAW0G,KAAoBvF,GAAWuF,EAAE8H,QAAU,YAAc7I,CACpF,EC5BI/F,GAAclC,EACdJ,GAAQ2C,EACRkB,GAAahB,EACbD,GAAU6C,GAEV8E,GAAgB/C,GAEhB2J,GAAO,WAAY,EACnBC,GAAQ,GACRC,GALa/J,EAKU,UAAW,aAClCgK,GAAoB,2BACpBrR,GAAOqC,GAAYgP,GAAkBrR,MACrCsR,IAAuBD,GAAkB7Q,KAAK0Q,IAE9CK,GAAsB,SAAuB1N,GAC/C,IAAKD,GAAWC,GAAW,OAAO,EAClC,IAEE,OADAuN,GAAUF,GAAMC,GAAOtN,IAChB,CACR,CAAC,MAAO5D,GACP,OAAO,CACR,CACH,EAEIuR,GAAsB,SAAuB3N,GAC/C,IAAKD,GAAWC,GAAW,OAAO,EAClC,OAAQlB,GAAQkB,IACd,IAAK,gBACL,IAAK,oBACL,IAAK,yBAA0B,OAAO,EAExC,IAIE,OAAOyN,MAAyBtR,GAAKqR,GAAmB/G,GAAczG,GACvE,CAAC,MAAO5D,GACP,OAAO,CACR,CACH,EAEAuR,GAAoBpM,MAAO,EAI3B,IAAAqM,IAAkBL,IAAarR,IAAM,WACnC,IAAI2R,EACJ,OAAOH,GAAoBA,GAAoB3Q,QACzC2Q,GAAoBnR,UACpBmR,IAAoB,WAAcG,GAAS,CAAK,KACjDA,CACP,IAAKF,GAAsBD,GCnDvBhB,GAAUpQ,GACVsR,GAAgB/O,GAChBoB,GAAWlB,EAGX+O,GAFkBnM,GAEQ,WAC1BoM,GAASpB,MCNTqB,GDUa,SAAUC,GACzB,IAAIC,EASF,OARExB,GAAQuB,KACVC,EAAID,EAAcxF,aAEdmF,GAAcM,KAAOA,IAAMH,IAAUrB,GAAQwB,EAAElR,aAC1CiD,GAASiO,IAEN,QADVA,EAAIA,EAAEJ,QAFwDI,OAAIpO,SAKvDA,IAANoO,EAAkBH,GAASG,CACtC,ECjBAC,GAAiB,SAAUF,EAAe5N,GACxC,OAAO,IAAK2N,GAAwBC,GAA7B,CAAwD,IAAX5N,EAAe,EAAIA,EACzE,ECNInE,GAAQI,EAER2E,GAAalC,GAEb+O,GAHkBjP,GAGQ,WCJ1BuP,GAAI9R,GACJJ,GAAQ2C,EACR6N,GAAU3N,GACVkB,GAAW0B,EACXoB,GAAWS,GACXoG,GAAoBlG,GACpB2K,GRHa,SAAUvS,GACzB,GAAIA,EAHiB,iBAGM,MAAMsD,GAAW,kCAC5C,OAAOtD,CACT,EQCI8Q,GAAiBzH,GACjBgJ,GAAqBG,GACrBC,GDHa,SAAUC,GAIzB,OAAOvN,IAAc,KAAO/E,IAAM,WAChC,IAAIuS,EAAQ,GAKZ,OAJkBA,EAAMhG,YAAc,IAC1BqF,IAAW,WACrB,MAAO,CAAEY,IAAK,EACpB,EAC+C,IAApCD,EAAMD,GAAaG,SAASD,GACvC,GACA,ECPIzN,GAAa2N,GAEbC,GAHkBC,GAGqB,sBAKvCC,GAA+B9N,IAAc,KAAO/E,IAAM,WAC5D,IAAIuS,EAAQ,GAEZ,OADAA,EAAMI,KAAwB,EACvBJ,EAAM9D,SAAS,KAAO8D,CAC/B,IAEIO,GAAqB,SAAU1J,GACjC,IAAKrF,GAASqF,GAAI,OAAO,EACzB,IAAI2J,EAAa3J,EAAEuJ,IACnB,YAAsB/O,IAAfmP,IAA6BA,EAAavC,GAAQpH,EAC3D,EAOA8I,GAAE,CAAErC,OAAQ,QAASmD,OAAO,EAAM1G,MAAO,EAAGiE,QAL9BsC,KAAiCR,GAA6B,WAKd,CAE5D5D,OAAQ,SAAgBwE,GACtB,IAGI3E,EAAG4E,EAAG/O,EAAQgP,EAAKC,EAHnBhK,EAAIvC,GAAS/G,MACbuT,EAAIpB,GAAmB7I,EAAG,GAC1B6D,EAAI,EAER,IAAKqB,GAAK,EAAGnK,EAASlD,UAAUkD,OAAQmK,EAAInK,EAAQmK,IAElD,GAAIwE,GADJM,GAAW,IAAP9E,EAAWlF,EAAInI,UAAUqN,IAI3B,IAFA6E,EAAMzF,GAAkB0F,GACxBjB,GAAyBlF,EAAIkG,GACxBD,EAAI,EAAGA,EAAIC,EAAKD,IAAKjG,IAASiG,KAAKE,GAAG1C,GAAe2C,EAAGpG,EAAGmG,EAAEF,SAElEf,GAAyBlF,EAAI,GAC7ByD,GAAe2C,EAAGpG,IAAKmG,GAI3B,OADAC,EAAElP,OAAS8I,EACJoG,CACR,ICvDH,IAAIpH,GAAc7L,GACdE,GAAiBqC,GAErB2Q,GAAiB,SAAUzD,EAAQhI,EAAMpG,GAGvC,OAFIA,EAAWlB,KAAK0L,GAAYxK,EAAWlB,IAAKsH,EAAM,CAAEuE,QAAQ,IAC5D3K,EAAW+I,KAAKyB,GAAYxK,EAAW+I,IAAK3C,EAAM,CAAEwE,QAAQ,IACzD/L,GAAeiB,EAAEsO,EAAQhI,EAAMpG,EACxC,ECPIoH,GAAczI,EACdmT,GAAuB5Q,GAAsC6F,OAC7DlG,GAAcO,EACdyQ,GAAwB7N,GAExBvD,GAAoBnC,SAASe,UAC7BwJ,GAAmBhI,GAAYJ,GAAkBK,UACjDiR,GAAS,mEACTC,GAAanR,GAAYkR,GAAOvT,MAKhC4I,KAAgB0K,IAClBD,GAAsBpR,GALb,OAKsC,CAC7CF,cAAc,EACdzB,IAAK,WACH,IACE,OAAOkT,GAAWD,GAAQlJ,GAAiBxK,OAAO,EACnD,CAAC,MAAOI,GACP,MAAO,EACR,CACF,ICtBL,IAAIsO,GAAqBpO,GACrBmO,GAAc5L,GAKlB+Q,GAAiBrT,OAAOuK,MAAQ,SAAcxB,GAC5C,OAAOoF,GAAmBpF,EAAGmF,GAC/B,ECRI1F,GAAczI,EACdkC,GAAcK,EACd9B,GAAOgC,EACP7C,GAAQyF,EACRiO,GAAapM,GACbwH,GAA8BtH,GAC9BsB,GAA6BC,EAC7BlC,GAAWoC,GACX5F,GAAgB+O,EAGhBuB,GAAUtT,OAAOuT,OAEjBtT,GAAiBD,OAAOC,eACxBmO,GAASnM,GAAY,GAAGmM,QAI5BoF,IAAkBF,IAAW3T,IAAM,WAEjC,GAAI6I,IAQiB,IARF8K,GAAQ,CAAEG,EAAG,GAAKH,GAAQrT,GAAe,CAAE,EAAE,IAAK,CACnEoB,YAAY,EACZnB,IAAK,WACHD,GAAeR,KAAM,IAAK,CACxBiC,MAAO,EACPL,YAAY,GAEf,IACC,CAAEoS,EAAG,KAAMA,EAAS,OAAO,EAE/B,IAAIT,EAAI,CAAA,EACJU,EAAI,CAAA,EAEJ5O,EAASC,OAAO,oBAChB4O,EAAW,uBAGf,OAFAX,EAAElO,GAAU,EACZ6O,EAASjR,MAAM,IAAIkR,SAAQ,SAAUC,GAAOH,EAAEG,GAAOA,CAAM,IACzB,IAA3BP,GAAQ,CAAA,EAAIN,GAAGlO,IAAiBuO,GAAWC,GAAQ,CAAA,EAAII,IAAIjI,KAAK,MAAQkI,CACjF,IAAK,SAAgBnE,EAAQjJ,GAM3B,IALA,IAAIuN,EAAItN,GAASgJ,GACbuE,EAAkBnT,UAAUkD,OAC5BoJ,EAAQ,EACRrI,EAAwB4J,GAA4BvN,EACpDJ,EAAuB2H,GAA2BvH,EAC/C6S,EAAkB7G,GAMvB,IALA,IAIIpH,EAJAkO,EAAIhR,GAAcpC,UAAUsM,MAC5B3C,EAAO1F,EAAwBuJ,GAAOiF,GAAWW,GAAInP,EAAsBmP,IAAMX,GAAWW,GAC5FlQ,EAASyG,EAAKzG,OACdmQ,EAAI,EAEDnQ,EAASmQ,GACdnO,EAAMyE,EAAK0J,KACNzL,KAAehI,GAAKM,EAAsBkT,EAAGlO,KAAMgO,EAAEhO,GAAOkO,EAAElO,IAErE,OAAOgO,CACX,EAAIR,GCtDAC,GAASjR,GADLvC,GAMN,CAAEyP,OAAQ,SAAUQ,MAAM,EAAM/D,MAAO,EAAGiE,OAAQlQ,OAAOuT,SAAWA,IAAU,CAC9EA,OAAQA,KCPV,IACIhR,GAAUD,GCCVJ,GDFwBnC,GAKa,CAAA,EAAGmC,SAAW,WACrD,MAAO,WAAaK,GAAQ9C,MAAQ,GACtC,ECP4BM,IACRuC,GAMJtC,OAAOS,UAAW,WAAYyB,GAAU,CAAEmK,QAAQ,ICPlE,ICuBI6H,GAAWC,GAAOC,GAASC,GDpB/BC,GAA6C,YAF/BhS,EADDvC,EAGmBsE,SEH5BpC,GAAclC,EACdwF,GAAYjD,GCDZkB,GAAazD,EAEb4E,GAAUR,OACVtB,GAAaC,UCFbyR,GFEa,SAAU3K,EAAQ9D,EAAKjC,GACtC,IAEE,OAAO5B,GAAYsD,GAAUvF,OAAOe,yBAAyB6I,EAAQ9D,GAAKjC,IAC9E,CAAI,MAAOhE,GAAsB,CACjC,EENIqJ,GAAW5G,GACXkS,GDEa,SAAU/Q,GACzB,GAAuB,iBAAZA,GAAwBD,GAAWC,GAAW,OAAOA,EAChE,MAAM,IAAIZ,GAAW,aAAe8B,GAAQlB,GAAY,kBAC1D,ECCAgR,GAAiBzU,OAAO0U,iBAAmB,aAAe,CAAE,EAAG,WAC7D,IAEI1I,EAFA2I,GAAiB,EACjBvU,EAAO,CAAA,EAEX,KACE4L,EAASuI,GAAoBvU,OAAOS,UAAW,YAAa,QACrDL,EAAM,IACbuU,EAAiBvU,aAAgBgQ,KACrC,CAAI,MAAOvQ,GAAsB,CAC/B,OAAO,SAAwBkJ,EAAG4J,GAKhC,OAJAzJ,GAASH,GACTyL,GAAmB7B,GACfgC,EAAgB3I,EAAOjD,EAAG4J,GACzB5J,EAAE6L,UAAYjC,EACZ5J,CACX,CACA,CAhB+D,QAgBzDxF,GCzBFtD,GAAiBF,GAA+CmB,EAChEwF,GAASpE,GAGTmO,GAFkBjO,GAEc,eAEpCqS,GAAiB,SAAUrF,EAAQsF,EAAK/E,GAClCP,IAAWO,IAAQP,EAASA,EAAO/O,WACnC+O,IAAW9I,GAAO8I,EAAQiB,KAC5BxQ,GAAeuP,EAAQiB,GAAe,CAAE9O,cAAc,EAAMD,MAAOoT,GAEvE,ECXInR,GAAa5D,EACbkT,GAAwB3Q,GAExBkG,GAAcpD,EAEdmM,GAHkB/O,GAGQ,WCL1BwB,GAAgBjE,EAEhB8C,GAAaC,UAEjBiS,GAAiB,SAAUxV,EAAIyV,GAC7B,GAAIhR,GAAcgR,EAAWzV,GAAK,OAAOA,EACzC,MAAM,IAAIsD,GAAW,uBACvB,ECPIwO,GAAgBtR,GAChBuF,GAAchD,GAEdO,GAAaC,UCHboG,GAAWnJ,GACXkV,GDKa,SAAUxR,GACzB,GAAI4N,GAAc5N,GAAW,OAAOA,EACpC,MAAM,IAAIZ,GAAWyC,GAAY7B,GAAY,wBAC/C,ECPIb,GAAoBJ,EAGpB+O,GAFkBnM,GAEQ,WCL1B7E,GAAcR,EAEd8B,GAAoBnC,SAASe,UAC7BE,GAAQkB,GAAkBlB,MAC1BH,GAAOqB,GAAkBrB,KAG7B0U,GAAmC,iBAAXC,SAAuBA,QAAQxU,QAAUJ,GAAcC,GAAKH,KAAKM,IAAS,WAChG,OAAOH,GAAKG,MAAMA,GAAOC,UAC3B,GCTIyB,GAAatC,EACbkC,GAAcK,ECDdL,GDGa,SAAUD,GAIzB,GAAuB,aAAnBK,GAAWL,GAAoB,OAAOC,GAAYD,EACxD,ECPIuD,GAAYjD,GACZ/B,GAAciC,EAEdnC,GAAO4B,GAAYA,GAAY5B,MAGnC+U,GAAiB,SAAUpT,EAAIqT,GAE7B,OADA9P,GAAUvD,QACMuB,IAAT8R,EAAqBrT,EAAKzB,GAAcF,GAAK2B,EAAIqT,GAAQ,WAC9D,OAAOrT,EAAGrB,MAAM0U,EAAMzU,UAC1B,CACA,ECVA0U,GAFiBvV,EAEW,WAAY,mBCAxCwV,GAFkBxV,EAEW,GAAGqC,OCF5BS,GAAaC,UCGjB0S,GAAiB,qCAAqCpV,KAHtCL,GfAZX,GAASW,EACTY,GAAQ2B,GACRjC,GAAOmC,GACPgB,GAAa4B,EACbsB,GAASO,GACTtH,GAAQwH,EACRmO,GAAO5M,GACP6M,GAAa3M,GACbR,GAAgB2J,GAChB0D,GcPa,SAAUC,EAAQC,GACjC,GAAID,EAASC,EAAU,MAAM,IAAI9S,GAAW,wBAC5C,OAAO6S,CACT,EdKIE,GAASrD,GACTsD,GAAUxD,GAEVlI,GAAM/K,GAAO0W,aACbC,GAAQ3W,GAAO4W,eACf3R,GAAUjF,GAAOiF,QACjB4R,GAAW7W,GAAO6W,SAClBvW,GAAWN,GAAOM,SAClBwW,GAAiB9W,GAAO8W,eACxB/R,GAAS/E,GAAO+E,OAChBgS,GAAU,EACVC,GAAQ,CAAA,EACRC,GAAqB,qBAGzB1W,IAAM,WAEJuU,GAAY9U,GAAOkX,QACrB,IAEA,IAAIC,GAAM,SAAU5P,GAClB,GAAID,GAAO0P,GAAOzP,GAAK,CACrB,IAAI3E,EAAKoU,GAAMzP,UACRyP,GAAMzP,GACb3E,GACD,CACH,EAEIwU,GAAS,SAAU7P,GACrB,OAAO,WACL4P,GAAI5P,EACR,CACA,EAEI8P,GAAgB,SAAUC,GAC5BH,GAAIG,EAAM1H,KACZ,EAEI2H,GAAyB,SAAUhQ,GAErCvH,GAAOwX,YAAYzS,GAAOwC,GAAKuN,GAAU2C,SAAW,KAAO3C,GAAU4C,KACvE,EAGK3M,IAAQ4L,KACX5L,GAAM,SAAsB4M,GAC1BtB,GAAwB7U,UAAUkD,OAAQ,GAC1C,IAAI9B,EAAKwB,GAAWuT,GAAWA,EAAUrX,GAASqX,GAC9CC,EAAOzB,GAAW3U,UAAW,GAKjC,OAJAwV,KAAQD,IAAW,WACjBxV,GAAMqB,OAAIuB,EAAWyT,EAC3B,EACI7C,GAAMgC,IACCA,EACX,EACEJ,GAAQ,SAAwBpP,UACvByP,GAAMzP,EACjB,EAEMkP,GACF1B,GAAQ,SAAUxN,GAChBtC,GAAQ4S,SAAST,GAAO7P,GAC9B,EAEasP,IAAYA,GAASiB,IAC9B/C,GAAQ,SAAUxN,GAChBsP,GAASiB,IAAIV,GAAO7P,GAC1B,EAGauP,KAAmBN,IAE5BvB,IADAD,GAAU,IAAI8B,IACCiB,MACf/C,GAAQgD,MAAMC,UAAYZ,GAC1BtC,GAAQ9T,GAAKgU,GAAKuC,YAAavC,KAI/BjV,GAAOkY,kBACP9T,GAAWpE,GAAOwX,eACjBxX,GAAOmY,eACRrD,IAAoC,UAAvBA,GAAU2C,WACtBlX,GAAMgX,KAEPxC,GAAQwC,GACRvX,GAAOkY,iBAAiB,UAAWb,IAAe,IAGlDtC,GADSkC,MAAsBjO,GAAc,UACrC,SAAUzB,GAChB2O,GAAKkC,YAAYpP,GAAc,WAAWiO,IAAsB,WAC9Df,GAAKmC,YAAYhY,MACjB8W,GAAI5P,EACZ,CACA,EAGY,SAAUA,GAChB+Q,WAAWlB,GAAO7P,GAAK,EAC7B,GAIA,IAAAgR,GAAiB,CACfxN,IAAKA,GACL4L,MAAOA,IgBlHL6B,GAAQ,WACVnY,KAAKoY,KAAO,KACZpY,KAAKqY,KAAO,IACd,EAEAF,GAAMnX,UAAY,CAChBsX,IAAK,SAAUC,GACb,IAAIC,EAAQ,CAAED,KAAMA,EAAME,KAAM,MAC5BJ,EAAOrY,KAAKqY,KACZA,EAAMA,EAAKI,KAAOD,EACjBxY,KAAKoY,KAAOI,EACjBxY,KAAKqY,KAAOG,CACb,EACD/X,IAAK,WACH,IAAI+X,EAAQxY,KAAKoY,KACjB,GAAII,EAGF,OADa,QADFxY,KAAKoY,KAAOI,EAAMC,QACVzY,KAAKqY,KAAO,MACxBG,EAAMD,IAEhB,GAGH,ICNIG,GAAQC,GAAQC,GAAMC,GAASC,GDMnCnC,GAAiBwB,GErBjBY,GAAiB,oBAAoBpY,KAFrBL,IAEyD,oBAAV0Y,OCA/DC,GAAiB,qBAAqBtY,KAFtBL,GFAZX,GAASW,EACTM,GAAOiC,GACPvB,GAA2ByB,EAA2DtB,EACtFyX,GAAYvT,GAA6B+E,IACzCyN,GAAQ3Q,GACR2O,GAASzO,GACTyR,GAAgBlQ,GAChBmQ,GAAkBjQ,GAClBiN,GAAU9D,GAEV+G,GAAmB1Z,GAAO0Z,kBAAoB1Z,GAAO2Z,uBACrD5V,GAAW/D,GAAO+D,SAClBkB,GAAUjF,GAAOiF,QACjB2U,GAAU5Z,GAAO4Z,QAEjBC,GAA2BlY,GAAyB3B,GAAQ,kBAC5D8Z,GAAYD,IAA4BA,GAAyBvX,MAIrE,IAAKwX,GAAW,CACd,IAAI9C,GAAQ,IAAIwB,GAEZuB,GAAQ,WACV,IAAIC,EAAQpX,EAEZ,IADI6T,KAAYuD,EAAS/U,GAAQgV,SAASD,EAAOE,OAC1CtX,EAAKoU,GAAMlW,WAChB8B,GACD,CAAC,MAAOnC,GAEP,MADIuW,GAAMyB,MAAMM,KACVtY,CACP,CACGuZ,GAAQA,EAAOG,OACvB,EAIO3D,IAAWC,IAAYgD,KAAmBC,KAAoB3V,IAQvDyV,IAAiBI,IAAWA,GAAQQ,UAE9ClB,GAAUU,GAAQQ,aAAQjW,IAElB2I,YAAc8M,GACtBT,GAAOlY,GAAKiY,GAAQC,KAAMD,IAC1BH,GAAS,WACPI,GAAKY,GACX,GAEatD,GACTsC,GAAS,WACP9T,GAAQ4S,SAASkC,GACvB,GASIR,GAAYtY,GAAKsY,GAAWvZ,IAC5B+Y,GAAS,WACPQ,GAAUQ,GAChB,IAhCIf,IAAS,EACTC,GAAOlV,GAASsW,eAAe,IAC/B,IAAIX,GAAiBK,IAAOO,QAAQrB,GAAM,CAAEsB,eAAe,IAC3DxB,GAAS,WACPE,GAAKrJ,KAAOoJ,IAAUA,EAC5B,GA8BEc,GAAY,SAAUlX,GACfoU,GAAMyB,MAAMM,KACjB/B,GAAM2B,IAAI/V,EACd,CACA,CAEA,IAAA4X,GAAiBV,GG/EjBW,GAAiB,SAAUja,GACzB,IACE,MAAO,CAAEC,OAAO,EAAO6B,MAAO9B,IAC/B,CAAC,MAAOC,GACP,MAAO,CAAEA,OAAO,EAAM6B,MAAO7B,EAC9B,CACH,ECJAia,GAFa/Z,EAEWiZ,QCDxBe,GAAgC,iBAARzV,MAAoBA,MAA+B,iBAAhBA,KAAK/C,QCEhEyY,IAHcja,KACAuC,IAGQ,iBAAVnD,QACY,iBAAZgE,SCLR/D,GAASW,EACTka,GAA2B3X,GAC3BkB,GAAahB,EACbqM,GAAWzJ,GACX8E,GAAgBjD,GAChBM,GAAkBJ,GAClB+S,GAAaxR,GACbyR,GAAUvR,GAEVlE,GAAa0V,GAEYH,IAA4BA,GAAyBxZ,UAClF,IAAI8Q,GAAUhK,GAAgB,WAC1B8S,IAAc,EACdC,GAAiC9W,GAAWpE,GAAOmb,uBAEnDC,GAA6B3L,GAAS,WAAW,WACnD,IAAI4L,EAA6BvQ,GAAc+P,IAC3CS,EAAyBD,IAA+BtW,OAAO8V,IAInE,IAAKS,GAAyC,KAAfhW,GAAmB,OAAO,EAMzD,IAAKA,IAAcA,GAAa,KAAO,cAActE,KAAKqa,GAA6B,CAErF,IAAInC,EAAU,IAAI2B,IAAyB,SAAUT,GAAWA,EAAQ,EAAG,IACvEmB,EAAc,SAAU/a,GAC1BA,GAAK,WAAY,IAAiB,WAAY,GACpD,EAII,IAHkB0Y,EAAQpM,YAAc,IAC5BqF,IAAWoJ,IACvBN,GAAc/B,EAAQC,MAAK,WAA2B,cAAaoC,GACjD,OAAO,CAE7B,CAAI,OAAQD,IAA2BR,IAAcC,MAAaG,EAClE,IAEAM,GAAiB,CACfC,YAAaL,GACbM,gBAAiBR,GACjBD,YAAaA,IC7CfU,GAAA,CAAA,EAAIxV,GAAYxF,GAEZ8C,GAAaC,UAEbkY,GAAoB,SAAUrJ,GAChC,IAAI6H,EAASyB,EACbxb,KAAK6Y,QAAU,IAAI3G,GAAE,SAAUuJ,EAAWC,GACxC,QAAgB5X,IAAZiW,QAAoCjW,IAAX0X,EAAsB,MAAM,IAAIpY,GAAW,2BACxE2W,EAAU0B,EACVD,EAASE,CACb,IACE1b,KAAK+Z,QAAUjU,GAAUiU,GACzB/Z,KAAKwb,OAAS1V,GAAU0V,EAC1B,EAIgBG,GAAAla,EAAG,SAAUyQ,GAC3B,OAAO,IAAIqJ,GAAkBrJ,EAC/B,ECnBA,IAgDI0J,GAAUC,GAAsCC,GAhDhD1J,GAAI9R,GAEJ8V,GAAUrT,GACVpD,GAASgG,EACT5E,GAAOyG,EACPkF,GAAgBhF,GAChBuN,GAAiBhM,GACjBmM,GAAiBjM,GACjB4S,GrBDa,SAAUC,GACzB,IAAIC,EAAc/X,GAAW8X,GAEzBjT,IAAekT,IAAgBA,EAAYnK,KAC7C0B,GAAsByI,EAAanK,GAAS,CAC1C5P,cAAc,EACdzB,IAAK,WAAc,OAAOT,IAAO,GAGvC,EqBPI8F,GAAY6U,GACZ5W,GAAa+O,EACb7O,GAAW2O,EACX0C,GAAa4G,GACbC,GlBJa,SAAU7S,EAAG8S,GAC5B,IACI7H,EADArC,EAAIzI,GAASH,GAAGmD,YAEpB,YAAa3I,IAANoO,GAAmB/O,GAAkBoR,EAAI9K,GAASyI,GAAGJ,KAAYsK,EAAqB5G,GAAajB,EAC5G,EkBCI2D,GAAOmE,GAA6B3R,IACpC+O,GAAY6C,GACZC,GChBa,SAAUzT,EAAGkL,GAC5B,IAEuB,IAArB7S,UAAUkD,OAAemY,QAAQpc,MAAM0I,GAAK0T,QAAQpc,MAAM0I,EAAGkL,EACjE,CAAI,MAAO5T,GAAsB,CACjC,EDYIga,GAAUqC,GACVtE,GAAQuE,GACRC,GAAsBC,GACtBpC,GAA2BqC,GAE3BC,GAA6BC,GAE7BC,GAAU,UACVjC,GAJ8BkC,GAI2B7B,YACzDP,GAL8BoC,GAK+B5B,gBAC7D6B,GAN8BD,GAM2BrC,YACzDuC,GAA0BR,GAAoBlR,UAAUuR,IACxDI,GAAmBT,GAAoBjS,IACvC2S,GAAyB7C,IAA4BA,GAAyBxZ,UAC9Esc,GAAqB9C,GACrB+C,GAAmBF,GACnBha,GAAY1D,GAAO0D,UACnBK,GAAW/D,GAAO+D,SAClBkB,GAAUjF,GAAOiF,QACjB+W,GAAuBmB,GAA2Brb,EAClD+b,GAA8B7B,GAE9B8B,MAAoB/Z,IAAYA,GAASga,aAAe/d,GAAOge,eAC/DC,GAAsB,qBAWtBC,GAAa,SAAU/d,GACzB,IAAIgZ,EACJ,SAAO7U,GAASnE,KAAOiE,GAAW+U,EAAOhZ,EAAGgZ,QAAQA,CACtD,EAEIgF,GAAe,SAAUC,EAAU5S,GACrC,IAMI5C,EAAQuQ,EAAMkF,EANd/b,EAAQkJ,EAAMlJ,MACdgc,EAfU,IAeL9S,EAAMA,MACXmM,EAAU2G,EAAKF,EAASE,GAAKF,EAASG,KACtCnE,EAAUgE,EAAShE,QACnByB,EAASuC,EAASvC,OAClB5B,EAASmE,EAASnE,OAEtB,IACMtC,GACG2G,IApBK,IAqBJ9S,EAAMgT,WAAyBC,GAAkBjT,GACrDA,EAAMgT,UAvBA,IAyBQ,IAAZ7G,EAAkB/O,EAAStG,GAEzB2X,GAAQA,EAAOE,QACnBvR,EAAS+O,EAAQrV,GACb2X,IACFA,EAAOC,OACPmE,GAAS,IAGTzV,IAAWwV,EAASlF,QACtB2C,EAAO,IAAInY,GAAU,yBACZyV,EAAO+E,GAAWtV,IAC3BxH,GAAK+X,EAAMvQ,EAAQwR,EAASyB,GACvBzB,EAAQxR,IACViT,EAAOvZ,EACf,CAAC,MAAO7B,GACHwZ,IAAWoE,GAAQpE,EAAOC,OAC9B2B,EAAOpb,EACR,CACH,EAEIsY,GAAS,SAAUvN,EAAOkT,GACxBlT,EAAMmT,WACVnT,EAAMmT,UAAW,EACjB7E,IAAU,WAGR,IAFA,IACIsE,EADAQ,EAAYpT,EAAMoT,UAEfR,EAAWQ,EAAU9d,OAC1Bqd,GAAaC,EAAU5S,GAEzBA,EAAMmT,UAAW,EACbD,IAAalT,EAAMgT,WAAWK,GAAYrT,EAClD,IACA,EAEIwS,GAAgB,SAAU5V,EAAM8Q,EAAS4F,GAC3C,IAAIxH,EAAOK,EACPmG,KACFxG,EAAQvT,GAASga,YAAY,UACvB7E,QAAUA,EAChB5B,EAAMwH,OAASA,EACfxH,EAAMyH,UAAU3W,GAAM,GAAO,GAC7BpI,GAAOge,cAAc1G,IAChBA,EAAQ,CAAE4B,QAASA,EAAS4F,OAAQA,IACtC5D,KAAmCvD,EAAU3X,GAAO,KAAOoI,IAAQuP,EAAQL,GACvElP,IAAS6V,IAAqBrB,GAAiB,8BAA+BkC,EACzF,EAEID,GAAc,SAAUrT,GAC1BpK,GAAKmX,GAAMvY,IAAQ,WACjB,IAGI4I,EAHAsQ,EAAU1N,EAAME,OAChBpJ,EAAQkJ,EAAMlJ,MAGlB,GAFmB0c,GAAYxT,KAG7B5C,EAAS6R,IAAQ,WACXhE,GACFxR,GAAQga,KAAK,qBAAsB3c,EAAO4W,GACrC8E,GAAcC,GAAqB/E,EAAS5W,EAC3D,IAEMkJ,EAAMgT,UAAY/H,IAAWuI,GAAYxT,GArF/B,EADF,EAuFJ5C,EAAOnI,OAAO,MAAMmI,EAAOtG,KAErC,GACA,EAEI0c,GAAc,SAAUxT,GAC1B,OA7FY,IA6FLA,EAAMgT,YAA0BhT,EAAMwO,MAC/C,EAEIyE,GAAoB,SAAUjT,GAChCpK,GAAKmX,GAAMvY,IAAQ,WACjB,IAAIkZ,EAAU1N,EAAME,OAChB+K,GACFxR,GAAQga,KAAK,mBAAoB/F,GAC5B8E,GAzGa,mBAyGoB9E,EAAS1N,EAAMlJ,MAC3D,GACA,EAEIrB,GAAO,SAAU2B,EAAI4I,EAAO0T,GAC9B,OAAO,SAAU5c,GACfM,EAAG4I,EAAOlJ,EAAO4c,EACrB,CACA,EAEIC,GAAiB,SAAU3T,EAAOlJ,EAAO4c,GACvC1T,EAAM4T,OACV5T,EAAM4T,MAAO,EACTF,IAAQ1T,EAAQ0T,GACpB1T,EAAMlJ,MAAQA,EACdkJ,EAAMA,MArHO,EAsHbuN,GAAOvN,GAAO,GAChB,EAEI6T,GAAkB,SAAU7T,EAAOlJ,EAAO4c,GAC5C,IAAI1T,EAAM4T,KAAV,CACA5T,EAAM4T,MAAO,EACTF,IAAQ1T,EAAQ0T,GACpB,IACE,GAAI1T,EAAME,SAAWpJ,EAAO,MAAM,IAAIoB,GAAU,oCAChD,IAAIyV,EAAO+E,GAAW5b,GAClB6W,EACFW,IAAU,WACR,IAAIwF,EAAU,CAAEF,MAAM,GACtB,IACEhe,GAAK+X,EAAM7W,EACTrB,GAAKoe,GAAiBC,EAAS9T,GAC/BvK,GAAKke,GAAgBG,EAAS9T,GAEjC,CAAC,MAAO/K,GACP0e,GAAeG,EAAS7e,EAAO+K,EAChC,CACT,KAEMA,EAAMlJ,MAAQA,EACdkJ,EAAMA,MA/II,EAgJVuN,GAAOvN,GAAO,GAEjB,CAAC,MAAO/K,GACP0e,GAAe,CAAEC,MAAM,GAAS3e,EAAO+K,EACxC,CAzBsB,CA0BzB,EAGA,GAAI4P,KAcFwC,IAZAD,GAAqB,SAAiB4B,GACpC5J,GAAWtV,KAAMud,IACjBzX,GAAUoZ,GACVne,GAAK6a,GAAU5b,MACf,IAAImL,EAAQgS,GAAwBnd,MACpC,IACEkf,EAASte,GAAKoe,GAAiB7T,GAAQvK,GAAKke,GAAgB3T,GAC7D,CAAC,MAAO/K,GACP0e,GAAe3T,EAAO/K,EACvB,CACL,GAEwCY,WAGtC4a,GAAW,SAAiBsD,GAC1B9B,GAAiBpd,KAAM,CACrB2L,KAAMqR,GACN+B,MAAM,EACNT,UAAU,EACV3E,QAAQ,EACR4E,UAAW,IAAIpG,GACfgG,WAAW,EACXhT,MAlLQ,EAmLRlJ,WAAO6B,GAEb,GAIW9C,UAAY0L,GAAc6Q,GAAkB,QAAQ,SAAc4B,EAAaC,GACtF,IAAIjU,EAAQgS,GAAwBnd,MAChC+d,EAAWpC,GAAqBQ,GAAmBnc,KAAMsd,KAS7D,OARAnS,EAAMwO,QAAS,EACfoE,EAASE,IAAKla,GAAWob,IAAeA,EACxCpB,EAASG,KAAOna,GAAWqb,IAAeA,EAC1CrB,EAASnE,OAASxD,GAAUxR,GAAQgV,YAAS9V,EA/LnC,IAgMNqH,EAAMA,MAAmBA,EAAMoT,UAAUjG,IAAIyF,GAC5CtE,IAAU,WACbqE,GAAaC,EAAU5S,EAC7B,IACW4S,EAASlF,OACpB,IAEEgD,GAAuB,WACrB,IAAIhD,EAAU,IAAI+C,GACdzQ,EAAQgS,GAAwBtE,GACpC7Y,KAAK6Y,QAAUA,EACf7Y,KAAK+Z,QAAUnZ,GAAKoe,GAAiB7T,GACrCnL,KAAKwb,OAAS5a,GAAKke,GAAgB3T,EACvC,EAEE2R,GAA2Brb,EAAIka,GAAuB,SAAUzJ,GAC9D,OAAOA,IAAMoL,IA1MmB+B,YA0MGnN,EAC/B,IAAI2J,GAAqB3J,GACzBsL,GAA4BtL,EACpC,EAEkBnO,GAAWyW,KAA6B6C,KAA2B9c,OAAOS,WAAW,CACnG8a,GAAauB,GAAuBvE,KAE/BoE,IAEHxQ,GAAc2Q,GAAwB,QAAQ,SAAc8B,EAAaC,GACvE,IAAIxJ,EAAO5V,KACX,OAAO,IAAIsd,IAAmB,SAAUvD,EAASyB,GAC/Cza,GAAK+a,GAAYlG,EAAMmE,EAASyB,EACjC,IAAE1C,KAAKqG,EAAaC,EAE7B,GAAS,CAAExS,QAAQ,IAIf,WACSyQ,GAAuB5Q,WACpC,CAAM,MAAOrM,GAAsB,CAG3B6U,IACFA,GAAeoI,GAAwBE,GAE1C,CAGHnL,GAAE,CAAEzS,QAAQ,EAAM8M,aAAa,EAAM6S,MAAM,EAAM7O,OAAQsK,IAA8B,CACrFxB,QAAS+D,KAGXlI,GAAekI,GAAoBN,IAAS,GAC5CjB,GAAWiB,IE9RX,IAAAuC,GAAiB,CAAA,ECCbC,GAAY3c,GAEZ4c,GAHkBnf,GAGS,YAC3Bof,GAAiB/O,MAAM3P,UCJvB8B,GAAUxC,GACVyF,GAAYlD,GACZM,GAAoBJ,EACpByc,GAAY7Z,GAGZ8Z,GAFkBjY,GAES,YAE/BmY,GAAiB,SAAU7f,GACzB,IAAKqD,GAAkBrD,GAAK,OAAOiG,GAAUjG,EAAI2f,KAC5C1Z,GAAUjG,EAAI,eACd0f,GAAU1c,GAAQhD,GACzB,ECZIiB,GAAOT,EACPwF,GAAYjD,GACZ4G,GAAW1G,GACX8C,GAAcF,GACdga,GAAoBnY,GAEpBpE,GAAaC,UCNbtC,GAAOT,EACPmJ,GAAW5G,GACXkD,GAAYhD,GCFZnC,GAAON,GACPS,GAAO8B,EACP4G,GAAW1G,GACX8C,GAAcF,GACdia,GJGa,SAAU9f,GACzB,YAAcgE,IAAPhE,IAAqB0f,GAAU7O,QAAU7Q,GAAM4f,GAAeD,MAAc3f,EACrF,EIJI8N,GAAoBlG,GACpBnD,GAAgB0E,EAChB4W,GFCa,SAAU7b,EAAU8b,GACnC,IAAIC,EAAiB5e,UAAUkD,OAAS,EAAIsb,GAAkB3b,GAAY8b,EAC1E,GAAIha,GAAUia,GAAiB,OAAOtW,GAAS1I,GAAKgf,EAAgB/b,IACpE,MAAM,IAAIZ,GAAWyC,GAAY7B,GAAY,mBAC/C,EEJI2b,GAAoBrN,GACpB0N,GDLa,SAAUva,EAAUwa,EAAMhe,GACzC,IAAIie,EAAaC,EACjB1W,GAAShE,GACT,IAEE,KADAya,EAAcna,GAAUN,EAAU,WAChB,CAChB,GAAa,UAATwa,EAAkB,MAAMhe,EAC5B,OAAOA,CACR,CACDie,EAAcnf,GAAKmf,EAAaza,EACjC,CAAC,MAAOrF,GACP+f,GAAa,EACbD,EAAc9f,CACf,CACD,GAAa,UAAT6f,EAAkB,MAAMhe,EAC5B,GAAIke,EAAY,MAAMD,EAEtB,OADAzW,GAASyW,GACFje,CACT,ECXImB,GAAaC,UAEb+c,GAAS,SAAUC,EAAS9X,GAC9BvI,KAAKqgB,QAAUA,EACfrgB,KAAKuI,OAASA,CAChB,EAEI+X,GAAkBF,GAAOpf,UAE7Buf,GAAiB,SAAUC,EAAUC,EAAiBpU,GACpD,IAMI5G,EAAUib,EAAQjT,EAAOpJ,EAAQkE,EAAQkQ,EAAMkI,EAN/C/K,EAAOvJ,GAAWA,EAAQuJ,KAC1BgL,KAAgBvU,IAAWA,EAAQuU,YACnCC,KAAexU,IAAWA,EAAQwU,WAClCC,KAAiBzU,IAAWA,EAAQyU,aACpCC,KAAiB1U,IAAWA,EAAQ0U,aACpCxe,EAAK3B,GAAK6f,EAAiB7K,GAG3BoL,EAAO,SAAUC,GAEnB,OADIxb,GAAUua,GAAcva,EAAU,SAAUwb,GACzC,IAAIb,IAAO,EAAMa,EAC5B,EAEMC,EAAS,SAAUjf,GACrB,OAAI2e,GACFnX,GAASxH,GACF8e,EAAcxe,EAAGN,EAAM,GAAIA,EAAM,GAAI+e,GAAQze,EAAGN,EAAM,GAAIA,EAAM,KAChE8e,EAAcxe,EAAGN,EAAO+e,GAAQze,EAAGN,EAChD,EAEE,GAAI4e,EACFpb,EAAW+a,EAAS/a,cACf,GAAIqb,EACTrb,EAAW+a,MACN,CAEL,KADAE,EAASf,GAAkBa,IACd,MAAM,IAAIpd,GAAWyC,GAAY2a,GAAY,oBAE1D,GAAIZ,GAAsBc,GAAS,CACjC,IAAKjT,EAAQ,EAAGpJ,EAASuJ,GAAkB4S,GAAWnc,EAASoJ,EAAOA,IAEpE,IADAlF,EAAS2Y,EAAOV,EAAS/S,MACXlJ,GAAc+b,GAAiB/X,GAAS,OAAOA,EAC7D,OAAO,IAAI6X,IAAO,EACrB,CACD3a,EAAWoa,GAAYW,EAAUE,EAClC,CAGD,IADAjI,EAAOoI,EAAYL,EAAS/H,KAAOhT,EAASgT,OACnCkI,EAAO5f,GAAK0X,EAAMhT,IAAWsZ,MAAM,CAC1C,IACExW,EAAS2Y,EAAOP,EAAK1e,MACtB,CAAC,MAAO7B,GACP4f,GAAcva,EAAU,QAASrF,EAClC,CACD,GAAqB,iBAAVmI,GAAsBA,GAAUhE,GAAc+b,GAAiB/X,GAAS,OAAOA,CAC9F,CAAI,OAAO,IAAI6X,IAAO,EACtB,ECjEIX,GAFkBnf,GAES,YAC3B6gB,IAAe,EAEnB,IACE,IAAItP,GAAS,EACTuP,GAAqB,CACvB3I,KAAM,WACJ,MAAO,CAAEsG,OAAQlN,KAClB,EACDwP,OAAU,WACRF,IAAe,CAChB,GAEHC,GAAmB3B,IAAY,WAC7B,OAAOzf,IACX,EAEE2Q,MAAM2Q,KAAKF,IAAoB,WAAc,MAAM,CAAE,GACvD,CAAE,MAAOhhB,GAAsB,CAE/B,IAAAmhB,GAAiB,SAAUphB,EAAMqhB,GAC/B,IACE,IAAKA,IAAiBL,GAAc,OAAO,CAC5C,CAAC,MAAO/gB,GAAS,OAAO,CAAQ,CACjC,IAAIqhB,GAAoB,EACxB,IACE,IAAItX,EAAS,CAAA,EACbA,EAAOsV,IAAY,WACjB,MAAO,CACLhH,KAAM,WACJ,MAAO,CAAEsG,KAAM0C,GAAoB,EACpC,EAET,EACIthB,EAAKgK,EACT,CAAI,MAAO/J,GAAsB,CAC/B,OAAOqhB,CACT,ECvCIjH,GAA2Bla,GAI/BohB,GAFiC3e,GAAsDqY,cADrDvY,IAG0C,SAAU2d,GACpFhG,GAAyB7W,IAAI6c,GAAU1H,UAAKhV,GAAW,WAAY,GACrE,ICLI/C,GAAO8B,EACPiD,GAAY/C,GACZ+Z,GAA6BnX,GAC7ByU,GAAU5S,GACV+Y,GAAU7Y,GALNpH,GAUN,CAAEyP,OAAQ,UAAWQ,MAAM,EAAME,OAJOxH,IAIwC,CAChFtF,IAAK,SAAa6c,GAChB,IAAItO,EAAIlS,KACJ2hB,EAAa7E,GAA2Brb,EAAEyQ,GAC1C6H,EAAU4H,EAAW5H,QACrByB,EAASmG,EAAWnG,OACpBjT,EAAS6R,IAAQ,WACnB,IAAIwH,EAAkB9b,GAAUoM,EAAE6H,SAC9B8H,EAAS,GACTnL,EAAU,EACVoL,EAAY,EAChBvB,GAAQC,GAAU,SAAU3H,GAC1B,IAAIpL,EAAQiJ,IACRqL,GAAgB,EACpBD,IACA/gB,GAAK6gB,EAAiB1P,EAAG2G,GAASC,MAAK,SAAU7W,GAC3C8f,IACJA,GAAgB,EAChBF,EAAOpU,GAASxL,IACd6f,GAAa/H,EAAQ8H,GACxB,GAAErG,EACX,MACQsG,GAAa/H,EAAQ8H,EAC7B,IAEI,OADItZ,EAAOnI,OAAOob,EAAOjT,EAAOtG,OACzB0f,EAAW9I,OACnB,ICpCH,IAAIzG,GAAI9R,GAEJya,GAA6BhY,GAAsDqY,YACnFZ,GAA2B7U,GAC3BzB,GAAasD,EACbzD,GAAa2D,EACbgF,GAAgBzD,GAEhBoU,GAAyB7C,IAA4BA,GAAyBxZ,UAWlF,GAPAoR,GAAE,CAAErC,OAAQ,UAAWmD,OAAO,EAAMzC,OAAQsK,GAA4BiH,MAAM,GAAQ,CACpFC,MAAS,SAAU7C,GACjB,OAAOpf,KAAK8Y,UAAKhV,EAAWsb,EAC7B,IAIarb,GAAWyW,IAA2B,CACpD,IAAIpW,GAASF,GAAW,WAAWlD,UAAiB,MAChDqc,GAA8B,QAAMjZ,IACtCsI,GAAc2Q,GAAwB,QAASjZ,GAAQ,CAAEwI,QAAQ,GAErE,CCxBA,IACI7L,GAAO8B,EACPiD,GAAY/C,GACZ+Z,GAA6BnX,GAC7ByU,GAAU5S,GACV+Y,GAAU7Y,GALNpH,GAUN,CAAEyP,OAAQ,UAAWQ,MAAM,EAAME,OAJOxH,IAIwC,CAChFiZ,KAAM,SAAc1B,GAClB,IAAItO,EAAIlS,KACJ2hB,EAAa7E,GAA2Brb,EAAEyQ,GAC1CsJ,EAASmG,EAAWnG,OACpBjT,EAAS6R,IAAQ,WACnB,IAAIwH,EAAkB9b,GAAUoM,EAAE6H,SAClCwG,GAAQC,GAAU,SAAU3H,GAC1B9X,GAAK6gB,EAAiB1P,EAAG2G,GAASC,KAAK6I,EAAW5H,QAASyB,EACnE,GACA,IAEI,OADIjT,EAAOnI,OAAOob,EAAOjT,EAAOtG,OACzB0f,EAAW9I,OACnB,ICvBH,IACI9X,GAAO8B,EACPia,GAA6B/Z,GAFzBzC,GAON,CAAEyP,OAAQ,UAAWQ,MAAM,EAAME,OAJF9K,GAAsDyV,aAId,CACvEI,OAAQ,SAAgB2G,GACtB,IAAIR,EAAa7E,GAA2Brb,EAAEzB,MAE9C,OADAe,GAAK4gB,EAAWnG,YAAQ1X,EAAWqe,GAC5BR,EAAW9I,OACnB,ICZH,IAAIpP,GAAWnJ,GACX2D,GAAWpB,EACX8Y,GAAuB5Y,GCFvBqP,GAAI9R,GAIJya,GAA6BvT,GAAsD4T,YACnFgH,GDDa,SAAUlQ,EAAGhF,GAE5B,GADAzD,GAASyI,GACLjO,GAASiJ,IAAMA,EAAET,cAAgByF,EAAG,OAAOhF,EAC/C,IAAImV,EAAoB1G,GAAqBla,EAAEyQ,GAG/C,OADA6H,EADcsI,EAAkBtI,SACxB7M,GACDmV,EAAkBxJ,OAC3B,ECViBhW,EAM0B,WAK3CuP,GAAE,CAAErC,OAAQ,UAAWQ,MAAM,EAAME,OAAmBsK,IAA8B,CAClFhB,QAAS,SAAiB7M,GACxB,OAAOkV,GAAgGpiB,KAAMkN,EAC9G,ICfH,IAAAoV,GAAA,CAAA,EAAIvZ,GAAczI,EACdoJ,GAA0B7G,GAC1BoH,GAAuBlH,GACvB0G,GAAW9D,GACXnC,GAAkBgE,EAClBoM,GAAalM,GAKjB4a,GAAA7gB,EAAYsH,KAAgBW,GAA0BnJ,OAAOgiB,iBAAmB,SAA0BjZ,EAAGkZ,GAC3G/Y,GAASH,GAMT,IALA,IAIIjD,EAJAoc,EAAQjf,GAAgBgf,GACxB1X,EAAO8I,GAAW4O,GAClBne,EAASyG,EAAKzG,OACdoJ,EAAQ,EAELpJ,EAASoJ,GAAOxD,GAAqBxI,EAAE6H,EAAGjD,EAAMyE,EAAK2C,KAAUgV,EAAMpc,IAC5E,OAAOiD,CACT,EClBA,IAmDIoZ,GAnDAjZ,GAAWnJ,GACXqiB,GAAyB9f,GACzB4L,GAAc1L,GACdiI,GAAarF,GACbkQ,GAAOrO,GACPoB,GAAwBlB,GAKxBkb,GAAY,YACZC,GAAS,SACTC,GANY7Z,GAMS,YAErB8Z,GAAmB,WAAY,EAE/BC,GAAY,SAAUC,GACxB,MARO,IAQKJ,GATL,IASmBI,EAAnBC,KAAwCL,GATxC,GAUT,EAGIM,GAA4B,SAAUT,GACxCA,EAAgBU,MAAMJ,GAAU,KAChCN,EAAgBW,QAChB,IAAIC,EAAOZ,EAAgBa,aAAahjB,OAExC,OADAmiB,EAAkB,KACXY,CACT,EAyBIE,GAAkB,WACpB,IACEd,GAAkB,IAAIe,cAAc,WACxC,CAAI,MAAOrjB,GAAuB,CAzBH,IAIzBsjB,EAFAC,EACAC,EAuBJJ,GAAqC,oBAAZ9f,SACrBA,SAASkW,QAAU8I,GACjBS,GAA0BT,KA1B5BiB,EAAS/a,GAAsB,UAC/Bgb,EAAK,OAASf,GAAS,IAE3Bc,EAAOE,MAAMC,QAAU,OACvBjO,GAAKkC,YAAY4L,GAEjBA,EAAOI,IAAMrf,OAAOkf,IACpBF,EAAiBC,EAAOK,cAActgB,UACvBugB,OACfP,EAAeN,MAAMJ,GAAU,sBAC/BU,EAAeL,QACRK,EAAeQ,GAiBlBf,GAA0BT,IAE9B,IADA,IAAIre,EAASoK,GAAYpK,OAClBA,YAAiBmf,GAAgBZ,IAAWnU,GAAYpK,IAC/D,OAAOmf,IACT,EAEAxY,GAAW8X,KAAY,MAKvBqB,GAAiB5jB,OAAO6jB,QAAU,SAAgB9a,EAAGkZ,GACnD,IAAIja,EAQJ,OAPU,OAANe,GACFyZ,GAAiBH,IAAanZ,GAASH,GACvCf,EAAS,IAAIwa,GACbA,GAAiBH,IAAa,KAE9Bra,EAAOua,IAAYxZ,GACdf,EAASib,UACM1f,IAAf0e,EAA2Bja,EAASoa,GAAuBlhB,EAAE8G,EAAQia,EAC9E,EClFI1a,GAAkBxH,GAClB8jB,GAASvhB,GACTrC,GAAiBuC,GAA+CtB,EAEhE4iB,GAAcvc,GAAgB,eAC9B4X,GAAiB/O,MAAM3P,eAIS8C,IAAhC4b,GAAe2E,KACjB7jB,GAAekf,GAAgB2E,GAAa,CAC1CniB,cAAc,EACdD,MAAOmiB,GAAO,YCEdE,GAAmBC,GAAmCC,GCZ1DC,IAFYnkB,GAEY,WACtB,SAAS4jB,IAAmB,CAG5B,OAFAA,EAAEljB,UAAUyL,YAAc,KAEnBlM,OAAOmkB,eAAe,IAAIR,KAASA,EAAEljB,SAC9C,ICPIiG,GAAS3G,GACTyD,GAAalB,EACbkE,GAAWhE,GAEX4hB,GAA2Bnd,GAE3Bsb,GAHYnd,GAGS,YACrB3C,GAAUzC,OACVqkB,GAAkB5hB,GAAQhC,UAK9B6jB,GAAiBF,GAA2B3hB,GAAQ0hB,eAAiB,SAAUpb,GAC7E,IAAIa,EAASpD,GAASuC,GACtB,GAAIrC,GAAOkD,EAAQ2Y,IAAW,OAAO3Y,EAAO2Y,IAC5C,IAAIrW,EAActC,EAAOsC,YACzB,OAAI1I,GAAW0I,IAAgBtC,aAAkBsC,EACxCA,EAAYzL,UACZmJ,aAAkBnH,GAAU4hB,GAAkB,IACzD,EFpBI1kB,GAAQI,EACRyD,GAAalB,EACboB,GAAWlB,EAEX2hB,GAAiBld,GACjBkF,GAAgBhF,GAIhB+X,GAHkBxW,GAGS,YAC3B6b,IAAyB,EAOzB,GAAGha,OAGC,SAFN0Z,GAAgB,GAAG1Z,SAIjByZ,GAAoCG,GAAeA,GAAeF,QACxBjkB,OAAOS,YAAWsjB,GAAoBC,IAHlDO,IAAyB,GAO3D,IAAIC,IAA0B9gB,GAASqgB,KAAsBpkB,IAAM,WACjE,IAAIS,EAAO,CAAA,EAEX,OAAO2jB,GAAkB7E,IAAU1e,KAAKJ,KAAUA,CACpD,IAEIokB,KAAwBT,GAAoB,IAK3CvgB,GAAWugB,GAAkB7E,MAChC/S,GAAc4X,GAAmB7E,IAAU,WACzC,OAAOzf,IACX,IAGA,IAAAglB,GAAiB,CACfV,kBAAmBA,GACnBQ,uBAAwBA,IG9CtBR,GAAoBhkB,GAAuCgkB,kBAC3DF,GAASvhB,GACTd,GAA2BgB,EAC3BqS,GAAiBzP,GACjB6Z,GAAYhY,GAEZyd,GAAa,WAAc,OAAOjlB,MCNlCoS,GAAI9R,GACJS,GAAO8B,EAGPkB,GAAayD,EACb0d,GDGa,SAAUC,EAAqBC,EAAM3M,EAAM4M,GAC1D,IAAIrU,EAAgBoU,EAAO,YAI3B,OAHAD,EAAoBnkB,UAAYojB,GAAOE,GAAmB,CAAE7L,KAAM1W,KAA2BsjB,EAAiB5M,KAC9GrD,GAAe+P,EAAqBnU,GAAe,GACnDwO,GAAUxO,GAAiBiU,GACpBE,CACT,ECRIT,GAAiBzb,GACjBgM,GAAiB9L,GACjBiM,GAAiB9C,GACjBpI,GAA8ByQ,GAC9BjO,GAAgBoG,GAEhB0M,GAAYtD,GAGZoJ,GAZe3f,GAYqB4E,OACpCqB,GAbejG,GAa2BkE,aAC1Cya,GAJgBiB,GAIkBjB,kBAClCQ,GALgBS,GAKuBT,uBACvCrF,GARkB7M,GAQS,YAC3B4S,GAAO,OACPC,GAAS,SACTC,GAAU,UAEVT,GAAa,WAAc,OAAOjlB,MAEtC2lB,GAAiB,SAAUC,EAAUR,EAAMD,EAAqB1M,EAAMoN,EAASC,EAAQC,GACrFb,GAA0BC,EAAqBC,EAAM3M,GAErD,IAqBIuN,EAA0BC,EAASC,EArBnCC,EAAqB,SAAUC,GACjC,GAAIA,IAASP,GAAWQ,EAAiB,OAAOA,EAChD,IAAKvB,IAA0BsB,GAAQA,KAAQE,EAAmB,OAAOA,EAAkBF,GAE3F,OAAQA,GACN,KAAKZ,GACL,KAAKC,GACL,KAAKC,GAAS,OAAO,WAAqB,OAAO,IAAIP,EAAoBnlB,KAAMomB,IAGjF,OAAO,WAAc,OAAO,IAAIjB,EAAoBnlB,KAAM,CAC9D,EAEMgR,EAAgBoU,EAAO,YACvBmB,GAAwB,EACxBD,EAAoBV,EAAS5kB,UAC7BwlB,EAAiBF,EAAkB7G,KAClC6G,EAAkB,eAClBT,GAAWS,EAAkBT,GAC9BQ,GAAmBvB,IAA0B0B,GAAkBL,EAAmBN,GAClFY,EAA6B,UAATrB,GAAmBkB,EAAkBI,SAA4BF,EA+BzF,GA3BIC,IACFT,EAA2BtB,GAAe+B,EAAkB1lB,KAAK,IAAI6kB,OACpCrlB,OAAOS,WAAaglB,EAAyBvN,OAC5DiM,GAAesB,KAA8B1B,KACvDrP,GACFA,GAAe+Q,EAA0B1B,IAC/BvgB,GAAWiiB,EAAyBvG,MAC9C/S,GAAcsZ,EAA0BvG,GAAUwF,KAItD7P,GAAe4Q,EAA0BhV,GAAe,IAMxDsU,IAAwBO,IAAYJ,IAAUe,GAAkBA,EAAeze,OAAS0d,KAC1E7Z,GACd1B,GAA4Boc,EAAmB,OAAQb,KAEvDc,GAAwB,EACxBF,EAAkB,WAAoB,OAAOtlB,GAAKylB,EAAgBxmB,SAKlE6lB,EAMF,GALAI,EAAU,CACRpE,OAAQsE,EAAmBV,IAC3B3a,KAAMgb,EAASO,EAAkBF,EAAmBX,IACpDkB,QAASP,EAAmBT,KAE1BK,EAAQ,IAAKG,KAAOD,GAClBnB,IAA0ByB,KAA2BL,KAAOI,KAC9D5Z,GAAc4Z,EAAmBJ,EAAKD,EAAQC,SAE3C9T,GAAE,CAAErC,OAAQqV,EAAMlS,OAAO,EAAMzC,OAAQqU,IAA0ByB,GAAyBN,GASnG,OAL4BK,EAAkB7G,MAAc4G,GAC1D3Z,GAAc4Z,EAAmB7G,GAAU4G,EAAiB,CAAEte,KAAM8d,IAEtErG,GAAU4F,GAAQiB,EAEXJ,CACT,EClGAU,GAAiB,SAAU1kB,EAAO8c,GAChC,MAAO,CAAE9c,MAAOA,EAAO8c,KAAMA,EAC/B,ECJIvb,GAAkBlD,EAClBsmB,GPgBa,SAAUvgB,GACzBqZ,GAAe2E,IAAahe,IAAO,CACrC,EOjBImZ,GAAYzc,GACZ4Z,GAAsBhX,GACtBnF,GAAiBgH,GAA+C/F,EAChEolB,GAAiBnf,GACjBif,GAAyB1d,GAEzBF,GAAcuJ,EAEdwU,GAAiB,iBACjB1J,GAAmBT,GAAoBjS,IACvCoB,GAAmB6Q,GAAoBlR,UAAUqb,IAYrDC,GAAiBF,GAAelW,MAAO,SAAS,SAAUqW,EAAU/G,GAClE7C,GAAiBpd,KAAM,CACrB2L,KAAMmb,GACN/W,OAAQvM,GAAgBwjB,GACxBvZ,MAAO,EACPwS,KAAMA,GAIV,IAAG,WACD,IAAI9U,EAAQW,GAAiB9L,MACzB+P,EAAS5E,EAAM4E,OACftC,EAAQtC,EAAMsC,QAClB,IAAKsC,GAAUtC,GAASsC,EAAO1L,OAE7B,OADA8G,EAAM4E,YAASjM,EACR6iB,QAAuB7iB,GAAW,GAE3C,OAAQqH,EAAM8U,MACZ,IAAK,OAAQ,OAAO0G,GAAuBlZ,GAAO,GAClD,IAAK,SAAU,OAAOkZ,GAAuB5W,EAAOtC,IAAQ,GAC5D,OAAOkZ,GAAuB,CAAClZ,EAAOsC,EAAOtC,KAAS,EAC1D,GAAG,UAKCoU,GAASrC,GAAUyH,UAAYzH,GAAU7O,MAQ7C,GALAiW,GAAiB,QACjBA,GAAiB,UACjBA,GAAiB,WAGD7d,IAA+B,WAAhB8Y,GAAO9Z,KAAmB,IACvDvH,GAAeqhB,GAAQ,OAAQ,CAAE5f,MAAO,UAC1C,CAAE,MAAO7B,IC5DT,IAAI0C,GAAUxC,GAEV4E,GAAUR,OAEdjC,GAAiB,SAAUuB,GACzB,GAA0B,WAAtBlB,GAAQkB,GAAwB,MAAM,IAAIX,UAAU,6CACxD,OAAO6B,GAAQlB,EACjB,ECPIxB,GAAclC,EACd8M,GAAsBvK,GACtBJ,GAAWM,GACXO,GAAyBqC,EAEzBuhB,GAAS1kB,GAAY,GAAG0kB,QACxBC,GAAa3kB,GAAY,GAAG2kB,YAC5BzkB,GAAcF,GAAY,GAAGG,OAE7BmL,GAAe,SAAUsZ,GAC3B,OAAO,SAAUpZ,EAAOqZ,GACtB,IAGIC,EAAOC,EAHPhT,EAAI9R,GAASa,GAAuB0K,IACpCwZ,EAAWpa,GAAoBia,GAC/BI,EAAOlT,EAAElQ,OAEb,OAAImjB,EAAW,GAAKA,GAAYC,EAAaL,EAAoB,QAAKtjB,GACtEwjB,EAAQH,GAAW5S,EAAGiT,IACP,OAAUF,EAAQ,OAAUE,EAAW,IAAMC,IACtDF,EAASJ,GAAW5S,EAAGiT,EAAW,IAAM,OAAUD,EAAS,MAC3DH,EACEF,GAAO3S,EAAGiT,GACVF,EACFF,EACE1kB,GAAY6R,EAAGiT,EAAUA,EAAW,GACVD,EAAS,OAAlCD,EAAQ,OAAU,IAA0B,KACzD,CACA,EC1BIJ,GD4Ba,CAGfQ,OAAQ5Z,IAAa,GAGrBoZ,OAAQpZ,IAAa,IClC+BoZ,OAClDzkB,GAAWI,GACX8Z,GAAsB5Z,GACtB8jB,GAAiBlhB,GACjBghB,GAAyBnf,GAEzBmgB,GAAkB,kBAClBvK,GAAmBT,GAAoBjS,IACvCoB,GAAmB6Q,GAAoBlR,UAAUkc,IAIrDd,GAAeniB,OAAQ,UAAU,SAAUsiB,GACzC5J,GAAiBpd,KAAM,CACrB2L,KAAMgc,GACNhY,OAAQlN,GAASukB,GACjBvZ,MAAO,GAIX,IAAG,WACD,IAGIma,EAHAzc,EAAQW,GAAiB9L,MACzB2P,EAASxE,EAAMwE,OACflC,EAAQtC,EAAMsC,MAElB,OAAIA,GAASkC,EAAOtL,OAAesiB,QAAuB7iB,GAAW,IACrE8jB,EAAQV,GAAOvX,EAAQlC,GACvBtC,EAAMsC,OAASma,EAAMvjB,OACdsiB,GAAuBiB,GAAO,GACvC,IC7BA,IAAAC,GAAA,CAAA1hB,QAAA,CAAA,GAAA2hB,GAAA,CAAA,EAAIta,GAAkBlN,GAClBsN,GAAoB/K,GACpB+N,GAAiB7N,GAEjBgP,GAASpB,MACTrD,GAAMvN,KAAKuN,ICJXxK,GAAUxC,EACVkD,GAAkBX,EAClBklB,GAAuBhlB,GAAsDtB,EAC7EqU,GDGa,SAAUxM,EAAG0e,EAAOC,GAMnC,IALA,IAAI5jB,EAASuJ,GAAkBtE,GAC3B8J,EAAI5F,GAAgBwa,EAAO3jB,GAC3B6jB,EAAM1a,QAAwB1J,IAARmkB,EAAoB5jB,EAAS4jB,EAAK5jB,GACxDkE,EAASwJ,GAAOzE,GAAI4a,EAAM9U,EAAG,IAC7BjG,EAAI,EACDiG,EAAI8U,EAAK9U,IAAKjG,IAAKyD,GAAerI,EAAQ4E,EAAG7D,EAAE8J,IAEtD,OADA7K,EAAOlE,OAAS8I,EACT5E,CACT,ECVI4f,GAA+B,iBAAVzoB,QAAsBA,QAAUa,OAAOsO,oBAC5DtO,OAAOsO,oBAAoBnP,QAAU,GAWzCooB,GAAArmB,EAAmB,SAA6B3B,GAC9C,OAAOqoB,IAA+B,WAAhBrlB,GAAQhD,GAVX,SAAUA,GAC7B,IACE,OAAOioB,GAAqBjoB,EAC7B,CAAC,MAAOM,GACP,OAAO0V,GAAWqS,GACnB,CACH,CAKMC,CAAetoB,GACfioB,GAAqBvkB,GAAgB1D,GAC3C,ECrBA,IAEAuoB,GAFY/nB,GAEW,WACrB,GAA0B,mBAAfgoB,YAA2B,CACpC,IAAIC,EAAS,IAAID,YAAY,GAEzB/nB,OAAOioB,aAAaD,IAAShoB,OAAOC,eAAe+nB,EAAQ,IAAK,CAAEtmB,MAAO,GAC9E,CACH,ICTI/B,GAAQI,EACR2D,GAAWpB,EACXC,GAAUC,EACV0lB,GAA8B9iB,GAG9B+iB,GAAgBnoB,OAAOioB,aAK3BG,GAJ0BzoB,IAAM,WAAcwoB,GAAc,EAAG,KAItBD,GAA+B,SAAsB3oB,GAC5F,QAAKmE,GAASnE,OACV2oB,IAA+C,gBAAhB3lB,GAAQhD,OACpC4oB,IAAgBA,GAAc5oB,IACvC,EAAI4oB,GCbJE,IAFYtoB,GAEY,WAEtB,OAAOC,OAAOioB,aAAajoB,OAAOsoB,kBAAkB,CAAA,GACtD,ICLIzW,GAAI9R,GACJkC,GAAcK,EACdmI,GAAajI,GACbkB,GAAW0B,EACXsB,GAASO,GACThH,GAAiBkH,GAA+CjG,EAChEsN,GAA4B9F,GAC5B6f,GAAoC3f,GACpCqf,GAAelW,GAEfyW,GAAWjW,GAEXkW,IAAW,EACXC,GAJMtO,GAIS,QACfzT,GAAK,EAELgiB,GAAc,SAAUppB,GAC1BU,GAAeV,EAAImpB,GAAU,CAAEhnB,MAAO,CACpCknB,SAAU,IAAMjiB,KAChBkiB,SAAU,CAAE,IAEhB,EA4DIC,GAAOC,GAAAnjB,QAAiB,CAC1BojB,OA3BW,WACXF,GAAKE,OAAS,aACdP,IAAW,EACX,IAAIna,EAAsBE,GAA0BtN,EAChD+nB,EAAShnB,GAAY,GAAGgnB,QACxB7oB,EAAO,CAAA,EACXA,EAAKsoB,IAAY,EAGbpa,EAAoBlO,GAAM0D,SAC5B0K,GAA0BtN,EAAI,SAAU3B,GAEtC,IADA,IAAIyI,EAASsG,EAAoB/O,GACxB0O,EAAI,EAAGnK,EAASkE,EAAOlE,OAAQmK,EAAInK,EAAQmK,IAClD,GAAIjG,EAAOiG,KAAOya,GAAU,CAC1BO,EAAOjhB,EAAQiG,EAAG,GAClB,KACD,CACD,OAAOjG,CACf,EAEI6J,GAAE,CAAErC,OAAQ,SAAUQ,MAAM,EAAME,QAAQ,GAAQ,CAChD5B,oBAAqBia,GAAkCrnB,IAG7D,EAIEgoB,QA5DY,SAAU3pB,EAAIskB,GAE1B,IAAKngB,GAASnE,GAAK,MAAoB,iBAANA,EAAiBA,GAAmB,iBAANA,EAAiB,IAAM,KAAOA,EAC7F,IAAKmH,GAAOnH,EAAImpB,IAAW,CAEzB,IAAKT,GAAa1oB,GAAK,MAAO,IAE9B,IAAKskB,EAAQ,MAAO,IAEpB8E,GAAYppB,EAEb,CAAC,OAAOA,EAAGmpB,IAAUE,QACxB,EAiDEO,YA/CgB,SAAU5pB,EAAIskB,GAC9B,IAAKnd,GAAOnH,EAAImpB,IAAW,CAEzB,IAAKT,GAAa1oB,GAAK,OAAO,EAE9B,IAAKskB,EAAQ,OAAO,EAEpB8E,GAAYppB,EAEb,CAAC,OAAOA,EAAGmpB,IAAUG,QACxB,EAsCEO,SAnCa,SAAU7pB,GAEvB,OADIipB,IAAYC,IAAYR,GAAa1oB,KAAQmH,GAAOnH,EAAImpB,KAAWC,GAAYppB,GAC5EA,CACT,GAmCAkL,GAAWie,KAAY,oBCxFnBllB,GAAazD,EACb2D,GAAWpB,EACXoS,GAAiBlS,GCFjBqP,GAAI9R,GACJX,GAASkD,EACTL,GAAcO,EACdqM,GAAWzJ,GACX+G,GAAgBlF,GAChBoiB,GAAyBliB,GACzB6Y,GAAUtX,GACVqM,GAAanM,GACbpF,GAAauO,EACbnP,GAAoBwX,EACpB1W,GAAW6O,EACX5S,GAAQ0S,EACR2O,GAA8BrF,GAC9B9G,GAAiBmQ,GACjBsE,GDTa,SAAU7b,EAAO8b,EAAOC,GACvC,IAAIC,EAAWC,EAUf,OAPEhV,IAEAlR,GAAWimB,EAAYF,EAAMrd,cAC7Bud,IAAcD,GACd9lB,GAASgmB,EAAqBD,EAAUhpB,YACxCipB,IAAuBF,EAAQ/oB,WAC/BiU,GAAejH,EAAOic,GACjBjc,CACT,EEjBItB,GAAgBpM,GCAhBM,GAAON,GAEPiD,GAAgBR,EAChBgE,GAAWpB,GACXiI,GAAoBpG,GACpB2K,GAAqBzK,GAErBhB,GANc7D,EAMK,GAAG6D,MAGtBoH,GAAe,SAAUpC,GAC3B,IAAIwe,EAAkB,IAATxe,EACTye,EAAqB,IAATze,EACZ0e,EAAmB,IAAT1e,EACV2e,EAAoB,IAAT3e,EACX4e,EAAyB,IAAT5e,EAChB6e,EAA4B,IAAT7e,EACnB8e,EAAoB,IAAT9e,GAAc4e,EAC7B,OAAO,SAAUtc,EAAOyc,EAAY7U,EAAM8U,GASxC,IARA,IAOIzoB,EAAOsG,EAPPe,EAAIvC,GAASiH,GACbpO,EAAO2D,GAAc+F,GACrBjF,EAASuJ,GAAkBhO,GAC3B+qB,EAAgB/pB,GAAK6pB,EAAY7U,GACjCnI,EAAQ,EACR2W,EAASsG,GAAkBvY,GAC3BpC,EAASma,EAAS9F,EAAOpW,EAAO3J,GAAU8lB,GAAaI,EAAmBnG,EAAOpW,EAAO,QAAKlK,EAE3FO,EAASoJ,EAAOA,IAAS,IAAI+c,GAAY/c,KAAS7N,KAEtD2I,EAASoiB,EADT1oB,EAAQrC,EAAK6N,GACiBA,EAAOnE,GACjCoC,GACF,GAAIwe,EAAQna,EAAOtC,GAASlF,OACvB,GAAIA,EAAQ,OAAQmD,GACvB,KAAK,EAAG,OAAO,EACf,KAAK,EAAG,OAAOzJ,EACf,KAAK,EAAG,OAAOwL,EACf,KAAK,EAAG/G,GAAKqJ,EAAQ9N,QAChB,OAAQyJ,GACb,KAAK,EAAG,OAAO,EACf,KAAK,EAAGhF,GAAKqJ,EAAQ9N,GAI3B,OAAOqoB,GAAiB,EAAIF,GAAWC,EAAWA,EAAWta,CACjE,CACA,EAEA6a,GAAiB,CAGfzW,QAASrG,GAAa,GAGtB+c,IAAK/c,GAAa,GAGlBgd,OAAQhd,GAAa,GAGrBid,KAAMjd,GAAa,GAGnBkd,MAAOld,GAAa,GAGpBmd,KAAMnd,GAAa,GAGnBod,UAAWpd,GAAa,GAGxBqd,aAAcrd,GAAa,ICvEzBtL,GAAclC,EACd8qB,GFCa,SAAUrb,EAAQgU,EAAK1X,GACtC,IAAK,IAAIhG,KAAO0d,EAAKrX,GAAcqD,EAAQ1J,EAAK0d,EAAI1d,GAAMgG,GAC1D,OAAO0D,CACT,EEHI2Z,GAAc3mB,GAA0C2mB,YACxDpU,GAAa3P,GACb8D,GAAWjC,GACXrE,GAAoBuE,EACpBzD,GAAWgF,EACXsX,GAAUpX,GAEVlC,GAAS0T,GAGTyC,GAFsBtK,GAEiBpI,IACvC2gB,GAHsBvY,GAGuBrH,UAC7Cwf,GANuB3Y,GAMK2Y,KAC5BC,GAPuB5Y,GAOU4Y,UACjC1B,GAAShnB,GAAY,GAAGgnB,QACxBtiB,GAAK,EAGLokB,GAAsB,SAAUngB,GAClC,OAAOA,EAAMogB,SAAWpgB,EAAMogB,OAAS,IAAIC,GAC7C,EAEIA,GAAsB,WACxBxrB,KAAK0mB,QAAU,EACjB,EAEI+E,GAAqB,SAAUjlB,EAAOH,GACxC,OAAO4kB,GAAKzkB,EAAMkgB,SAAS,SAAU5mB,GACnC,OAAOA,EAAG,KAAOuG,CACrB,GACA,EAEAmlB,GAAoBxqB,UAAY,CAC9BP,IAAK,SAAU4F,GACb,IAAImS,EAAQiT,GAAmBzrB,KAAMqG,GACrC,GAAImS,EAAO,OAAOA,EAAM,EACzB,EACD7N,IAAK,SAAUtE,GACb,QAASolB,GAAmBzrB,KAAMqG,EACnC,EACDqE,IAAK,SAAUrE,EAAKpE,GAClB,IAAIuW,EAAQiT,GAAmBzrB,KAAMqG,GACjCmS,EAAOA,EAAM,GAAKvW,EACjBjC,KAAK0mB,QAAQhgB,KAAK,CAACL,EAAKpE,GAC9B,EACDypB,OAAU,SAAUrlB,GAClB,IAAIoH,EAAQyd,GAAUlrB,KAAK0mB,SAAS,SAAU5mB,GAC5C,OAAOA,EAAG,KAAOuG,CACvB,IAEI,OADKoH,GAAO+b,GAAOxpB,KAAK0mB,QAASjZ,EAAO,MAC9BA,CACX,GAGH,IAAAke,GAAiB,CACfC,eAAgB,SAAU3M,EAASjD,EAAkBkO,EAAQ2B,GAC3D,IAAI5P,EAAcgD,GAAQ,SAAUrJ,EAAM4K,GACxClL,GAAWM,EAAML,GACjB6H,GAAiBxH,EAAM,CACrBjK,KAAMqQ,EACN9U,GAAIA,KACJqkB,YAAQznB,IAELX,GAAkBqd,IAAWD,GAAQC,EAAU5K,EAAKiW,GAAQ,CAAEjW,KAAMA,EAAMgL,WAAYsJ,GACjG,IAEQ3U,EAAY0G,EAAYjb,UAExB8K,EAAmBuf,GAAuBrP,GAE1C8P,EAAS,SAAUlW,EAAMvP,EAAKpE,GAChC,IAAIkJ,EAAQW,EAAiB8J,GACzBrG,EAAOma,GAAYjgB,GAASpD,IAAM,GAGtC,OAFa,IAATkJ,EAAe+b,GAAoBngB,GAAOT,IAAIrE,EAAKpE,GAClDsN,EAAKpE,EAAMjE,IAAMjF,EACf2T,CACb,EAiDI,OA/CAwV,GAAe7V,EAAW,CAIxBmW,OAAU,SAAUrlB,GAClB,IAAI8E,EAAQW,EAAiB9L,MAC7B,IAAKiE,GAASoC,GAAM,OAAO,EAC3B,IAAIkJ,EAAOma,GAAYrjB,GACvB,OAAa,IAATkJ,EAAsB+b,GAAoBngB,GAAe,OAAE9E,GACxDkJ,GAAQtI,GAAOsI,EAAMpE,EAAMjE,YAAcqI,EAAKpE,EAAMjE,GAC5D,EAIDyD,IAAK,SAAatE,GAChB,IAAI8E,EAAQW,EAAiB9L,MAC7B,IAAKiE,GAASoC,GAAM,OAAO,EAC3B,IAAIkJ,EAAOma,GAAYrjB,GACvB,OAAa,IAATkJ,EAAsB+b,GAAoBngB,GAAOR,IAAItE,GAClDkJ,GAAQtI,GAAOsI,EAAMpE,EAAMjE,GACnC,IAGHkkB,GAAe7V,EAAW2U,EAAS,CAGjCzpB,IAAK,SAAa4F,GAChB,IAAI8E,EAAQW,EAAiB9L,MAC7B,GAAIiE,GAASoC,GAAM,CACjB,IAAIkJ,EAAOma,GAAYrjB,GACvB,OAAa,IAATkJ,EAAsB+b,GAAoBngB,GAAO1K,IAAI4F,GAClDkJ,EAAOA,EAAKpE,EAAMjE,SAAMpD,CAChC,CACF,EAGD4G,IAAK,SAAarE,EAAKpE,GACrB,OAAO6pB,EAAO9rB,KAAMqG,EAAKpE,EAC1B,GACC,CAGFqW,IAAK,SAAarW,GAChB,OAAO6pB,EAAO9rB,KAAMiC,GAAO,EAC5B,IAGIga,CACR,IHhHc,SAAUD,EAAkBiD,EAAS8M,GACpD,IAAI7B,GAA8C,IAArClO,EAAiB3N,QAAQ,OAClC2d,GAAgD,IAAtChQ,EAAiB3N,QAAQ,QACnCwd,EAAQ3B,EAAS,MAAQ,MACzB+B,EAAoBtsB,GAAOqc,GAC3BkQ,EAAkBD,GAAqBA,EAAkBjrB,UACzDib,EAAcgQ,EACdE,EAAW,CAAA,EAEXC,EAAY,SAAUlG,GACxB,IAAImG,EAAwB7pB,GAAY0pB,EAAgBhG,IACxDxZ,GAAcwf,EAAiBhG,EACrB,QAARA,EAAgB,SAAajkB,GAE3B,OADAoqB,EAAsBrsB,KAAgB,IAAViC,EAAc,EAAIA,GACvCjC,IACf,EAAkB,WAARkmB,EAAmB,SAAU7f,GAC/B,QAAO2lB,IAAY/nB,GAASoC,KAAegmB,EAAsBrsB,KAAc,IAARqG,EAAY,EAAIA,EACxF,EAAW,QAAR6f,EAAgB,SAAa7f,GAC/B,OAAO2lB,IAAY/nB,GAASoC,QAAOvC,EAAYuoB,EAAsBrsB,KAAc,IAARqG,EAAY,EAAIA,EAC5F,EAAW,QAAR6f,EAAgB,SAAa7f,GAC/B,QAAO2lB,IAAY/nB,GAASoC,KAAegmB,EAAsBrsB,KAAc,IAARqG,EAAY,EAAIA,EAC/F,EAAU,SAAaA,EAAKpE,GAEpB,OADAoqB,EAAsBrsB,KAAc,IAARqG,EAAY,EAAIA,EAAKpE,GAC1CjC,IACR,EAEP,EASE,GAPcoP,GACZ4M,GACCjY,GAAWkoB,MAAwBD,GAAWE,EAAgB/X,UAAYjU,IAAM,YAC/E,IAAI+rB,GAAoBvF,UAAUjO,MACxC,MAKIwD,EAAc8P,EAAOH,eAAe3M,EAASjD,EAAkBkO,EAAQ2B,GACvEjC,GAAuBL,cAClB,GAAIna,GAAS4M,GAAkB,GAAO,CAC3C,IAAIsQ,EAAW,IAAIrQ,EAEfsQ,EAAiBD,EAAST,GAAOG,EAAU,CAAE,GAAI,EAAG,KAAOM,EAE3DE,EAAuBtsB,IAAM,WAAcosB,EAAS3hB,IAAI,EAAG,IAG3D8hB,EAAmBlL,IAA4B,SAAUf,GAAY,IAAIyL,EAAkBzL,EAAU,IAErGkM,GAAcV,GAAW9rB,IAAM,WAIjC,IAFA,IAAIysB,EAAY,IAAIV,EAChBxe,EAAQ,EACLA,KAASkf,EAAUd,GAAOpe,EAAOA,GACxC,OAAQkf,EAAUhiB,KAAK,EAC7B,IAES8hB,KACHxQ,EAAcgD,GAAQ,SAAU6K,EAAOtJ,GACrClL,GAAWwU,EAAOoC,GAClB,IAAItW,EAAOiU,GAAkB,IAAIoC,EAAqBnC,EAAO7N,GAE7D,OADK9Y,GAAkBqd,IAAWD,GAAQC,EAAU5K,EAAKiW,GAAQ,CAAEjW,KAAMA,EAAMgL,WAAYsJ,IACpFtU,CACf,KACkB5U,UAAYkrB,EACxBA,EAAgBzf,YAAcwP,IAG5BuQ,GAAwBE,KAC1BN,EAAU,UACVA,EAAU,OACVlC,GAAUkC,EAAU,SAGlBM,GAAcH,IAAgBH,EAAUP,GAGxCG,GAAWE,EAAgB5V,cAAc4V,EAAgB5V,KAC9D,CAED6V,EAASnQ,GAAoBC,EAC7B7J,GAAE,CAAEzS,QAAQ,EAAM8M,aAAa,EAAMgE,OAAQwL,IAAgBgQ,GAAqBE,GAElF/W,GAAe6G,EAAaD,GAEvBgQ,GAASD,EAAOa,UAAU3Q,EAAaD,EAAkBkO,EAGhE,EInGA2C,CAAW,WAAW,SAAUC,GAC9B,OAAO,WAAqB,OAAOA,EAAK9sB,KAAMmB,UAAUkD,OAASlD,UAAU,QAAK2C,EAAW,CAC7F,GANqBjB,ICCrB,aCCIkqB,GAFwBzsB,GAEU,QAAQysB,UAC1CC,GAAwBD,IAAaA,GAAUtgB,aAAesgB,GAAUtgB,YAAYzL,UAExFisB,GAAiBD,KAA0BzsB,OAAOS,eAAY8C,EAAYkpB,GCNtErtB,GAASW,EACT4sB,GFCa,CACfC,YAAa,EACbC,oBAAqB,EACrBC,aAAc,EACdC,eAAgB,EAChBC,YAAa,EACbC,cAAe,EACfC,aAAc,EACdC,qBAAsB,EACtBC,SAAU,EACVC,kBAAmB,EACnBC,eAAgB,EAChBC,gBAAiB,EACjBC,kBAAmB,EACnBC,UAAW,EACXC,cAAe,EACfC,aAAc,EACdC,SAAU,EACVC,iBAAkB,EAClBC,OAAQ,EACRC,YAAa,EACbC,cAAe,EACfC,cAAe,EACfC,eAAgB,EAChBC,aAAc,EACdC,cAAe,EACfC,iBAAkB,EAClBC,iBAAkB,EAClBC,eAAgB,EAChBC,iBAAkB,EAClBC,cAAe,EACfC,UAAW,GE/BTjC,GAAwBjqB,GACxBmsB,GAAuBvpB,GACvBuE,GAA8B1C,GAC9B4N,GAAiB1N,GAGjB+X,GAFkBxW,GAES,YAC3BkmB,GAAcD,GAAqBrN,OAEnCuN,GAAkB,SAAUC,EAAqBC,GACnD,GAAID,EAAqB,CAEvB,GAAIA,EAAoB5P,MAAc0P,GAAa,IACjDjlB,GAA4BmlB,EAAqB5P,GAAU0P,GAC5D,CAAC,MAAO/uB,GACPivB,EAAoB5P,IAAY0P,EACjC,CAED,GADA/Z,GAAeia,EAAqBC,GAAiB,GACjDpC,GAAaoC,GAAkB,IAAK,IAAI9c,KAAe0c,GAEzD,GAAIG,EAAoB7c,KAAiB0c,GAAqB1c,GAAc,IAC1EtI,GAA4BmlB,EAAqB7c,EAAa0c,GAAqB1c,GACpF,CAAC,MAAOpS,GACPivB,EAAoB7c,GAAe0c,GAAqB1c,EACzD,CAEJ,CACH,EAEA,IAAK,IAAI8c,MAAmBpC,GAC1BkC,GAAgBzvB,GAAO2vB,KAAoB3vB,GAAO2vB,IAAiBtuB,UAAWsuB,ICmPzE,SAASC,GAAuBC,EAAUrkB,EAAO8U,EAAMxe,GAC1D,GAAa,MAATwe,IAAiBxe,EAAG,MAAM,IAAI4B,UAAU,iDAC5C,GAAqB,mBAAV8H,EAAuBqkB,IAAarkB,IAAU1J,GAAK0J,EAAMR,IAAI6kB,GAAW,MAAM,IAAInsB,UAAU,4EACvG,MAAgB,MAAT4c,EAAexe,EAAa,MAATwe,EAAexe,EAAEV,KAAKyuB,GAAY/tB,EAAIA,EAAEQ,MAAQkJ,EAAM1K,IAAI+uB,EACxF,CDpPAJ,GAAgBpC,GAAuB,gBE7BvC,IAAMyC,GAAmB,cAcnBC,GAA0C,CAC9CC,SAAS,EAGTC,KAAM,SAACC,EAAY5tB,EAAO6tB,GAAS,MACjC,GAAAnhB,OACG1M,EAAK0M,OAAAA,OAAMmhB,EAAUC,OAAO,QAAO,GAGpCC,GAAyB,CAC7BC,UAAW,MACXC,UAAW,CACT,CACEnoB,KAAM,SACNsE,QAAS,CACP8jB,OAAQ,CAAC,EAAG,OAMdC,GAAiC,CACrCC,sBAAqB,WAAa,IAAZnjB,EAAC/L,UAAAkD,OAAA,QAAAP,IAAA3C,UAAA,GAAAA,UAAA,GAAG,EAAGmvB,EAACnvB,UAAAkD,OAAA,QAAAP,IAAA3C,UAAA,GAAAA,UAAA,GAAG,EAC/B,MAAO,CACLovB,MAAO,EACPC,OAAQ,EACRC,IAAKH,EACLI,MAAOxjB,EACPyjB,OAAQL,EACRM,KAAM1jB,EACNA,EAAAA,EACAojB,EAAAA,EACAO,OAAQ,WAAO,EAEnB,GAGmBC,GAAO,WAe1B,SAAAA,EAAYC,gGAAoBC,MAAAF,gBAdhC9wB,KAAI+H,KAAG,UAeL/H,KAAK+wB,SAAWA,EAChB/wB,KAAKixB,KAAO,KACZjxB,KAAKkxB,eAAiB,KACtBlxB,KAAKqM,QAAUqjB,GACf1vB,KAAKmxB,kBAAmB,CAC1B,WAqEC,SArEAL,KAAA,CAAA,CAAAzqB,IAAA,QAAApE,MAED,SAAMmvB,GACJpxB,KAAKqM,QAAO9L,OAAAuT,OAAAvT,OAAAuT,OAAA,GAAQ4b,IAAmB0B,GACvC,IAAMna,EAAQjX,KAAK+wB,SAASM,aAE5B,IAAKrxB,KAAKqM,QAAQsjB,QAShB,OARI3vB,KAAKmxB,mBACPla,EAAMqa,IAAI,YAAatxB,KAAKuxB,kBAAmBvxB,MAC/CiX,EAAMqa,IAAI,WAAYtxB,KAAKwxB,iBAAkBxxB,MAE7CA,KAAKmxB,kBAAmB,QAG1BnxB,KAAKyxB,UAQP,GAJAzxB,KAAK0xB,cAAqBnxB,OAAAuT,OAAAvT,OAAAuT,OAAA,CAAA,EAAAkc,IAA2BhwB,KAAKqM,SAE1DrM,KAAKixB,KAAOvtB,SAASiuB,eAAelC,GAAiB9sB,MAAM,KAEtD3C,KAAKixB,KAAM,CACd,IAAMW,EAAcluB,SAASiF,cAAc,OAC3CipB,EAAYC,aAAa,KAAMpC,GAAiB9sB,MAAM,IACtDivB,EAAYC,aAAa,OAAQ,WACjCD,EAAYE,UACV,YAAAnjB,OAAY8gB,GAAiB9sB,MAC3B,GACD,2CAAA,aAAAgM,OACY8gB,GAAiB9sB,MAAM,GAAkB,kBAExD3C,KAAKixB,KAAOvtB,SAASquB,KAAKha,YAAY6Z,EACxC,CAEA5xB,KAAKixB,KAAKY,aAAa,aAAc7xB,KAAK+wB,SAAS1kB,QAAQA,QAAQ2lB,OAEnEhyB,KAAKkxB,eAAiBe,EACpB7B,GACApwB,KAAKixB,KACLjxB,KAAK0xB,eAGF1xB,KAAKmxB,mBACRla,EAAMib,GAAG,YAAalyB,KAAKuxB,kBAAmBvxB,MAC9CiX,EAAMib,GAAG,WAAYlyB,KAAKwxB,iBAAkBxxB,MAC5CA,KAAKmxB,kBAAmB,EAE5B,GAAC,CAAA9qB,IAAA,oBAAApE,MAED,SAAkBkwB,EAAiBC,EAAsBnwB,GACvDstB,GAAAvvB,KAAIqyB,GAAA,IAAAC,IAAJvxB,KAAAf,KAAWmyB,EAAEpiB,OAAQqiB,EAAWnwB,EAClC,GAAC,CAAAoE,IAAA,mBAAApE,MAED,WACEstB,GAAAvvB,KAAIqyB,GAAA,IAAAE,IAAJxxB,KAAAf,KACF,GAEA,CAAAqG,IAAA,QAAApE,MACA,WACE,OAAOsX,QAAQQ,SACjB,GAAC,CAAA1T,IAAA,UAAApE,MAED,WAKE,OAJIjC,KAAKixB,MACPjxB,KAAKixB,KAAKuB,SAGLjZ,QAAQQ,SACjB,oFAAC+W,CAAA,CA1FyB,8BA4FpBqB,EAAQC,EAAsBnwB,GAAa,IAAAwwB,EAAAzyB,KACzC0yB,EAAY1yB,KAAKqM,QAAQujB,KACzB+C,EAAQD,EACZA,EAAUN,EAAWnwB,EAAOjC,KAAK+wB,SAAS6B,WAAWC,KAAKT,IAC1D,KAEGO,IAILvC,GAAeC,sBAAwB,WAAA,OAAM8B,EAAE9B,uBAAuB,EACtE3sB,SAASiuB,eAAc,GAAAhjB,OAAI8gB,GAAiB9sB,MAAM,GAAS,UAAGmvB,UAC5Da,EAEF3yB,KAAKkxB,eAAe4B,YAAW,WAAA,OAAMvyB,OAAAuT,OAAAvT,OAAAuT,OAAA,GAChC2e,EAAKf,eAAa,CACrBxB,UAAS,GAAAvhB,OAAAokB,EACJN,EAAKf,cAAcxB,WACtB,CAAA,CAAEnoB,KAAM,iBAAkB4nB,SAAS,MACpC,IAGH3vB,KAAKkxB,eAAe8B,SAEpBhzB,KAAKixB,KAAMY,aAAa,YAAa,KACvC,EAACU,GAAA,WAAA,IAAAU,EAAAjzB,KAGCA,KAAKixB,KAAMiC,gBAAgB,aAE3BlzB,KAAKkxB,eAAe4B,YAAW,WAAA,OAAMvyB,OAAAuT,OAAAvT,OAAAuT,OAAA,GAChCmf,EAAKvB,eAAa,CACrBxB,UAAS,GAAAvhB,OAAAokB,EACJE,EAAKvB,cAAcxB,WACtB,CAAA,CAAEnoB,KAAM,iBAAkB4nB,SAAS,MACpC,GAEL,SAACmB","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153]} \ No newline at end of file +{"version":3,"file":"Tooltip.min.esm.js","sources":["../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-method-has-species-support.js","../../node_modules/core-js/modules/es.array.concat.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/tslib/tslib.es6.js","../../../src/plugins/Tooltip.ts"],"sourcesContent":["'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","import { createPopper } from '@popperjs/core';\n\nimport type dayjs from 'dayjs';\nimport type { VirtualElement, StrictModifiers } from '@popperjs/core';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions, Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '#ch-tooltip';\n\ninterface PopperOptions {\n placement: any;\n modifiers: any[];\n strategy: any;\n onFirstUpdate?: any;\n}\n\ninterface TooltipOptions extends PluginOptions, PopperOptions {\n enabled: boolean;\n text: (timestamp: Timestamp, value: number, dayjsDate: dayjs.Dayjs) => string;\n}\n\nconst defaultOptions: Partial = {\n enabled: true,\n\n // Expecting a function, which will return the tooltip content\n text: (_timestamp, value, dayjsDate): string =>\n // eslint-disable-next-line implicit-arrow-linebreak\n `${value} - ${dayjsDate.format('LLLL')}`,\n};\n\nconst DEFAULT_POPPER_OPTIONS = {\n placement: 'top',\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8],\n },\n },\n ],\n};\n\nconst virtualElement: VirtualElement = {\n getBoundingClientRect(x = 0, y = 0): DOMRect {\n return {\n width: 0,\n height: 0,\n top: y,\n right: x,\n bottom: y,\n left: x,\n x,\n y,\n toJSON: () => {},\n };\n },\n};\n\nexport default class Tooltip implements IPlugin {\n name = 'Tooltip';\n\n calendar: CalHeatmap;\n\n root: HTMLElement | null;\n\n popperInstance: any;\n\n popperOptions: any;\n\n options: Partial;\n\n listenerAttached: boolean;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.popperInstance = null;\n this.options = defaultOptions;\n this.listenerAttached = false;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n const event = this.calendar.eventEmitter;\n\n if (!this.options.enabled) {\n if (this.listenerAttached) {\n event.off('mouseover', this.mouseOverCallback, this);\n event.off('mouseout', this.mouseOutCallback, this);\n\n this.listenerAttached = false;\n }\n\n this.destroy();\n return;\n }\n\n this.popperOptions = { ...DEFAULT_POPPER_OPTIONS, ...this.options };\n\n this.root = document.getElementById(DEFAULT_SELECTOR.slice(1));\n\n if (!this.root) {\n const tooltipElem = document.createElement('div');\n tooltipElem.setAttribute('id', DEFAULT_SELECTOR.slice(1));\n tooltipElem.setAttribute('role', 'tooltip');\n tooltipElem.innerHTML =\n `
` +\n ``;\n\n this.root = document.body.appendChild(tooltipElem);\n }\n\n this.root.setAttribute('data-theme', this.calendar.options.options.theme);\n\n this.popperInstance = createPopper(\n virtualElement,\n this.root,\n this.popperOptions,\n );\n\n if (!this.listenerAttached) {\n event.on('mouseover', this.mouseOverCallback, this);\n event.on('mouseout', this.mouseOutCallback, this);\n this.listenerAttached = true;\n }\n }\n\n mouseOverCallback(e: PointerEvent, timestamp: Timestamp, value: number) {\n this.#show(e.target, timestamp, value);\n }\n\n mouseOutCallback() {\n this.#hide();\n }\n\n // eslint-disable-next-line class-methods-use-this\n paint(): Promise {\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root) {\n this.root.remove();\n }\n\n return Promise.resolve();\n }\n\n #show(e: any, timestamp: Timestamp, value: number): void {\n const formatter = this.options.text;\n const title = formatter ?\n formatter(timestamp, value, this.calendar.dateHelper.date(timestamp)) :\n null;\n\n if (!title) {\n return;\n }\n\n virtualElement.getBoundingClientRect = () => e.getBoundingClientRect();\n document.getElementById(`${DEFAULT_SELECTOR.slice(1)}-body`)!.innerHTML =\n title;\n\n this.popperInstance.setOptions(() => ({\n ...this.popperOptions,\n modifiers: [\n ...this.popperOptions.modifiers,\n { name: 'eventListeners', enabled: true },\n ],\n }));\n\n this.popperInstance.update();\n\n this.root!.setAttribute('data-show', '1');\n }\n\n #hide(): void {\n this.root!.removeAttribute('data-show');\n\n this.popperInstance.setOptions(() => ({\n ...this.popperOptions,\n modifiers: [\n ...this.popperOptions.modifiers,\n { name: 'eventListeners', enabled: false },\n ],\n }));\n }\n}\n"],"names":["commonjsGlobal","globalThis","window","global","self","check","it","Math","this","Function","fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","call","prototype","functionCall","apply","arguments","$propertyIsEnumerable","propertyIsEnumerable","getOwnPropertyDescriptor","NASHORN_BUG","objectPropertyIsEnumerable","f","V","descriptor","enumerable","match","version","createPropertyDescriptor","bitmap","value","configurable","writable","FunctionPrototype","uncurryThisWithBind","functionUncurryThis","fn","uncurryThis","toString","stringSlice","slice","classofRaw","require$$1","classof","require$$2","$Object","split","indexedObject","isNullOrUndefined","$TypeError","TypeError","requireObjectCoercible","IndexedObject","toIndexedObject","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","argument","isObject","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","String","userAgent","process","Deno","versions","v8","engineV8Version","V8_VERSION","$String","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","P","func","shared$3","exports","defineGlobalProperty","key","SHARED","sharedStore","store","sharedModule","push","mode","copyright","license","source","toObject","hasOwnProperty_1","hasOwn","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","EXISTS","createElement","documentCreateElement","ie8DomDefine","a","DESCRIPTORS","propertyIsEnumerableModule","require$$6","IE8_DOM_DEFINE","require$$7","$getOwnPropertyDescriptor","objectGetOwnPropertyDescriptor","O","objectDefineProperty","v8PrototypeDefineBug","anObject","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","ENUMERABLE","CONFIGURABLE","WRITABLE","Attributes","current","definePropertyModule","createNonEnumerableProperty","object","makeBuiltIn$3","getDescriptor","functionName","PROPER","functionToString","inspectSource","set","has","WeakMap","weakMapBasicDetection","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","target","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","isArray","Array","createProperty","propertyKey","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","isConstructor","called","SPECIES","$Array","arraySpeciesConstructor","originalArray","C","arraySpeciesCreate","$","doesNotExceedSafeInteger","require$$8","arrayMethodHasSpeciesSupport","METHOD_NAME","array","foo","Boolean","require$$11","IS_CONCAT_SPREADABLE","require$$10","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","proto","arg","k","len","E","A","defineBuiltInAccessor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectKeys","$assign","assign","objectAssign","b","B","alphabet","forEach","chr","T","argumentsLength","S","j","$location","defer","channel","port","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","__proto__","setToStringTag","TAG","anInstance","Prototype","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","IS_NODE","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","addToUnscopables","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","$getOwnPropertyNames","start","end","fin","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","getConstructor","ADDER","define","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","collection","init","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","__classPrivateFieldGet","receiver","DEFAULT_SELECTOR","defaultOptions","enabled","text","_timestamp","dayjsDate","format","DEFAULT_POPPER_OPTIONS","placement","modifiers","offset","virtualElement","getBoundingClientRect","y","width","height","top","right","bottom","left","toJSON","Tooltip","calendar","_classCallCheck","root","popperInstance","listenerAttached","pluginOptions","eventEmitter","off","mouseOverCallback","mouseOutCallback","destroy","popperOptions","getElementById","tooltipElem","setAttribute","innerHTML","body","theme","createPopper","on","e","timestamp","_Tooltip_instances","_Tooltip_show","_Tooltip_hide","remove","_this","formatter","title","dateHelper","date","setOptions","_toConsumableArray","update","_this2","removeAttribute"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/Tooltip.min.js.map b/src/agenda_culturel/static/cal-heatmap/plugins/Tooltip.min.js.map index 8f23cfd..b3c61e6 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/Tooltip.min.js.map +++ b/src/agenda_culturel/static/cal-heatmap/plugins/Tooltip.min.js.map @@ -1 +1 @@ -{"version":3,"file":"Tooltip.min.js","sources":["../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-method-has-species-support.js","../../node_modules/core-js/modules/es.array.concat.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/tslib/tslib.es6.js","../../../src/plugins/Tooltip.ts"],"sourcesContent":["'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","import { createPopper } from '@popperjs/core';\n\nimport type dayjs from 'dayjs';\nimport type { VirtualElement, StrictModifiers } from '@popperjs/core';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions, Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '#ch-tooltip';\n\ninterface PopperOptions {\n placement: any;\n modifiers: any[];\n strategy: any;\n onFirstUpdate?: any;\n}\n\ninterface TooltipOptions extends PluginOptions, PopperOptions {\n enabled: boolean;\n text: (timestamp: Timestamp, value: number, dayjsDate: dayjs.Dayjs) => string;\n}\n\nconst defaultOptions: Partial = {\n enabled: true,\n\n // Expecting a function, which will return the tooltip content\n text: (_timestamp, value, dayjsDate): string =>\n // eslint-disable-next-line implicit-arrow-linebreak\n `${value} - ${dayjsDate.format('LLLL')}`,\n};\n\nconst DEFAULT_POPPER_OPTIONS = {\n placement: 'top',\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8],\n },\n },\n ],\n};\n\nconst virtualElement: VirtualElement = {\n getBoundingClientRect(x = 0, y = 0): DOMRect {\n return {\n width: 0,\n height: 0,\n top: y,\n right: x,\n bottom: y,\n left: x,\n x,\n y,\n toJSON: () => {},\n };\n },\n};\n\nexport default class Tooltip implements IPlugin {\n name = 'Tooltip';\n\n calendar: CalHeatmap;\n\n root: HTMLElement | null;\n\n popperInstance: any;\n\n popperOptions: any;\n\n options: Partial;\n\n listenerAttached: boolean;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.popperInstance = null;\n this.options = defaultOptions;\n this.listenerAttached = false;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n const event = this.calendar.eventEmitter;\n\n if (!this.options.enabled) {\n if (this.listenerAttached) {\n event.off('mouseover', this.mouseOverCallback, this);\n event.off('mouseout', this.mouseOutCallback, this);\n\n this.listenerAttached = false;\n }\n\n this.destroy();\n return;\n }\n\n this.popperOptions = { ...DEFAULT_POPPER_OPTIONS, ...this.options };\n\n this.root = document.getElementById(DEFAULT_SELECTOR.slice(1));\n\n if (!this.root) {\n const tooltipElem = document.createElement('div');\n tooltipElem.setAttribute('id', DEFAULT_SELECTOR.slice(1));\n tooltipElem.setAttribute('role', 'tooltip');\n tooltipElem.innerHTML =\n `
` +\n ``;\n\n this.root = document.body.appendChild(tooltipElem);\n }\n\n this.root.setAttribute('data-theme', this.calendar.options.options.theme);\n\n this.popperInstance = createPopper(\n virtualElement,\n this.root,\n this.popperOptions,\n );\n\n if (!this.listenerAttached) {\n event.on('mouseover', this.mouseOverCallback, this);\n event.on('mouseout', this.mouseOutCallback, this);\n this.listenerAttached = true;\n }\n }\n\n mouseOverCallback(e: PointerEvent, timestamp: Timestamp, value: number) {\n this.#show(e.target, timestamp, value);\n }\n\n mouseOutCallback() {\n this.#hide();\n }\n\n // eslint-disable-next-line class-methods-use-this\n paint(): Promise {\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root) {\n this.root.remove();\n }\n\n return Promise.resolve();\n }\n\n #show(e: any, timestamp: Timestamp, value: number): void {\n const formatter = this.options.text;\n const title = formatter ?\n formatter(timestamp, value, this.calendar.dateHelper.date(timestamp)) :\n null;\n\n if (!title) {\n return;\n }\n\n virtualElement.getBoundingClientRect = () => e.getBoundingClientRect();\n document.getElementById(`${DEFAULT_SELECTOR.slice(1)}-body`)!.innerHTML =\n title;\n\n this.popperInstance.setOptions(() => ({\n ...this.popperOptions,\n modifiers: [\n ...this.popperOptions.modifiers,\n { name: 'eventListeners', enabled: true },\n ],\n }));\n\n this.popperInstance.update();\n\n this.root!.setAttribute('data-show', '1');\n }\n\n #hide(): void {\n this.root!.removeAttribute('data-show');\n\n this.popperInstance.setOptions(() => ({\n ...this.popperOptions,\n modifiers: [\n ...this.popperOptions.modifiers,\n { name: 'eventListeners', enabled: false },\n ],\n }));\n }\n}\n"],"names":["commonjsGlobal","globalThis","window","global","self","check","it","Math","this","Function","fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","call","prototype","functionCall","apply","arguments","$propertyIsEnumerable","propertyIsEnumerable","getOwnPropertyDescriptor","NASHORN_BUG","objectPropertyIsEnumerable","f","V","descriptor","enumerable","match","version","createPropertyDescriptor","bitmap","value","configurable","writable","FunctionPrototype","uncurryThisWithBind","functionUncurryThis","fn","uncurryThis","toString","stringSlice","slice","classofRaw","require$$1","classof","require$$2","$Object","split","indexedObject","isNullOrUndefined","$TypeError","TypeError","requireObjectCoercible","IndexedObject","toIndexedObject","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","argument","isObject","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","String","userAgent","process","Deno","versions","v8","engineV8Version","V8_VERSION","$String","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","P","func","shared$3","exports","defineGlobalProperty","key","SHARED","sharedStore","store","sharedModule","push","mode","copyright","license","source","toObject","hasOwnProperty_1","hasOwn","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","EXISTS","createElement","documentCreateElement","ie8DomDefine","a","DESCRIPTORS","propertyIsEnumerableModule","require$$6","IE8_DOM_DEFINE","require$$7","$getOwnPropertyDescriptor","objectGetOwnPropertyDescriptor","O","objectDefineProperty","v8PrototypeDefineBug","anObject","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","ENUMERABLE","CONFIGURABLE","WRITABLE","Attributes","current","definePropertyModule","createNonEnumerableProperty","object","makeBuiltIn$3","getDescriptor","functionName","PROPER","functionToString","inspectSource","set","has","WeakMap","weakMapBasicDetection","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","target","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","isArray","Array","createProperty","propertyKey","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","isConstructor","called","SPECIES","$Array","arraySpeciesConstructor","originalArray","C","arraySpeciesCreate","$","doesNotExceedSafeInteger","require$$8","arrayMethodHasSpeciesSupport","METHOD_NAME","array","foo","Boolean","require$$11","IS_CONCAT_SPREADABLE","require$$10","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","proto","arg","k","len","E","A","defineBuiltInAccessor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectKeys","$assign","assign","objectAssign","b","B","alphabet","forEach","chr","T","argumentsLength","S","j","$location","defer","channel","port","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","__proto__","setToStringTag","TAG","anInstance","Prototype","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","IS_NODE","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","addToUnscopables","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","$getOwnPropertyNames","start","end","fin","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","getConstructor","ADDER","define","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","collection","init","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","__classPrivateFieldGet","receiver","DEFAULT_SELECTOR","defaultOptions","enabled","text","_timestamp","dayjsDate","format","DEFAULT_POPPER_OPTIONS","placement","modifiers","offset","virtualElement","getBoundingClientRect","y","width","height","top","right","bottom","left","toJSON","Tooltip","calendar","_classCallCheck","root","popperInstance","listenerAttached","pluginOptions","eventEmitter","off","mouseOverCallback","mouseOutCallback","destroy","popperOptions","getElementById","tooltipElem","setAttribute","innerHTML","body","theme","createPopper","on","e","timestamp","_Tooltip_instances","_Tooltip_show","_Tooltip_hide","remove","_this","formatter","title","dateHelper","date","setOptions","_toConsumableArray","update","_this2","removeAttribute"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153]} \ No newline at end of file +{"version":3,"file":"Tooltip.min.js","sources":["../../node_modules/core-js/internals/global.js","../../node_modules/core-js/internals/fails.js","../../node_modules/core-js/internals/descriptors.js","../../node_modules/core-js/internals/function-bind-native.js","../../node_modules/core-js/internals/function-call.js","../../node_modules/core-js/internals/object-property-is-enumerable.js","../../node_modules/core-js/internals/create-property-descriptor.js","../../node_modules/core-js/internals/engine-v8-version.js","../../node_modules/core-js/internals/function-uncurry-this.js","../../node_modules/core-js/internals/classof-raw.js","../../node_modules/core-js/internals/indexed-object.js","../../node_modules/core-js/internals/is-null-or-undefined.js","../../node_modules/core-js/internals/require-object-coercible.js","../../node_modules/core-js/internals/to-indexed-object.js","../../node_modules/core-js/internals/document-all.js","../../node_modules/core-js/internals/is-callable.js","../../node_modules/core-js/internals/is-object.js","../../node_modules/core-js/internals/get-built-in.js","../../node_modules/core-js/internals/object-is-prototype-of.js","../../node_modules/core-js/internals/engine-user-agent.js","../../node_modules/core-js/internals/symbol-constructor-detection.js","../../node_modules/core-js/internals/use-symbol-as-uid.js","../../node_modules/core-js/internals/is-symbol.js","../../node_modules/core-js/internals/try-to-string.js","../../node_modules/core-js/internals/a-callable.js","../../node_modules/core-js/internals/get-method.js","../../node_modules/core-js/internals/ordinary-to-primitive.js","../../node_modules/core-js/internals/define-global-property.js","../../node_modules/core-js/internals/shared-store.js","../../node_modules/core-js/internals/shared.js","../../node_modules/core-js/internals/to-object.js","../../node_modules/core-js/internals/has-own-property.js","../../node_modules/core-js/internals/uid.js","../../node_modules/core-js/internals/well-known-symbol.js","../../node_modules/core-js/internals/to-primitive.js","../../node_modules/core-js/internals/to-property-key.js","../../node_modules/core-js/internals/document-create-element.js","../../node_modules/core-js/internals/ie8-dom-define.js","../../node_modules/core-js/internals/object-get-own-property-descriptor.js","../../node_modules/core-js/internals/v8-prototype-define-bug.js","../../node_modules/core-js/internals/an-object.js","../../node_modules/core-js/internals/object-define-property.js","../../node_modules/core-js/internals/create-non-enumerable-property.js","../../node_modules/core-js/internals/function-name.js","../../node_modules/core-js/internals/inspect-source.js","../../node_modules/core-js/internals/internal-state.js","../../node_modules/core-js/internals/weak-map-basic-detection.js","../../node_modules/core-js/internals/shared-key.js","../../node_modules/core-js/internals/hidden-keys.js","../../node_modules/core-js/internals/make-built-in.js","../../node_modules/core-js/internals/define-built-in.js","../../node_modules/core-js/internals/math-trunc.js","../../node_modules/core-js/internals/to-integer-or-infinity.js","../../node_modules/core-js/internals/to-absolute-index.js","../../node_modules/core-js/internals/to-length.js","../../node_modules/core-js/internals/length-of-array-like.js","../../node_modules/core-js/internals/array-includes.js","../../node_modules/core-js/internals/object-keys-internal.js","../../node_modules/core-js/internals/enum-bug-keys.js","../../node_modules/core-js/internals/object-get-own-property-names.js","../../node_modules/core-js/internals/object-get-own-property-symbols.js","../../node_modules/core-js/internals/own-keys.js","../../node_modules/core-js/internals/copy-constructor-properties.js","../../node_modules/core-js/internals/is-forced.js","../../node_modules/core-js/internals/export.js","../../node_modules/core-js/internals/is-array.js","../../node_modules/core-js/internals/does-not-exceed-safe-integer.js","../../node_modules/core-js/internals/create-property.js","../../node_modules/core-js/internals/to-string-tag-support.js","../../node_modules/core-js/internals/classof.js","../../node_modules/core-js/internals/is-constructor.js","../../node_modules/core-js/internals/array-species-constructor.js","../../node_modules/core-js/internals/array-species-create.js","../../node_modules/core-js/internals/array-method-has-species-support.js","../../node_modules/core-js/modules/es.array.concat.js","../../node_modules/core-js/internals/define-built-in-accessor.js","../../node_modules/core-js/modules/es.function.name.js","../../node_modules/core-js/internals/object-keys.js","../../node_modules/core-js/internals/object-assign.js","../../node_modules/core-js/modules/es.object.assign.js","../../node_modules/core-js/internals/object-to-string.js","../../node_modules/core-js/modules/es.object.to-string.js","../../node_modules/core-js/internals/engine-is-node.js","../../node_modules/core-js/internals/task.js","../../node_modules/core-js/internals/function-uncurry-this-accessor.js","../../node_modules/core-js/internals/a-possible-prototype.js","../../node_modules/core-js/internals/object-set-prototype-of.js","../../node_modules/core-js/internals/set-to-string-tag.js","../../node_modules/core-js/internals/set-species.js","../../node_modules/core-js/internals/an-instance.js","../../node_modules/core-js/internals/a-constructor.js","../../node_modules/core-js/internals/species-constructor.js","../../node_modules/core-js/internals/function-apply.js","../../node_modules/core-js/internals/function-uncurry-this-clause.js","../../node_modules/core-js/internals/function-bind-context.js","../../node_modules/core-js/internals/html.js","../../node_modules/core-js/internals/array-slice.js","../../node_modules/core-js/internals/validate-arguments-length.js","../../node_modules/core-js/internals/engine-is-ios.js","../../node_modules/core-js/internals/queue.js","../../node_modules/core-js/internals/microtask.js","../../node_modules/core-js/internals/engine-is-ios-pebble.js","../../node_modules/core-js/internals/engine-is-webos-webkit.js","../../node_modules/core-js/internals/perform.js","../../node_modules/core-js/internals/promise-native-constructor.js","../../node_modules/core-js/internals/engine-is-deno.js","../../node_modules/core-js/internals/engine-is-browser.js","../../node_modules/core-js/internals/promise-constructor-detection.js","../../node_modules/core-js/internals/new-promise-capability.js","../../node_modules/core-js/modules/es.promise.constructor.js","../../node_modules/core-js/internals/host-report-errors.js","../../node_modules/core-js/internals/iterators.js","../../node_modules/core-js/internals/is-array-iterator-method.js","../../node_modules/core-js/internals/get-iterator-method.js","../../node_modules/core-js/internals/get-iterator.js","../../node_modules/core-js/internals/iterator-close.js","../../node_modules/core-js/internals/iterate.js","../../node_modules/core-js/internals/check-correctness-of-iteration.js","../../node_modules/core-js/internals/promise-statics-incorrect-iteration.js","../../node_modules/core-js/modules/es.promise.all.js","../../node_modules/core-js/modules/es.promise.catch.js","../../node_modules/core-js/modules/es.promise.race.js","../../node_modules/core-js/modules/es.promise.reject.js","../../node_modules/core-js/internals/promise-resolve.js","../../node_modules/core-js/modules/es.promise.resolve.js","../../node_modules/core-js/internals/object-define-properties.js","../../node_modules/core-js/internals/object-create.js","../../node_modules/core-js/internals/add-to-unscopables.js","../../node_modules/core-js/internals/iterators-core.js","../../node_modules/core-js/internals/correct-prototype-getter.js","../../node_modules/core-js/internals/object-get-prototype-of.js","../../node_modules/core-js/internals/iterator-create-constructor.js","../../node_modules/core-js/internals/iterator-define.js","../../node_modules/core-js/internals/create-iter-result-object.js","../../node_modules/core-js/modules/es.array.iterator.js","../../node_modules/core-js/internals/to-string.js","../../node_modules/core-js/internals/string-multibyte.js","../../node_modules/core-js/modules/es.string.iterator.js","../../node_modules/core-js/internals/array-slice-simple.js","../../node_modules/core-js/internals/object-get-own-property-names-external.js","../../node_modules/core-js/internals/array-buffer-non-extensible.js","../../node_modules/core-js/internals/object-is-extensible.js","../../node_modules/core-js/internals/freezing.js","../../node_modules/core-js/internals/internal-metadata.js","../../node_modules/core-js/internals/inherit-if-required.js","../../node_modules/core-js/internals/collection.js","../../node_modules/core-js/internals/define-built-ins.js","../../node_modules/core-js/internals/array-iteration.js","../../node_modules/core-js/internals/collection-weak.js","../../node_modules/core-js/modules/es.weak-set.constructor.js","../../node_modules/core-js/internals/dom-iterables.js","../../node_modules/core-js/internals/dom-token-list-prototype.js","../../node_modules/core-js/modules/web.dom-collections.iterator.js","../../node_modules/tslib/tslib.es6.js","../../../src/plugins/Tooltip.ts"],"sourcesContent":["'use strict';\nvar check = function (it) {\n return it && it.Math === Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line es/no-global-this -- safe\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n // eslint-disable-next-line no-restricted-globals -- safe\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n check(typeof this == 'object' && this) ||\n // eslint-disable-next-line no-new-func -- fallback\n (function () { return this; })() || Function('return this')();\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] !== 7;\n});\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-function-prototype-bind -- safe\n var test = (function () { /* empty */ }).bind();\n // eslint-disable-next-line no-prototype-builtins -- safe\n return typeof test != 'function' || test.hasOwnProperty('prototype');\n});\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar call = Function.prototype.call;\n\nmodule.exports = NATIVE_BIND ? call.bind(call) : function () {\n return call.apply(call, arguments);\n};\n","'use strict';\nvar $propertyIsEnumerable = {}.propertyIsEnumerable;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : $propertyIsEnumerable;\n","'use strict';\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","'use strict';\nvar global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar Deno = global.Deno;\nvar versions = process && process.versions || Deno && Deno.version;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n // in old Chrome, versions of V8 isn't V8 = Chrome / 10\n // but their correct versions are not interesting for us\n version = match[0] > 0 && match[0] < 4 ? 1 : +(match[0] + match[1]);\n}\n\n// BrowserFS NodeJS `process` polyfill incorrectly set `.v8` to `0.0`\n// so check `userAgent` even if `.v8` exists, but 0\nif (!version && userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = +match[1];\n }\n}\n\nmodule.exports = version;\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar call = FunctionPrototype.call;\nvar uncurryThisWithBind = NATIVE_BIND && FunctionPrototype.bind.bind(call, call);\n\nmodule.exports = NATIVE_BIND ? uncurryThisWithBind : function (fn) {\n return function () {\n return call.apply(fn, arguments);\n };\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar toString = uncurryThis({}.toString);\nvar stringSlice = uncurryThis(''.slice);\n\nmodule.exports = function (it) {\n return stringSlice(toString(it), 8, -1);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar $Object = Object;\nvar split = uncurryThis(''.split);\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins -- safe\n return !$Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) === 'String' ? split(it, '') : $Object(it);\n} : $Object;\n","'use strict';\n// we can't use just `it == null` since of `document.all` special case\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot-aec\nmodule.exports = function (it) {\n return it === null || it === undefined;\n};\n","'use strict';\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\nvar $TypeError = TypeError;\n\n// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (isNullOrUndefined(it)) throw new $TypeError(\"Can't call method on \" + it);\n return it;\n};\n","'use strict';\n// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","'use strict';\nvar documentAll = typeof document == 'object' && document.all;\n\n// https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot\n// eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing\nvar IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;\n\nmodule.exports = {\n all: documentAll,\n IS_HTMLDDA: IS_HTMLDDA\n};\n","'use strict';\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\n// `IsCallable` abstract operation\n// https://tc39.es/ecma262/#sec-iscallable\nmodule.exports = $documentAll.IS_HTMLDDA ? function (argument) {\n return typeof argument == 'function' || argument === documentAll;\n} : function (argument) {\n return typeof argument == 'function';\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar $documentAll = require('../internals/document-all');\n\nvar documentAll = $documentAll.all;\n\nmodule.exports = $documentAll.IS_HTMLDDA ? function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it) || it === documentAll;\n} : function (it) {\n return typeof it == 'object' ? it !== null : isCallable(it);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar aFunction = function (argument) {\n return isCallable(argument) ? argument : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis({}.isPrototypeOf);\n","'use strict';\nmodule.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar V8_VERSION = require('../internals/engine-v8-version');\nvar fails = require('../internals/fails');\nvar global = require('../internals/global');\n\nvar $String = global.String;\n\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing\nmodule.exports = !!Object.getOwnPropertySymbols && !fails(function () {\n var symbol = Symbol('symbol detection');\n // Chrome 38 Symbol has incorrect toString conversion\n // `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances\n // nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,\n // of course, fail.\n return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||\n // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && V8_VERSION && V8_VERSION < 41;\n});\n","'use strict';\n/* eslint-disable es/no-symbol -- required for testing */\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\n\nmodule.exports = NATIVE_SYMBOL\n && !Symbol.sham\n && typeof Symbol.iterator == 'symbol';\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar $Object = Object;\n\nmodule.exports = USE_SYMBOL_AS_UID ? function (it) {\n return typeof it == 'symbol';\n} : function (it) {\n var $Symbol = getBuiltIn('Symbol');\n return isCallable($Symbol) && isPrototypeOf($Symbol.prototype, $Object(it));\n};\n","'use strict';\nvar $String = String;\n\nmodule.exports = function (argument) {\n try {\n return $String(argument);\n } catch (error) {\n return 'Object';\n }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsCallable(argument) is true`\nmodule.exports = function (argument) {\n if (isCallable(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a function');\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\n\n// `GetMethod` abstract operation\n// https://tc39.es/ecma262/#sec-getmethod\nmodule.exports = function (V, P) {\n var func = V[P];\n return isNullOrUndefined(func) ? undefined : aCallable(func);\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\n\nvar $TypeError = TypeError;\n\n// `OrdinaryToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-ordinarytoprimitive\nmodule.exports = function (input, pref) {\n var fn, val;\n if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;\n if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;\n throw new $TypeError(\"Can't convert object to primitive value\");\n};\n","'use strict';\nvar global = require('../internals/global');\n\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\n\nmodule.exports = function (key, value) {\n try {\n defineProperty(global, key, { value: value, configurable: true, writable: true });\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","'use strict';\nvar global = require('../internals/global');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || defineGlobalProperty(SHARED, {});\n\nmodule.exports = store;\n","'use strict';\nvar IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.34.0',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',\n license: 'https://github.com/zloirock/core-js/blob/v3.34.0/LICENSE',\n source: 'https://github.com/zloirock/core-js'\n});\n","'use strict';\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar $Object = Object;\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return $Object(requireObjectCoercible(argument));\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar hasOwnProperty = uncurryThis({}.hasOwnProperty);\n\n// `HasOwnProperty` abstract operation\n// https://tc39.es/ecma262/#sec-hasownproperty\n// eslint-disable-next-line es/no-object-hasown -- safe\nmodule.exports = Object.hasOwn || function hasOwn(it, key) {\n return hasOwnProperty(toObject(it), key);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nvar id = 0;\nvar postfix = Math.random();\nvar toString = uncurryThis(1.0.toString);\n\nmodule.exports = function (key) {\n return 'Symbol(' + (key === undefined ? '' : key) + ')_' + toString(++id + postfix, 36);\n};\n","'use strict';\nvar global = require('../internals/global');\nvar shared = require('../internals/shared');\nvar hasOwn = require('../internals/has-own-property');\nvar uid = require('../internals/uid');\nvar NATIVE_SYMBOL = require('../internals/symbol-constructor-detection');\nvar USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');\n\nvar Symbol = global.Symbol;\nvar WellKnownSymbolsStore = shared('wks');\nvar createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol['for'] || Symbol : Symbol && Symbol.withoutSetter || uid;\n\nmodule.exports = function (name) {\n if (!hasOwn(WellKnownSymbolsStore, name)) {\n WellKnownSymbolsStore[name] = NATIVE_SYMBOL && hasOwn(Symbol, name)\n ? Symbol[name]\n : createWellKnownSymbol('Symbol.' + name);\n } return WellKnownSymbolsStore[name];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar isObject = require('../internals/is-object');\nvar isSymbol = require('../internals/is-symbol');\nvar getMethod = require('../internals/get-method');\nvar ordinaryToPrimitive = require('../internals/ordinary-to-primitive');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar $TypeError = TypeError;\nvar TO_PRIMITIVE = wellKnownSymbol('toPrimitive');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\nmodule.exports = function (input, pref) {\n if (!isObject(input) || isSymbol(input)) return input;\n var exoticToPrim = getMethod(input, TO_PRIMITIVE);\n var result;\n if (exoticToPrim) {\n if (pref === undefined) pref = 'default';\n result = call(exoticToPrim, input, pref);\n if (!isObject(result) || isSymbol(result)) return result;\n throw new $TypeError(\"Can't convert object to primitive value\");\n }\n if (pref === undefined) pref = 'number';\n return ordinaryToPrimitive(input, pref);\n};\n","'use strict';\nvar toPrimitive = require('../internals/to-primitive');\nvar isSymbol = require('../internals/is-symbol');\n\n// `ToPropertyKey` abstract operation\n// https://tc39.es/ecma262/#sec-topropertykey\nmodule.exports = function (argument) {\n var key = toPrimitive(argument, 'string');\n return isSymbol(key) ? key : key + '';\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thanks to IE8 for its funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a !== 7;\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar call = require('../internals/function-call');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPropertyKey = require('../internals/to-property-key');\nvar hasOwn = require('../internals/has-own-property');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPropertyKey(P);\n if (IE8_DOM_DEFINE) try {\n return $getOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (hasOwn(O, P)) return createPropertyDescriptor(!call(propertyIsEnumerableModule.f, O, P), O[P]);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\n\n// V8 ~ Chrome 36-\n// https://bugs.chromium.org/p/v8/issues/detail?id=3334\nmodule.exports = DESCRIPTORS && fails(function () {\n // eslint-disable-next-line es/no-object-defineproperty -- required for testing\n return Object.defineProperty(function () { /* empty */ }, 'prototype', {\n value: 42,\n writable: false\n }).prototype !== 42;\n});\n","'use strict';\nvar isObject = require('../internals/is-object');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\n// `Assert: Type(argument) is Object`\nmodule.exports = function (argument) {\n if (isObject(argument)) return argument;\n throw new $TypeError($String(argument) + ' is not an object');\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar anObject = require('../internals/an-object');\nvar toPropertyKey = require('../internals/to-property-key');\n\nvar $TypeError = TypeError;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar $defineProperty = Object.defineProperty;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar ENUMERABLE = 'enumerable';\nvar CONFIGURABLE = 'configurable';\nvar WRITABLE = 'writable';\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (typeof O === 'function' && P === 'prototype' && 'value' in Attributes && WRITABLE in Attributes && !Attributes[WRITABLE]) {\n var current = $getOwnPropertyDescriptor(O, P);\n if (current && current[WRITABLE]) {\n O[P] = Attributes.value;\n Attributes = {\n configurable: CONFIGURABLE in Attributes ? Attributes[CONFIGURABLE] : current[CONFIGURABLE],\n enumerable: ENUMERABLE in Attributes ? Attributes[ENUMERABLE] : current[ENUMERABLE],\n writable: false\n };\n }\n } return $defineProperty(O, P, Attributes);\n} : $defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPropertyKey(P);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return $defineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw new $TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar hasOwn = require('../internals/has-own-property');\n\nvar FunctionPrototype = Function.prototype;\n// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\nvar getDescriptor = DESCRIPTORS && Object.getOwnPropertyDescriptor;\n\nvar EXISTS = hasOwn(FunctionPrototype, 'name');\n// additional protection from minified / mangled / dropped function names\nvar PROPER = EXISTS && (function something() { /* empty */ }).name === 'something';\nvar CONFIGURABLE = EXISTS && (!DESCRIPTORS || (DESCRIPTORS && getDescriptor(FunctionPrototype, 'name').configurable));\n\nmodule.exports = {\n EXISTS: EXISTS,\n PROPER: PROPER,\n CONFIGURABLE: CONFIGURABLE\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isCallable = require('../internals/is-callable');\nvar store = require('../internals/shared-store');\n\nvar functionToString = uncurryThis(Function.toString);\n\n// this helper broken in `core-js@3.4.1-3.4.4`, so we can't use `shared` helper\nif (!isCallable(store.inspectSource)) {\n store.inspectSource = function (it) {\n return functionToString(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","'use strict';\nvar NATIVE_WEAK_MAP = require('../internals/weak-map-basic-detection');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar hasOwn = require('../internals/has-own-property');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar OBJECT_ALREADY_INITIALIZED = 'Object already initialized';\nvar TypeError = global.TypeError;\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw new TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP || shared.state) {\n var store = shared.state || (shared.state = new WeakMap());\n /* eslint-disable no-self-assign -- prototype methods protection */\n store.get = store.get;\n store.has = store.has;\n store.set = store.set;\n /* eslint-enable no-self-assign -- prototype methods protection */\n set = function (it, metadata) {\n if (store.has(it)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n store.set(it, metadata);\n return metadata;\n };\n get = function (it) {\n return store.get(it) || {};\n };\n has = function (it) {\n return store.has(it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n if (hasOwn(it, STATE)) throw new TypeError(OBJECT_ALREADY_INITIALIZED);\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return hasOwn(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return hasOwn(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","'use strict';\nvar global = require('../internals/global');\nvar isCallable = require('../internals/is-callable');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = isCallable(WeakMap) && /native code/.test(String(WeakMap));\n","'use strict';\nvar shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar DESCRIPTORS = require('../internals/descriptors');\nvar CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar enforceInternalState = InternalStateModule.enforce;\nvar getInternalState = InternalStateModule.get;\nvar $String = String;\n// eslint-disable-next-line es/no-object-defineproperty -- safe\nvar defineProperty = Object.defineProperty;\nvar stringSlice = uncurryThis(''.slice);\nvar replace = uncurryThis(''.replace);\nvar join = uncurryThis([].join);\n\nvar CONFIGURABLE_LENGTH = DESCRIPTORS && !fails(function () {\n return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;\n});\n\nvar TEMPLATE = String(String).split('String');\n\nvar makeBuiltIn = module.exports = function (value, name, options) {\n if (stringSlice($String(name), 0, 7) === 'Symbol(') {\n name = '[' + replace($String(name), /^Symbol\\(([^)]*)\\)/, '$1') + ']';\n }\n if (options && options.getter) name = 'get ' + name;\n if (options && options.setter) name = 'set ' + name;\n if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {\n if (DESCRIPTORS) defineProperty(value, 'name', { value: name, configurable: true });\n else value.name = name;\n }\n if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {\n defineProperty(value, 'length', { value: options.arity });\n }\n try {\n if (options && hasOwn(options, 'constructor') && options.constructor) {\n if (DESCRIPTORS) defineProperty(value, 'prototype', { writable: false });\n // in V8 ~ Chrome 53, prototypes of some methods, like `Array.prototype.values`, are non-writable\n } else if (value.prototype) value.prototype = undefined;\n } catch (error) { /* empty */ }\n var state = enforceInternalState(value);\n if (!hasOwn(state, 'source')) {\n state.source = join(TEMPLATE, typeof name == 'string' ? name : '');\n } return value;\n};\n\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n// eslint-disable-next-line no-extend-native -- required\nFunction.prototype.toString = makeBuiltIn(function toString() {\n return isCallable(this) && getInternalState(this).source || inspectSource(this);\n}, 'toString');\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar definePropertyModule = require('../internals/object-define-property');\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\n\nmodule.exports = function (O, key, value, options) {\n if (!options) options = {};\n var simple = options.enumerable;\n var name = options.name !== undefined ? options.name : key;\n if (isCallable(value)) makeBuiltIn(value, name, options);\n if (options.global) {\n if (simple) O[key] = value;\n else defineGlobalProperty(key, value);\n } else {\n try {\n if (!options.unsafe) delete O[key];\n else if (O[key]) simple = true;\n } catch (error) { /* empty */ }\n if (simple) O[key] = value;\n else definePropertyModule.f(O, key, {\n value: value,\n enumerable: false,\n configurable: !options.nonConfigurable,\n writable: !options.nonWritable\n });\n } return O;\n};\n","'use strict';\nvar ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `Math.trunc` method\n// https://tc39.es/ecma262/#sec-math.trunc\n// eslint-disable-next-line es/no-math-trunc -- safe\nmodule.exports = Math.trunc || function trunc(x) {\n var n = +x;\n return (n > 0 ? floor : ceil)(n);\n};\n","'use strict';\nvar trunc = require('../internals/math-trunc');\n\n// `ToIntegerOrInfinity` abstract operation\n// https://tc39.es/ecma262/#sec-tointegerorinfinity\nmodule.exports = function (argument) {\n var number = +argument;\n // eslint-disable-next-line no-self-compare -- NaN check\n return number !== number || number === 0 ? 0 : trunc(number);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toIntegerOrInfinity(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","'use strict';\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toIntegerOrInfinity(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","'use strict';\nvar toLength = require('../internals/to-length');\n\n// `LengthOfArrayLike` abstract operation\n// https://tc39.es/ecma262/#sec-lengthofarraylike\nmodule.exports = function (obj) {\n return toLength(obj.length);\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = lengthOfArrayLike(O);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare -- NaN check\n if (IS_INCLUDES && el !== el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare -- NaN check\n if (value !== value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hasOwn = require('../internals/has-own-property');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar push = uncurryThis([].push);\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !hasOwn(hiddenKeys, key) && hasOwn(O, key) && push(result, key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (hasOwn(O, key = names[i++])) {\n ~indexOf(result, key) || push(result, key);\n }\n return result;\n};\n","'use strict';\n// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\n// eslint-disable-next-line es/no-object-getownpropertynames -- safe\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n","'use strict';\n// eslint-disable-next-line es/no-object-getownpropertysymbols -- safe\nexports.f = Object.getOwnPropertySymbols;\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\nvar concat = uncurryThis([].concat);\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? concat(keys, getOwnPropertySymbols(it)) : keys;\n};\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source, exceptions) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!hasOwn(target, key) && !(exceptions && hasOwn(exceptions, key))) {\n defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n }\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value === POLYFILL ? true\n : value === NATIVE ? false\n : isCallable(detection) ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","'use strict';\nvar global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar defineGlobalProperty = require('../internals/define-global-property');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.dontCallGetSet - prevent calling a getter on target\n options.name - the .name of the function if it does not match the key\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || defineGlobalProperty(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.dontCallGetSet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty == typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n defineBuiltIn(target, key, sourceProperty, options);\n }\n};\n","'use strict';\nvar classof = require('../internals/classof-raw');\n\n// `IsArray` abstract operation\n// https://tc39.es/ecma262/#sec-isarray\n// eslint-disable-next-line es/no-array-isarray -- safe\nmodule.exports = Array.isArray || function isArray(argument) {\n return classof(argument) === 'Array';\n};\n","'use strict';\nvar $TypeError = TypeError;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; // 2 ** 53 - 1 == 9007199254740991\n\nmodule.exports = function (it) {\n if (it > MAX_SAFE_INTEGER) throw $TypeError('Maximum allowed index exceeded');\n return it;\n};\n","'use strict';\nvar toPropertyKey = require('../internals/to-property-key');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = function (object, key, value) {\n var propertyKey = toPropertyKey(key);\n if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));\n else object[propertyKey] = value;\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) === 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) === 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar classof = require('../internals/classof');\nvar getBuiltIn = require('../internals/get-built-in');\nvar inspectSource = require('../internals/inspect-source');\n\nvar noop = function () { /* empty */ };\nvar empty = [];\nvar construct = getBuiltIn('Reflect', 'construct');\nvar constructorRegExp = /^\\s*(?:class|function)\\b/;\nvar exec = uncurryThis(constructorRegExp.exec);\nvar INCORRECT_TO_STRING = !constructorRegExp.test(noop);\n\nvar isConstructorModern = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n try {\n construct(noop, empty, argument);\n return true;\n } catch (error) {\n return false;\n }\n};\n\nvar isConstructorLegacy = function isConstructor(argument) {\n if (!isCallable(argument)) return false;\n switch (classof(argument)) {\n case 'AsyncFunction':\n case 'GeneratorFunction':\n case 'AsyncGeneratorFunction': return false;\n }\n try {\n // we can't check .prototype since constructors produced by .bind haven't it\n // `Function#toString` throws on some built-it function in some legacy engines\n // (for example, `DOMQuad` and similar in FF41-)\n return INCORRECT_TO_STRING || !!exec(constructorRegExp, inspectSource(argument));\n } catch (error) {\n return true;\n }\n};\n\nisConstructorLegacy.sham = true;\n\n// `IsConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-isconstructor\nmodule.exports = !construct || fails(function () {\n var called;\n return isConstructorModern(isConstructorModern.call)\n || !isConstructorModern(Object)\n || !isConstructorModern(function () { called = true; })\n || called;\n}) ? isConstructorLegacy : isConstructorModern;\n","'use strict';\nvar isArray = require('../internals/is-array');\nvar isConstructor = require('../internals/is-constructor');\nvar isObject = require('../internals/is-object');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\nvar $Array = Array;\n\n// a part of `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray) {\n var C;\n if (isArray(originalArray)) {\n C = originalArray.constructor;\n // cross-realm fallback\n if (isConstructor(C) && (C === $Array || isArray(C.prototype))) C = undefined;\n else if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? $Array : C;\n};\n","'use strict';\nvar arraySpeciesConstructor = require('../internals/array-species-constructor');\n\n// `ArraySpeciesCreate` abstract operation\n// https://tc39.es/ecma262/#sec-arrayspeciescreate\nmodule.exports = function (originalArray, length) {\n return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (METHOD_NAME) {\n // We can't use this feature detection in V8 since it causes\n // deoptimization and serious performance degradation\n // https://github.com/zloirock/core-js/issues/677\n return V8_VERSION >= 51 || !fails(function () {\n var array = [];\n var constructor = array.constructor = {};\n constructor[SPECIES] = function () {\n return { foo: 1 };\n };\n return array[METHOD_NAME](Boolean).foo !== 1;\n });\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar fails = require('../internals/fails');\nvar isArray = require('../internals/is-array');\nvar isObject = require('../internals/is-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');\nvar createProperty = require('../internals/create-property');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');\n\n// We can't use this feature detection in V8 since it causes\n// deoptimization and serious performance degradation\n// https://github.com/zloirock/core-js/issues/679\nvar IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () {\n var array = [];\n array[IS_CONCAT_SPREADABLE] = false;\n return array.concat()[0] !== array;\n});\n\nvar isConcatSpreadable = function (O) {\n if (!isObject(O)) return false;\n var spreadable = O[IS_CONCAT_SPREADABLE];\n return spreadable !== undefined ? !!spreadable : isArray(O);\n};\n\nvar FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !arrayMethodHasSpeciesSupport('concat');\n\n// `Array.prototype.concat` method\n// https://tc39.es/ecma262/#sec-array.prototype.concat\n// with adding support of @@isConcatSpreadable and @@species\n$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n concat: function concat(arg) {\n var O = toObject(this);\n var A = arraySpeciesCreate(O, 0);\n var n = 0;\n var i, k, length, len, E;\n for (i = -1, length = arguments.length; i < length; i++) {\n E = i === -1 ? O : arguments[i];\n if (isConcatSpreadable(E)) {\n len = lengthOfArrayLike(E);\n doesNotExceedSafeInteger(n + len);\n for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);\n } else {\n doesNotExceedSafeInteger(n + 1);\n createProperty(A, n++, E);\n }\n }\n A.length = n;\n return A;\n }\n});\n","'use strict';\nvar makeBuiltIn = require('../internals/make-built-in');\nvar defineProperty = require('../internals/object-define-property');\n\nmodule.exports = function (target, name, descriptor) {\n if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });\n if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });\n return defineProperty.f(target, name, descriptor);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar FUNCTION_NAME_EXISTS = require('../internals/function-name').EXISTS;\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\n\nvar FunctionPrototype = Function.prototype;\nvar functionToString = uncurryThis(FunctionPrototype.toString);\nvar nameRE = /function\\b(?:\\s|\\/\\*[\\S\\s]*?\\*\\/|\\/\\/[^\\n\\r]*[\\n\\r]+)*([^\\s(/]*)/;\nvar regExpExec = uncurryThis(nameRE.exec);\nvar NAME = 'name';\n\n// Function instances `.name` property\n// https://tc39.es/ecma262/#sec-function-instances-name\nif (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {\n defineBuiltInAccessor(FunctionPrototype, NAME, {\n configurable: true,\n get: function () {\n try {\n return regExpExec(nameRE, functionToString(this))[1];\n } catch (error) {\n return '';\n }\n }\n });\n}\n","'use strict';\nvar internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\n// `Object.keys` method\n// https://tc39.es/ecma262/#sec-object.keys\n// eslint-disable-next-line es/no-object-keys -- safe\nmodule.exports = Object.keys || function keys(O) {\n return internalObjectKeys(O, enumBugKeys);\n};\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar call = require('../internals/function-call');\nvar fails = require('../internals/fails');\nvar objectKeys = require('../internals/object-keys');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\n\n// eslint-disable-next-line es/no-object-assign -- safe\nvar $assign = Object.assign;\n// eslint-disable-next-line es/no-object-defineproperty -- required for testing\nvar defineProperty = Object.defineProperty;\nvar concat = uncurryThis([].concat);\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\nmodule.exports = !$assign || fails(function () {\n // should have correct order of operations (Edge bug)\n if (DESCRIPTORS && $assign({ b: 1 }, $assign(defineProperty({}, 'a', {\n enumerable: true,\n get: function () {\n defineProperty(this, 'b', {\n value: 3,\n enumerable: false\n });\n }\n }), { b: 2 })).b !== 1) return true;\n // should work with symbols and should have deterministic property order (V8 bug)\n var A = {};\n var B = {};\n // eslint-disable-next-line es/no-symbol -- safe\n var symbol = Symbol('assign detection');\n var alphabet = 'abcdefghijklmnopqrst';\n A[symbol] = 7;\n alphabet.split('').forEach(function (chr) { B[chr] = chr; });\n return $assign({}, A)[symbol] !== 7 || objectKeys($assign({}, B)).join('') !== alphabet;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length`\n var T = toObject(target);\n var argumentsLength = arguments.length;\n var index = 1;\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n var propertyIsEnumerable = propertyIsEnumerableModule.f;\n while (argumentsLength > index) {\n var S = IndexedObject(arguments[index++]);\n var keys = getOwnPropertySymbols ? concat(objectKeys(S), getOwnPropertySymbols(S)) : objectKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || call(propertyIsEnumerable, S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n","'use strict';\nvar $ = require('../internals/export');\nvar assign = require('../internals/object-assign');\n\n// `Object.assign` method\n// https://tc39.es/ecma262/#sec-object.assign\n// eslint-disable-next-line es/no-object-assign -- required for testing\n$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {\n assign: assign\n});\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar classof = require('../internals/classof');\n\n// `Object.prototype.toString` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nmodule.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() {\n return '[object ' + classof(this) + ']';\n};\n","'use strict';\nvar TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar toString = require('../internals/object-to-string');\n\n// `Object.prototype.toString` method\n// https://tc39.es/ecma262/#sec-object.prototype.tostring\nif (!TO_STRING_TAG_SUPPORT) {\n defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });\n}\n","'use strict';\nvar global = require('../internals/global');\nvar classof = require('../internals/classof-raw');\n\nmodule.exports = classof(global.process) === 'process';\n","'use strict';\nvar global = require('../internals/global');\nvar apply = require('../internals/function-apply');\nvar bind = require('../internals/function-bind-context');\nvar isCallable = require('../internals/is-callable');\nvar hasOwn = require('../internals/has-own-property');\nvar fails = require('../internals/fails');\nvar html = require('../internals/html');\nvar arraySlice = require('../internals/array-slice');\nvar createElement = require('../internals/document-create-element');\nvar validateArgumentsLength = require('../internals/validate-arguments-length');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar set = global.setImmediate;\nvar clear = global.clearImmediate;\nvar process = global.process;\nvar Dispatch = global.Dispatch;\nvar Function = global.Function;\nvar MessageChannel = global.MessageChannel;\nvar String = global.String;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar $location, defer, channel, port;\n\nfails(function () {\n // Deno throws a ReferenceError on `location` access without `--location` flag\n $location = global.location;\n});\n\nvar run = function (id) {\n if (hasOwn(queue, id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\n\nvar runner = function (id) {\n return function () {\n run(id);\n };\n};\n\nvar eventListener = function (event) {\n run(event.data);\n};\n\nvar globalPostMessageDefer = function (id) {\n // old engines have not location.origin\n global.postMessage(String(id), $location.protocol + '//' + $location.host);\n};\n\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!set || !clear) {\n set = function setImmediate(handler) {\n validateArgumentsLength(arguments.length, 1);\n var fn = isCallable(handler) ? handler : Function(handler);\n var args = arraySlice(arguments, 1);\n queue[++counter] = function () {\n apply(fn, undefined, args);\n };\n defer(counter);\n return counter;\n };\n clear = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (IS_NODE) {\n defer = function (id) {\n process.nextTick(runner(id));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(runner(id));\n };\n // Browsers with MessageChannel, includes WebWorkers\n // except iOS - https://github.com/zloirock/core-js/issues/624\n } else if (MessageChannel && !IS_IOS) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = eventListener;\n defer = bind(port.postMessage, port);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (\n global.addEventListener &&\n isCallable(global.postMessage) &&\n !global.importScripts &&\n $location && $location.protocol !== 'file:' &&\n !fails(globalPostMessageDefer)\n ) {\n defer = globalPostMessageDefer;\n global.addEventListener('message', eventListener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in createElement('script')) {\n defer = function (id) {\n html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(runner(id), 0);\n };\n }\n}\n\nmodule.exports = {\n set: set,\n clear: clear\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar aCallable = require('../internals/a-callable');\n\nmodule.exports = function (object, key, method) {\n try {\n // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe\n return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));\n } catch (error) { /* empty */ }\n};\n","'use strict';\nvar isCallable = require('../internals/is-callable');\n\nvar $String = String;\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument) {\n if (typeof argument == 'object' || isCallable(argument)) return argument;\n throw new $TypeError(\"Can't set \" + $String(argument) + ' as a prototype');\n};\n","'use strict';\n/* eslint-disable no-proto -- safe */\nvar uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');\nvar anObject = require('../internals/an-object');\nvar aPossiblePrototype = require('../internals/a-possible-prototype');\n\n// `Object.setPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.setprototypeof\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n// eslint-disable-next-line es/no-object-setprototypeof -- safe\nmodule.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () {\n var CORRECT_SETTER = false;\n var test = {};\n var setter;\n try {\n setter = uncurryThisAccessor(Object.prototype, '__proto__', 'set');\n setter(test, []);\n CORRECT_SETTER = test instanceof Array;\n } catch (error) { /* empty */ }\n return function setPrototypeOf(O, proto) {\n anObject(O);\n aPossiblePrototype(proto);\n if (CORRECT_SETTER) setter(O, proto);\n else O.__proto__ = proto;\n return O;\n };\n}() : undefined);\n","'use strict';\nvar defineProperty = require('../internals/object-define-property').f;\nvar hasOwn = require('../internals/has-own-property');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\n\nmodule.exports = function (target, TAG, STATIC) {\n if (target && !STATIC) target = target.prototype;\n if (target && !hasOwn(target, TO_STRING_TAG)) {\n defineProperty(target, TO_STRING_TAG, { configurable: true, value: TAG });\n }\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\nvar defineBuiltInAccessor = require('../internals/define-built-in-accessor');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar SPECIES = wellKnownSymbol('species');\n\nmodule.exports = function (CONSTRUCTOR_NAME) {\n var Constructor = getBuiltIn(CONSTRUCTOR_NAME);\n\n if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) {\n defineBuiltInAccessor(Constructor, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n }\n};\n","'use strict';\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (it, Prototype) {\n if (isPrototypeOf(Prototype, it)) return it;\n throw new $TypeError('Incorrect invocation');\n};\n","'use strict';\nvar isConstructor = require('../internals/is-constructor');\nvar tryToString = require('../internals/try-to-string');\n\nvar $TypeError = TypeError;\n\n// `Assert: IsConstructor(argument) is true`\nmodule.exports = function (argument) {\n if (isConstructor(argument)) return argument;\n throw new $TypeError(tryToString(argument) + ' is not a constructor');\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar aConstructor = require('../internals/a-constructor');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar SPECIES = wellKnownSymbol('species');\n\n// `SpeciesConstructor` abstract operation\n// https://tc39.es/ecma262/#sec-speciesconstructor\nmodule.exports = function (O, defaultConstructor) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || isNullOrUndefined(S = anObject(C)[SPECIES]) ? defaultConstructor : aConstructor(S);\n};\n","'use strict';\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar FunctionPrototype = Function.prototype;\nvar apply = FunctionPrototype.apply;\nvar call = FunctionPrototype.call;\n\n// eslint-disable-next-line es/no-reflect -- safe\nmodule.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {\n return call.apply(apply, arguments);\n});\n","'use strict';\nvar classofRaw = require('../internals/classof-raw');\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = function (fn) {\n // Nashorn bug:\n // https://github.com/zloirock/core-js/issues/1128\n // https://github.com/zloirock/core-js/issues/1130\n if (classofRaw(fn) === 'Function') return uncurryThis(fn);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this-clause');\nvar aCallable = require('../internals/a-callable');\nvar NATIVE_BIND = require('../internals/function-bind-native');\n\nvar bind = uncurryThis(uncurryThis.bind);\n\n// optional / simple context binding\nmodule.exports = function (fn, that) {\n aCallable(fn);\n return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","'use strict';\nvar getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('document', 'documentElement');\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\n\nmodule.exports = uncurryThis([].slice);\n","'use strict';\nvar $TypeError = TypeError;\n\nmodule.exports = function (passed, required) {\n if (passed < required) throw new $TypeError('Not enough arguments');\n return passed;\n};\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\n// eslint-disable-next-line redos/no-vulnerable -- safe\nmodule.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);\n","'use strict';\nvar Queue = function () {\n this.head = null;\n this.tail = null;\n};\n\nQueue.prototype = {\n add: function (item) {\n var entry = { item: item, next: null };\n var tail = this.tail;\n if (tail) tail.next = entry;\n else this.head = entry;\n this.tail = entry;\n },\n get: function () {\n var entry = this.head;\n if (entry) {\n var next = this.head = entry.next;\n if (next === null) this.tail = null;\n return entry.item;\n }\n }\n};\n\nmodule.exports = Queue;\n","'use strict';\nvar global = require('../internals/global');\nvar bind = require('../internals/function-bind-context');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar macrotask = require('../internals/task').set;\nvar Queue = require('../internals/queue');\nvar IS_IOS = require('../internals/engine-is-ios');\nvar IS_IOS_PEBBLE = require('../internals/engine-is-ios-pebble');\nvar IS_WEBOS_WEBKIT = require('../internals/engine-is-webos-webkit');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar MutationObserver = global.MutationObserver || global.WebKitMutationObserver;\nvar document = global.document;\nvar process = global.process;\nvar Promise = global.Promise;\n// Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`\nvar queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');\nvar microtask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;\nvar notify, toggle, node, promise, then;\n\n// modern engines have queueMicrotask method\nif (!microtask) {\n var queue = new Queue();\n\n var flush = function () {\n var parent, fn;\n if (IS_NODE && (parent = process.domain)) parent.exit();\n while (fn = queue.get()) try {\n fn();\n } catch (error) {\n if (queue.head) notify();\n throw error;\n }\n if (parent) parent.enter();\n };\n\n // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339\n // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898\n if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {\n toggle = true;\n node = document.createTextNode('');\n new MutationObserver(flush).observe(node, { characterData: true });\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n promise = Promise.resolve(undefined);\n // workaround of WebKit ~ iOS Safari 10.1 bug\n promise.constructor = Promise;\n then = bind(promise.then, promise);\n notify = function () {\n then(flush);\n };\n // Node.js without promises\n } else if (IS_NODE) {\n notify = function () {\n process.nextTick(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessage\n // - onreadystatechange\n // - setTimeout\n } else {\n // `webpack` dev server bug on IE global methods - use bind(fn, global)\n macrotask = bind(macrotask, global);\n notify = function () {\n macrotask(flush);\n };\n }\n\n microtask = function (fn) {\n if (!queue.head) notify();\n queue.add(fn);\n };\n}\n\nmodule.exports = microtask;\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';\n","'use strict';\nvar userAgent = require('../internals/engine-user-agent');\n\nmodule.exports = /web0s(?!.*chrome)/i.test(userAgent);\n","'use strict';\nmodule.exports = function (exec) {\n try {\n return { error: false, value: exec() };\n } catch (error) {\n return { error: true, value: error };\n }\n};\n","'use strict';\nvar global = require('../internals/global');\n\nmodule.exports = global.Promise;\n","'use strict';\n/* global Deno -- Deno case */\nmodule.exports = typeof Deno == 'object' && Deno && typeof Deno.version == 'object';\n","'use strict';\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_NODE = require('../internals/engine-is-node');\n\nmodule.exports = !IS_DENO && !IS_NODE\n && typeof window == 'object'\n && typeof document == 'object';\n","'use strict';\nvar global = require('../internals/global');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar isCallable = require('../internals/is-callable');\nvar isForced = require('../internals/is-forced');\nvar inspectSource = require('../internals/inspect-source');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_BROWSER = require('../internals/engine-is-browser');\nvar IS_DENO = require('../internals/engine-is-deno');\nvar IS_PURE = require('../internals/is-pure');\nvar V8_VERSION = require('../internals/engine-v8-version');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar SPECIES = wellKnownSymbol('species');\nvar SUBCLASSING = false;\nvar NATIVE_PROMISE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);\n\nvar FORCED_PROMISE_CONSTRUCTOR = isForced('Promise', function () {\n var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(NativePromiseConstructor);\n var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(NativePromiseConstructor);\n // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // We can't detect it synchronously, so just check versions\n if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;\n // We need Promise#{ catch, finally } in the pure version for preventing prototype pollution\n if (IS_PURE && !(NativePromisePrototype['catch'] && NativePromisePrototype['finally'])) return true;\n // We can't use @@species feature detection in V8 since it causes\n // deoptimization and performance degradation\n // https://github.com/zloirock/core-js/issues/679\n if (!V8_VERSION || V8_VERSION < 51 || !/native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) {\n // Detect correctness of subclassing with @@species support\n var promise = new NativePromiseConstructor(function (resolve) { resolve(1); });\n var FakePromise = function (exec) {\n exec(function () { /* empty */ }, function () { /* empty */ });\n };\n var constructor = promise.constructor = {};\n constructor[SPECIES] = FakePromise;\n SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;\n if (!SUBCLASSING) return true;\n // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n } return !GLOBAL_CORE_JS_PROMISE && (IS_BROWSER || IS_DENO) && !NATIVE_PROMISE_REJECTION_EVENT;\n});\n\nmodule.exports = {\n CONSTRUCTOR: FORCED_PROMISE_CONSTRUCTOR,\n REJECTION_EVENT: NATIVE_PROMISE_REJECTION_EVENT,\n SUBCLASSING: SUBCLASSING\n};\n","'use strict';\nvar aCallable = require('../internals/a-callable');\n\nvar $TypeError = TypeError;\n\nvar PromiseCapability = function (C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw new $TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aCallable(resolve);\n this.reject = aCallable(reject);\n};\n\n// `NewPromiseCapability` abstract operation\n// https://tc39.es/ecma262/#sec-newpromisecapability\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar IS_NODE = require('../internals/engine-is-node');\nvar global = require('../internals/global');\nvar call = require('../internals/function-call');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar setSpecies = require('../internals/set-species');\nvar aCallable = require('../internals/a-callable');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar anInstance = require('../internals/an-instance');\nvar speciesConstructor = require('../internals/species-constructor');\nvar task = require('../internals/task').set;\nvar microtask = require('../internals/microtask');\nvar hostReportErrors = require('../internals/host-report-errors');\nvar perform = require('../internals/perform');\nvar Queue = require('../internals/queue');\nvar InternalStateModule = require('../internals/internal-state');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar PromiseConstructorDetection = require('../internals/promise-constructor-detection');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\n\nvar PROMISE = 'Promise';\nvar FORCED_PROMISE_CONSTRUCTOR = PromiseConstructorDetection.CONSTRUCTOR;\nvar NATIVE_PROMISE_REJECTION_EVENT = PromiseConstructorDetection.REJECTION_EVENT;\nvar NATIVE_PROMISE_SUBCLASSING = PromiseConstructorDetection.SUBCLASSING;\nvar getInternalPromiseState = InternalStateModule.getterFor(PROMISE);\nvar setInternalState = InternalStateModule.set;\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\nvar PromiseConstructor = NativePromiseConstructor;\nvar PromisePrototype = NativePromisePrototype;\nvar TypeError = global.TypeError;\nvar document = global.document;\nvar process = global.process;\nvar newPromiseCapability = newPromiseCapabilityModule.f;\nvar newGenericPromiseCapability = newPromiseCapability;\n\nvar DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);\nvar UNHANDLED_REJECTION = 'unhandledrejection';\nvar REJECTION_HANDLED = 'rejectionhandled';\nvar PENDING = 0;\nvar FULFILLED = 1;\nvar REJECTED = 2;\nvar HANDLED = 1;\nvar UNHANDLED = 2;\n\nvar Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && isCallable(then = it.then) ? then : false;\n};\n\nvar callReaction = function (reaction, state) {\n var value = state.value;\n var ok = state.state === FULFILLED;\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (state.rejection === UNHANDLED) onHandleUnhandled(state);\n state.rejection = HANDLED;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // can throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(new TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n call(then, result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (error) {\n if (domain && !exited) domain.exit();\n reject(error);\n }\n};\n\nvar notify = function (state, isReject) {\n if (state.notified) return;\n state.notified = true;\n microtask(function () {\n var reactions = state.reactions;\n var reaction;\n while (reaction = reactions.get()) {\n callReaction(reaction, state);\n }\n state.notified = false;\n if (isReject && !state.rejection) onUnhandled(state);\n });\n};\n\nvar dispatchEvent = function (name, promise, reason) {\n var event, handler;\n if (DISPATCH_EVENT) {\n event = document.createEvent('Event');\n event.promise = promise;\n event.reason = reason;\n event.initEvent(name, false, true);\n global.dispatchEvent(event);\n } else event = { promise: promise, reason: reason };\n if (!NATIVE_PROMISE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);\n else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);\n};\n\nvar onUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n var value = state.value;\n var IS_UNHANDLED = isUnhandled(state);\n var result;\n if (IS_UNHANDLED) {\n result = perform(function () {\n if (IS_NODE) {\n process.emit('unhandledRejection', value, promise);\n } else dispatchEvent(UNHANDLED_REJECTION, promise, value);\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;\n if (result.error) throw result.value;\n }\n });\n};\n\nvar isUnhandled = function (state) {\n return state.rejection !== HANDLED && !state.parent;\n};\n\nvar onHandleUnhandled = function (state) {\n call(task, global, function () {\n var promise = state.facade;\n if (IS_NODE) {\n process.emit('rejectionHandled', promise);\n } else dispatchEvent(REJECTION_HANDLED, promise, state.value);\n });\n};\n\nvar bind = function (fn, state, unwrap) {\n return function (value) {\n fn(state, value, unwrap);\n };\n};\n\nvar internalReject = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n state.value = value;\n state.state = REJECTED;\n notify(state, true);\n};\n\nvar internalResolve = function (state, value, unwrap) {\n if (state.done) return;\n state.done = true;\n if (unwrap) state = unwrap;\n try {\n if (state.facade === value) throw new TypeError(\"Promise can't be resolved itself\");\n var then = isThenable(value);\n if (then) {\n microtask(function () {\n var wrapper = { done: false };\n try {\n call(then, value,\n bind(internalResolve, wrapper, state),\n bind(internalReject, wrapper, state)\n );\n } catch (error) {\n internalReject(wrapper, error, state);\n }\n });\n } else {\n state.value = value;\n state.state = FULFILLED;\n notify(state, false);\n }\n } catch (error) {\n internalReject({ done: false }, error, state);\n }\n};\n\n// constructor polyfill\nif (FORCED_PROMISE_CONSTRUCTOR) {\n // 25.4.3.1 Promise(executor)\n PromiseConstructor = function Promise(executor) {\n anInstance(this, PromisePrototype);\n aCallable(executor);\n call(Internal, this);\n var state = getInternalPromiseState(this);\n try {\n executor(bind(internalResolve, state), bind(internalReject, state));\n } catch (error) {\n internalReject(state, error);\n }\n };\n\n PromisePrototype = PromiseConstructor.prototype;\n\n // eslint-disable-next-line no-unused-vars -- required for `.length`\n Internal = function Promise(executor) {\n setInternalState(this, {\n type: PROMISE,\n done: false,\n notified: false,\n parent: false,\n reactions: new Queue(),\n rejection: false,\n state: PENDING,\n value: undefined\n });\n };\n\n // `Promise.prototype.then` method\n // https://tc39.es/ecma262/#sec-promise.prototype.then\n Internal.prototype = defineBuiltIn(PromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var state = getInternalPromiseState(this);\n var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));\n state.parent = true;\n reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;\n reaction.fail = isCallable(onRejected) && onRejected;\n reaction.domain = IS_NODE ? process.domain : undefined;\n if (state.state === PENDING) state.reactions.add(reaction);\n else microtask(function () {\n callReaction(reaction, state);\n });\n return reaction.promise;\n });\n\n OwnPromiseCapability = function () {\n var promise = new Internal();\n var state = getInternalPromiseState(promise);\n this.promise = promise;\n this.resolve = bind(internalResolve, state);\n this.reject = bind(internalReject, state);\n };\n\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === PromiseConstructor || C === PromiseWrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n\n if (!IS_PURE && isCallable(NativePromiseConstructor) && NativePromisePrototype !== Object.prototype) {\n nativeThen = NativePromisePrototype.then;\n\n if (!NATIVE_PROMISE_SUBCLASSING) {\n // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs\n defineBuiltIn(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {\n var that = this;\n return new PromiseConstructor(function (resolve, reject) {\n call(nativeThen, that, resolve, reject);\n }).then(onFulfilled, onRejected);\n // https://github.com/zloirock/core-js/issues/640\n }, { unsafe: true });\n }\n\n // make `.constructor === Promise` work for native promise-based APIs\n try {\n delete NativePromisePrototype.constructor;\n } catch (error) { /* empty */ }\n\n // make `instanceof Promise` work for native promise-based APIs\n if (setPrototypeOf) {\n setPrototypeOf(NativePromisePrototype, PromisePrototype);\n }\n }\n}\n\n$({ global: true, constructor: true, wrap: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n Promise: PromiseConstructor\n});\n\nsetToStringTag(PromiseConstructor, PROMISE, false, true);\nsetSpecies(PROMISE);\n","'use strict';\nmodule.exports = function (a, b) {\n try {\n // eslint-disable-next-line no-console -- safe\n arguments.length === 1 ? console.error(a) : console.error(a, b);\n } catch (error) { /* empty */ }\n};\n","'use strict';\nmodule.exports = {};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayPrototype = Array.prototype;\n\n// check on default Array iterator\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it);\n};\n","'use strict';\nvar classof = require('../internals/classof');\nvar getMethod = require('../internals/get-method');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar Iterators = require('../internals/iterators');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\n\nmodule.exports = function (it) {\n if (!isNullOrUndefined(it)) return getMethod(it, ITERATOR)\n || getMethod(it, '@@iterator')\n || Iterators[classof(it)];\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar getIteratorMethod = require('../internals/get-iterator-method');\n\nvar $TypeError = TypeError;\n\nmodule.exports = function (argument, usingIterator) {\n var iteratorMethod = arguments.length < 2 ? getIteratorMethod(argument) : usingIterator;\n if (aCallable(iteratorMethod)) return anObject(call(iteratorMethod, argument));\n throw new $TypeError(tryToString(argument) + ' is not iterable');\n};\n","'use strict';\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar getMethod = require('../internals/get-method');\n\nmodule.exports = function (iterator, kind, value) {\n var innerResult, innerError;\n anObject(iterator);\n try {\n innerResult = getMethod(iterator, 'return');\n if (!innerResult) {\n if (kind === 'throw') throw value;\n return value;\n }\n innerResult = call(innerResult, iterator);\n } catch (error) {\n innerError = true;\n innerResult = error;\n }\n if (kind === 'throw') throw value;\n if (innerError) throw innerResult;\n anObject(innerResult);\n return value;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar call = require('../internals/function-call');\nvar anObject = require('../internals/an-object');\nvar tryToString = require('../internals/try-to-string');\nvar isArrayIteratorMethod = require('../internals/is-array-iterator-method');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar getIterator = require('../internals/get-iterator');\nvar getIteratorMethod = require('../internals/get-iterator-method');\nvar iteratorClose = require('../internals/iterator-close');\n\nvar $TypeError = TypeError;\n\nvar Result = function (stopped, result) {\n this.stopped = stopped;\n this.result = result;\n};\n\nvar ResultPrototype = Result.prototype;\n\nmodule.exports = function (iterable, unboundFunction, options) {\n var that = options && options.that;\n var AS_ENTRIES = !!(options && options.AS_ENTRIES);\n var IS_RECORD = !!(options && options.IS_RECORD);\n var IS_ITERATOR = !!(options && options.IS_ITERATOR);\n var INTERRUPTED = !!(options && options.INTERRUPTED);\n var fn = bind(unboundFunction, that);\n var iterator, iterFn, index, length, result, next, step;\n\n var stop = function (condition) {\n if (iterator) iteratorClose(iterator, 'normal', condition);\n return new Result(true, condition);\n };\n\n var callFn = function (value) {\n if (AS_ENTRIES) {\n anObject(value);\n return INTERRUPTED ? fn(value[0], value[1], stop) : fn(value[0], value[1]);\n } return INTERRUPTED ? fn(value, stop) : fn(value);\n };\n\n if (IS_RECORD) {\n iterator = iterable.iterator;\n } else if (IS_ITERATOR) {\n iterator = iterable;\n } else {\n iterFn = getIteratorMethod(iterable);\n if (!iterFn) throw new $TypeError(tryToString(iterable) + ' is not iterable');\n // optimisation for array iterators\n if (isArrayIteratorMethod(iterFn)) {\n for (index = 0, length = lengthOfArrayLike(iterable); length > index; index++) {\n result = callFn(iterable[index]);\n if (result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n }\n iterator = getIterator(iterable, iterFn);\n }\n\n next = IS_RECORD ? iterable.next : iterator.next;\n while (!(step = call(next, iterator)).done) {\n try {\n result = callFn(step.value);\n } catch (error) {\n iteratorClose(iterator, 'throw', error);\n }\n if (typeof result == 'object' && result && isPrototypeOf(ResultPrototype, result)) return result;\n } return new Result(false);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var called = 0;\n var iteratorWithReturn = {\n next: function () {\n return { done: !!called++ };\n },\n 'return': function () {\n SAFE_CLOSING = true;\n }\n };\n iteratorWithReturn[ITERATOR] = function () {\n return this;\n };\n // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing\n Array.from(iteratorWithReturn, function () { throw 2; });\n} catch (error) { /* empty */ }\n\nmodule.exports = function (exec, SKIP_CLOSING) {\n try {\n if (!SKIP_CLOSING && !SAFE_CLOSING) return false;\n } catch (error) { return false; } // workaround of old WebKit + `eval` bug\n var ITERATION_SUPPORT = false;\n try {\n var object = {};\n object[ITERATOR] = function () {\n return {\n next: function () {\n return { done: ITERATION_SUPPORT = true };\n }\n };\n };\n exec(object);\n } catch (error) { /* empty */ }\n return ITERATION_SUPPORT;\n};\n","'use strict';\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\nmodule.exports = FORCED_PROMISE_CONSTRUCTOR || !checkCorrectnessOfIteration(function (iterable) {\n NativePromiseConstructor.all(iterable).then(undefined, function () { /* empty */ });\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.all` method\n// https://tc39.es/ecma262/#sec-promise.all\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n var values = [];\n var counter = 0;\n var remaining = 1;\n iterate(iterable, function (promise) {\n var index = counter++;\n var alreadyCalled = false;\n remaining++;\n call($promiseResolve, C, promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar IS_PURE = require('../internals/is-pure');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar getBuiltIn = require('../internals/get-built-in');\nvar isCallable = require('../internals/is-callable');\nvar defineBuiltIn = require('../internals/define-built-in');\n\nvar NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;\n\n// `Promise.prototype.catch` method\n// https://tc39.es/ecma262/#sec-promise.prototype.catch\n$({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: true }, {\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n});\n\n// makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`\nif (!IS_PURE && isCallable(NativePromiseConstructor)) {\n var method = getBuiltIn('Promise').prototype['catch'];\n if (NativePromisePrototype['catch'] !== method) {\n defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });\n }\n}\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar aCallable = require('../internals/a-callable');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar perform = require('../internals/perform');\nvar iterate = require('../internals/iterate');\nvar PROMISE_STATICS_INCORRECT_ITERATION = require('../internals/promise-statics-incorrect-iteration');\n\n// `Promise.race` method\n// https://tc39.es/ecma262/#sec-promise.race\n$({ target: 'Promise', stat: true, forced: PROMISE_STATICS_INCORRECT_ITERATION }, {\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapabilityModule.f(C);\n var reject = capability.reject;\n var result = perform(function () {\n var $promiseResolve = aCallable(C.resolve);\n iterate(iterable, function (promise) {\n call($promiseResolve, C, promise).then(capability.resolve, reject);\n });\n });\n if (result.error) reject(result.value);\n return capability.promise;\n }\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar newPromiseCapabilityModule = require('../internals/new-promise-capability');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\n\n// `Promise.reject` method\n// https://tc39.es/ecma262/#sec-promise.reject\n$({ target: 'Promise', stat: true, forced: FORCED_PROMISE_CONSTRUCTOR }, {\n reject: function reject(r) {\n var capability = newPromiseCapabilityModule.f(this);\n call(capability.reject, undefined, r);\n return capability.promise;\n }\n});\n","'use strict';\nvar anObject = require('../internals/an-object');\nvar isObject = require('../internals/is-object');\nvar newPromiseCapability = require('../internals/new-promise-capability');\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar getBuiltIn = require('../internals/get-built-in');\nvar IS_PURE = require('../internals/is-pure');\nvar NativePromiseConstructor = require('../internals/promise-native-constructor');\nvar FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detection').CONSTRUCTOR;\nvar promiseResolve = require('../internals/promise-resolve');\n\nvar PromiseConstructorWrapper = getBuiltIn('Promise');\nvar CHECK_WRAPPER = IS_PURE && !FORCED_PROMISE_CONSTRUCTOR;\n\n// `Promise.resolve` method\n// https://tc39.es/ecma262/#sec-promise.resolve\n$({ target: 'Promise', stat: true, forced: IS_PURE || FORCED_PROMISE_CONSTRUCTOR }, {\n resolve: function resolve(x) {\n return promiseResolve(CHECK_WRAPPER && this === PromiseConstructorWrapper ? NativePromiseConstructor : this, x);\n }\n});\n","'use strict';\nvar DESCRIPTORS = require('../internals/descriptors');\nvar V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');\nvar definePropertyModule = require('../internals/object-define-property');\nvar anObject = require('../internals/an-object');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar objectKeys = require('../internals/object-keys');\n\n// `Object.defineProperties` method\n// https://tc39.es/ecma262/#sec-object.defineproperties\n// eslint-disable-next-line es/no-object-defineproperties -- safe\nexports.f = DESCRIPTORS && !V8_PROTOTYPE_DEFINE_BUG ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var props = toIndexedObject(Properties);\n var keys = objectKeys(Properties);\n var length = keys.length;\n var index = 0;\n var key;\n while (length > index) definePropertyModule.f(O, key = keys[index++], props[key]);\n return O;\n};\n","'use strict';\n/* global ActiveXObject -- old IE, WSH */\nvar anObject = require('../internals/an-object');\nvar definePropertiesModule = require('../internals/object-define-properties');\nvar enumBugKeys = require('../internals/enum-bug-keys');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar html = require('../internals/html');\nvar documentCreateElement = require('../internals/document-create-element');\nvar sharedKey = require('../internals/shared-key');\n\nvar GT = '>';\nvar LT = '<';\nvar PROTOTYPE = 'prototype';\nvar SCRIPT = 'script';\nvar IE_PROTO = sharedKey('IE_PROTO');\n\nvar EmptyConstructor = function () { /* empty */ };\n\nvar scriptTag = function (content) {\n return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;\n};\n\n// Create object with fake `null` prototype: use ActiveX Object with cleared prototype\nvar NullProtoObjectViaActiveX = function (activeXDocument) {\n activeXDocument.write(scriptTag(''));\n activeXDocument.close();\n var temp = activeXDocument.parentWindow.Object;\n activeXDocument = null; // avoid memory leak\n return temp;\n};\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar NullProtoObjectViaIFrame = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = documentCreateElement('iframe');\n var JS = 'java' + SCRIPT + ':';\n var iframeDocument;\n iframe.style.display = 'none';\n html.appendChild(iframe);\n // https://github.com/zloirock/core-js/issues/475\n iframe.src = String(JS);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(scriptTag('document.F=Object'));\n iframeDocument.close();\n return iframeDocument.F;\n};\n\n// Check for document.domain and active x support\n// No need to use active x approach when document.domain is not set\n// see https://github.com/es-shims/es5-shim/issues/150\n// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346\n// avoid IE GC bug\nvar activeXDocument;\nvar NullProtoObject = function () {\n try {\n activeXDocument = new ActiveXObject('htmlfile');\n } catch (error) { /* ignore */ }\n NullProtoObject = typeof document != 'undefined'\n ? document.domain && activeXDocument\n ? NullProtoObjectViaActiveX(activeXDocument) // old IE\n : NullProtoObjectViaIFrame()\n : NullProtoObjectViaActiveX(activeXDocument); // WSH\n var length = enumBugKeys.length;\n while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];\n return NullProtoObject();\n};\n\nhiddenKeys[IE_PROTO] = true;\n\n// `Object.create` method\n// https://tc39.es/ecma262/#sec-object.create\n// eslint-disable-next-line es/no-object-create -- safe\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n EmptyConstructor[PROTOTYPE] = anObject(O);\n result = new EmptyConstructor();\n EmptyConstructor[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = NullProtoObject();\n return Properties === undefined ? result : definePropertiesModule.f(result, Properties);\n};\n","'use strict';\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar create = require('../internals/object-create');\nvar defineProperty = require('../internals/object-define-property').f;\n\nvar UNSCOPABLES = wellKnownSymbol('unscopables');\nvar ArrayPrototype = Array.prototype;\n\n// Array.prototype[@@unscopables]\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\nif (ArrayPrototype[UNSCOPABLES] === undefined) {\n defineProperty(ArrayPrototype, UNSCOPABLES, {\n configurable: true,\n value: create(null)\n });\n}\n\n// add a key to Array.prototype[@@unscopables]\nmodule.exports = function (key) {\n ArrayPrototype[UNSCOPABLES][key] = true;\n};\n","'use strict';\nvar fails = require('../internals/fails');\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar create = require('../internals/object-create');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar BUGGY_SAFARI_ITERATORS = false;\n\n// `%IteratorPrototype%` object\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-object\nvar IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator;\n\n/* eslint-disable es/no-array-prototype-keys -- safe */\nif ([].keys) {\n arrayIterator = [].keys();\n // Safari 8 has buggy iterators w/o `next`\n if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true;\n else {\n PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator));\n if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype;\n }\n}\n\nvar NEW_ITERATOR_PROTOTYPE = !isObject(IteratorPrototype) || fails(function () {\n var test = {};\n // FF44- legacy iterators case\n return IteratorPrototype[ITERATOR].call(test) !== test;\n});\n\nif (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {};\nelse if (IS_PURE) IteratorPrototype = create(IteratorPrototype);\n\n// `%IteratorPrototype%[@@iterator]()` method\n// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator\nif (!isCallable(IteratorPrototype[ITERATOR])) {\n defineBuiltIn(IteratorPrototype, ITERATOR, function () {\n return this;\n });\n}\n\nmodule.exports = {\n IteratorPrototype: IteratorPrototype,\n BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n function F() { /* empty */ }\n F.prototype.constructor = null;\n // eslint-disable-next-line es/no-object-getprototypeof -- required for testing\n return Object.getPrototypeOf(new F()) !== F.prototype;\n});\n","'use strict';\nvar hasOwn = require('../internals/has-own-property');\nvar isCallable = require('../internals/is-callable');\nvar toObject = require('../internals/to-object');\nvar sharedKey = require('../internals/shared-key');\nvar CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');\n\nvar IE_PROTO = sharedKey('IE_PROTO');\nvar $Object = Object;\nvar ObjectPrototype = $Object.prototype;\n\n// `Object.getPrototypeOf` method\n// https://tc39.es/ecma262/#sec-object.getprototypeof\n// eslint-disable-next-line es/no-object-getprototypeof -- safe\nmodule.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {\n var object = toObject(O);\n if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];\n var constructor = object.constructor;\n if (isCallable(constructor) && object instanceof constructor) {\n return constructor.prototype;\n } return object instanceof $Object ? ObjectPrototype : null;\n};\n","'use strict';\nvar IteratorPrototype = require('../internals/iterators-core').IteratorPrototype;\nvar create = require('../internals/object-create');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar Iterators = require('../internals/iterators');\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (IteratorConstructor, NAME, next, ENUMERABLE_NEXT) {\n var TO_STRING_TAG = NAME + ' Iterator';\n IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(+!ENUMERABLE_NEXT, next) });\n setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true);\n Iterators[TO_STRING_TAG] = returnThis;\n return IteratorConstructor;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar IS_PURE = require('../internals/is-pure');\nvar FunctionName = require('../internals/function-name');\nvar isCallable = require('../internals/is-callable');\nvar createIteratorConstructor = require('../internals/iterator-create-constructor');\nvar getPrototypeOf = require('../internals/object-get-prototype-of');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar Iterators = require('../internals/iterators');\nvar IteratorsCore = require('../internals/iterators-core');\n\nvar PROPER_FUNCTION_NAME = FunctionName.PROPER;\nvar CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;\nvar IteratorPrototype = IteratorsCore.IteratorPrototype;\nvar BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS;\nvar ITERATOR = wellKnownSymbol('iterator');\nvar KEYS = 'keys';\nvar VALUES = 'values';\nvar ENTRIES = 'entries';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) {\n createIteratorConstructor(IteratorConstructor, NAME, next);\n\n var getIterationMethod = function (KIND) {\n if (KIND === DEFAULT && defaultIterator) return defaultIterator;\n if (!BUGGY_SAFARI_ITERATORS && KIND && KIND in IterablePrototype) return IterablePrototype[KIND];\n\n switch (KIND) {\n case KEYS: return function keys() { return new IteratorConstructor(this, KIND); };\n case VALUES: return function values() { return new IteratorConstructor(this, KIND); };\n case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); };\n }\n\n return function () { return new IteratorConstructor(this); };\n };\n\n var TO_STRING_TAG = NAME + ' Iterator';\n var INCORRECT_VALUES_NAME = false;\n var IterablePrototype = Iterable.prototype;\n var nativeIterator = IterablePrototype[ITERATOR]\n || IterablePrototype['@@iterator']\n || DEFAULT && IterablePrototype[DEFAULT];\n var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT);\n var anyNativeIterator = NAME === 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator;\n var CurrentIteratorPrototype, methods, KEY;\n\n // fix native\n if (anyNativeIterator) {\n CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable()));\n if (CurrentIteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) {\n if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) {\n if (setPrototypeOf) {\n setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);\n } else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {\n defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);\n }\n }\n // Set @@toStringTag to native iterators\n setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true);\n if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis;\n }\n }\n\n // fix Array.prototype.{ values, @@iterator }.name in V8 / FF\n if (PROPER_FUNCTION_NAME && DEFAULT === VALUES && nativeIterator && nativeIterator.name !== VALUES) {\n if (!IS_PURE && CONFIGURABLE_FUNCTION_NAME) {\n createNonEnumerableProperty(IterablePrototype, 'name', VALUES);\n } else {\n INCORRECT_VALUES_NAME = true;\n defaultIterator = function values() { return call(nativeIterator, this); };\n }\n }\n\n // export additional methods\n if (DEFAULT) {\n methods = {\n values: getIterationMethod(VALUES),\n keys: IS_SET ? defaultIterator : getIterationMethod(KEYS),\n entries: getIterationMethod(ENTRIES)\n };\n if (FORCED) for (KEY in methods) {\n if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {\n defineBuiltIn(IterablePrototype, KEY, methods[KEY]);\n }\n } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);\n }\n\n // define iterator\n if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {\n defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });\n }\n Iterators[NAME] = defaultIterator;\n\n return methods;\n};\n","'use strict';\n// `CreateIterResultObject` abstract operation\n// https://tc39.es/ecma262/#sec-createiterresultobject\nmodule.exports = function (value, done) {\n return { value: value, done: done };\n};\n","'use strict';\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar addToUnscopables = require('../internals/add-to-unscopables');\nvar Iterators = require('../internals/iterators');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineProperty = require('../internals/object-define-property').f;\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\nvar IS_PURE = require('../internals/is-pure');\nvar DESCRIPTORS = require('../internals/descriptors');\n\nvar ARRAY_ITERATOR = 'Array Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR);\n\n// `Array.prototype.entries` method\n// https://tc39.es/ecma262/#sec-array.prototype.entries\n// `Array.prototype.keys` method\n// https://tc39.es/ecma262/#sec-array.prototype.keys\n// `Array.prototype.values` method\n// https://tc39.es/ecma262/#sec-array.prototype.values\n// `Array.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-array.prototype-@@iterator\n// `CreateArrayIterator` internal method\n// https://tc39.es/ecma262/#sec-createarrayiterator\nmodule.exports = defineIterator(Array, 'Array', function (iterated, kind) {\n setInternalState(this, {\n type: ARRAY_ITERATOR,\n target: toIndexedObject(iterated), // target\n index: 0, // next index\n kind: kind // kind\n });\n// `%ArrayIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next\n}, function () {\n var state = getInternalState(this);\n var target = state.target;\n var index = state.index++;\n if (!target || index >= target.length) {\n state.target = undefined;\n return createIterResultObject(undefined, true);\n }\n switch (state.kind) {\n case 'keys': return createIterResultObject(index, false);\n case 'values': return createIterResultObject(target[index], false);\n } return createIterResultObject([index, target[index]], false);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values%\n// https://tc39.es/ecma262/#sec-createunmappedargumentsobject\n// https://tc39.es/ecma262/#sec-createmappedargumentsobject\nvar values = Iterators.Arguments = Iterators.Array;\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n// V8 ~ Chrome 45- bug\nif (!IS_PURE && DESCRIPTORS && values.name !== 'values') try {\n defineProperty(values, 'name', { value: 'values' });\n} catch (error) { /* empty */ }\n","'use strict';\nvar classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw new TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar toString = require('../internals/to-string');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nvar charAt = uncurryThis(''.charAt);\nvar charCodeAt = uncurryThis(''.charCodeAt);\nvar stringSlice = uncurryThis(''.slice);\n\nvar createMethod = function (CONVERT_TO_STRING) {\n return function ($this, pos) {\n var S = toString(requireObjectCoercible($this));\n var position = toIntegerOrInfinity(pos);\n var size = S.length;\n var first, second;\n if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined;\n first = charCodeAt(S, position);\n return first < 0xD800 || first > 0xDBFF || position + 1 === size\n || (second = charCodeAt(S, position + 1)) < 0xDC00 || second > 0xDFFF\n ? CONVERT_TO_STRING\n ? charAt(S, position)\n : first\n : CONVERT_TO_STRING\n ? stringSlice(S, position, position + 2)\n : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000;\n };\n};\n\nmodule.exports = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: createMethod(false),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: createMethod(true)\n};\n","'use strict';\nvar charAt = require('../internals/string-multibyte').charAt;\nvar toString = require('../internals/to-string');\nvar InternalStateModule = require('../internals/internal-state');\nvar defineIterator = require('../internals/iterator-define');\nvar createIterResultObject = require('../internals/create-iter-result-object');\n\nvar STRING_ITERATOR = 'String Iterator';\nvar setInternalState = InternalStateModule.set;\nvar getInternalState = InternalStateModule.getterFor(STRING_ITERATOR);\n\n// `String.prototype[@@iterator]` method\n// https://tc39.es/ecma262/#sec-string.prototype-@@iterator\ndefineIterator(String, 'String', function (iterated) {\n setInternalState(this, {\n type: STRING_ITERATOR,\n string: toString(iterated),\n index: 0\n });\n// `%StringIteratorPrototype%.next` method\n// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next\n}, function next() {\n var state = getInternalState(this);\n var string = state.string;\n var index = state.index;\n var point;\n if (index >= string.length) return createIterResultObject(undefined, true);\n point = charAt(string, index);\n state.index += point.length;\n return createIterResultObject(point, false);\n});\n","'use strict';\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar createProperty = require('../internals/create-property');\n\nvar $Array = Array;\nvar max = Math.max;\n\nmodule.exports = function (O, start, end) {\n var length = lengthOfArrayLike(O);\n var k = toAbsoluteIndex(start, length);\n var fin = toAbsoluteIndex(end === undefined ? length : end, length);\n var result = $Array(max(fin - k, 0));\n var n = 0;\n for (; k < fin; k++, n++) createProperty(result, n, O[k]);\n result.length = n;\n return result;\n};\n","'use strict';\n/* eslint-disable es/no-object-getownpropertynames -- safe */\nvar classof = require('../internals/classof-raw');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;\nvar arraySlice = require('../internals/array-slice-simple');\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return $getOwnPropertyNames(it);\n } catch (error) {\n return arraySlice(windowNames);\n }\n};\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && classof(it) === 'Window'\n ? getWindowNames(it)\n : $getOwnPropertyNames(toIndexedObject(it));\n};\n","'use strict';\n// FF26- bug: ArrayBuffers are non-extensible, but Object.isExtensible does not report it\nvar fails = require('../internals/fails');\n\nmodule.exports = fails(function () {\n if (typeof ArrayBuffer == 'function') {\n var buffer = new ArrayBuffer(8);\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-defineproperty -- safe\n if (Object.isExtensible(buffer)) Object.defineProperty(buffer, 'a', { value: 8 });\n }\n});\n","'use strict';\nvar fails = require('../internals/fails');\nvar isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar ARRAY_BUFFER_NON_EXTENSIBLE = require('../internals/array-buffer-non-extensible');\n\n// eslint-disable-next-line es/no-object-isextensible -- safe\nvar $isExtensible = Object.isExtensible;\nvar FAILS_ON_PRIMITIVES = fails(function () { $isExtensible(1); });\n\n// `Object.isExtensible` method\n// https://tc39.es/ecma262/#sec-object.isextensible\nmodule.exports = (FAILS_ON_PRIMITIVES || ARRAY_BUFFER_NON_EXTENSIBLE) ? function isExtensible(it) {\n if (!isObject(it)) return false;\n if (ARRAY_BUFFER_NON_EXTENSIBLE && classof(it) === 'ArrayBuffer') return false;\n return $isExtensible ? $isExtensible(it) : true;\n} : $isExtensible;\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = !fails(function () {\n // eslint-disable-next-line es/no-object-isextensible, es/no-object-preventextensions -- required for testing\n return Object.isExtensible(Object.preventExtensions({}));\n});\n","'use strict';\nvar $ = require('../internals/export');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar hiddenKeys = require('../internals/hidden-keys');\nvar isObject = require('../internals/is-object');\nvar hasOwn = require('../internals/has-own-property');\nvar defineProperty = require('../internals/object-define-property').f;\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');\nvar isExtensible = require('../internals/object-is-extensible');\nvar uid = require('../internals/uid');\nvar FREEZING = require('../internals/freezing');\n\nvar REQUIRED = false;\nvar METADATA = uid('meta');\nvar id = 0;\n\nvar setMetadata = function (it) {\n defineProperty(it, METADATA, { value: {\n objectID: 'O' + id++, // object ID\n weakData: {} // weak collections IDs\n } });\n};\n\nvar fastKey = function (it, create) {\n // return a primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMetadata(it);\n // return object ID\n } return it[METADATA].objectID;\n};\n\nvar getWeakData = function (it, create) {\n if (!hasOwn(it, METADATA)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMetadata(it);\n // return the store of weak collections IDs\n } return it[METADATA].weakData;\n};\n\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZING && REQUIRED && isExtensible(it) && !hasOwn(it, METADATA)) setMetadata(it);\n return it;\n};\n\nvar enable = function () {\n meta.enable = function () { /* empty */ };\n REQUIRED = true;\n var getOwnPropertyNames = getOwnPropertyNamesModule.f;\n var splice = uncurryThis([].splice);\n var test = {};\n test[METADATA] = 1;\n\n // prevent exposing of metadata key\n if (getOwnPropertyNames(test).length) {\n getOwnPropertyNamesModule.f = function (it) {\n var result = getOwnPropertyNames(it);\n for (var i = 0, length = result.length; i < length; i++) {\n if (result[i] === METADATA) {\n splice(result, i, 1);\n break;\n }\n } return result;\n };\n\n $({ target: 'Object', stat: true, forced: true }, {\n getOwnPropertyNames: getOwnPropertyNamesExternalModule.f\n });\n }\n};\n\nvar meta = module.exports = {\n enable: enable,\n fastKey: fastKey,\n getWeakData: getWeakData,\n onFreeze: onFreeze\n};\n\nhiddenKeys[METADATA] = true;\n","'use strict';\nvar isCallable = require('../internals/is-callable');\nvar isObject = require('../internals/is-object');\nvar setPrototypeOf = require('../internals/object-set-prototype-of');\n\n// makes subclassing work correct for wrapped built-ins\nmodule.exports = function ($this, dummy, Wrapper) {\n var NewTarget, NewTargetPrototype;\n if (\n // it can work only with native `setPrototypeOf`\n setPrototypeOf &&\n // we haven't completely correct pre-ES6 way for getting `new.target`, so use this\n isCallable(NewTarget = dummy.constructor) &&\n NewTarget !== Wrapper &&\n isObject(NewTargetPrototype = NewTarget.prototype) &&\n NewTargetPrototype !== Wrapper.prototype\n ) setPrototypeOf($this, NewTargetPrototype);\n return $this;\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar global = require('../internals/global');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar isForced = require('../internals/is-forced');\nvar defineBuiltIn = require('../internals/define-built-in');\nvar InternalMetadataModule = require('../internals/internal-metadata');\nvar iterate = require('../internals/iterate');\nvar anInstance = require('../internals/an-instance');\nvar isCallable = require('../internals/is-callable');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar fails = require('../internals/fails');\nvar checkCorrectnessOfIteration = require('../internals/check-correctness-of-iteration');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar inheritIfRequired = require('../internals/inherit-if-required');\n\nmodule.exports = function (CONSTRUCTOR_NAME, wrapper, common) {\n var IS_MAP = CONSTRUCTOR_NAME.indexOf('Map') !== -1;\n var IS_WEAK = CONSTRUCTOR_NAME.indexOf('Weak') !== -1;\n var ADDER = IS_MAP ? 'set' : 'add';\n var NativeConstructor = global[CONSTRUCTOR_NAME];\n var NativePrototype = NativeConstructor && NativeConstructor.prototype;\n var Constructor = NativeConstructor;\n var exported = {};\n\n var fixMethod = function (KEY) {\n var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);\n defineBuiltIn(NativePrototype, KEY,\n KEY === 'add' ? function add(value) {\n uncurriedNativeMethod(this, value === 0 ? 0 : value);\n return this;\n } : KEY === 'delete' ? function (key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'get' ? function get(key) {\n return IS_WEAK && !isObject(key) ? undefined : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : KEY === 'has' ? function has(key) {\n return IS_WEAK && !isObject(key) ? false : uncurriedNativeMethod(this, key === 0 ? 0 : key);\n } : function set(key, value) {\n uncurriedNativeMethod(this, key === 0 ? 0 : key, value);\n return this;\n }\n );\n };\n\n var REPLACE = isForced(\n CONSTRUCTOR_NAME,\n !isCallable(NativeConstructor) || !(IS_WEAK || NativePrototype.forEach && !fails(function () {\n new NativeConstructor().entries().next();\n }))\n );\n\n if (REPLACE) {\n // create collection constructor\n Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);\n InternalMetadataModule.enable();\n } else if (isForced(CONSTRUCTOR_NAME, true)) {\n var instance = new Constructor();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) !== instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n // eslint-disable-next-line no-new -- required for testing\n var ACCEPT_ITERABLES = checkCorrectnessOfIteration(function (iterable) { new NativeConstructor(iterable); });\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new NativeConstructor();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n\n if (!ACCEPT_ITERABLES) {\n Constructor = wrapper(function (dummy, iterable) {\n anInstance(dummy, NativePrototype);\n var that = inheritIfRequired(new NativeConstructor(), dummy, Constructor);\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n return that;\n });\n Constructor.prototype = NativePrototype;\n NativePrototype.constructor = Constructor;\n }\n\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n\n // weak collections should not contains .clear method\n if (IS_WEAK && NativePrototype.clear) delete NativePrototype.clear;\n }\n\n exported[CONSTRUCTOR_NAME] = Constructor;\n $({ global: true, constructor: true, forced: Constructor !== NativeConstructor }, exported);\n\n setToStringTag(Constructor, CONSTRUCTOR_NAME);\n\n if (!IS_WEAK) common.setStrong(Constructor, CONSTRUCTOR_NAME, IS_MAP);\n\n return Constructor;\n};\n","'use strict';\nvar defineBuiltIn = require('../internals/define-built-in');\n\nmodule.exports = function (target, src, options) {\n for (var key in src) defineBuiltIn(target, key, src[key], options);\n return target;\n};\n","'use strict';\nvar bind = require('../internals/function-bind-context');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar IndexedObject = require('../internals/indexed-object');\nvar toObject = require('../internals/to-object');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar arraySpeciesCreate = require('../internals/array-species-create');\n\nvar push = uncurryThis([].push);\n\n// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation\nvar createMethod = function (TYPE) {\n var IS_MAP = TYPE === 1;\n var IS_FILTER = TYPE === 2;\n var IS_SOME = TYPE === 3;\n var IS_EVERY = TYPE === 4;\n var IS_FIND_INDEX = TYPE === 6;\n var IS_FILTER_REJECT = TYPE === 7;\n var NO_HOLES = TYPE === 5 || IS_FIND_INDEX;\n return function ($this, callbackfn, that, specificCreate) {\n var O = toObject($this);\n var self = IndexedObject(O);\n var length = lengthOfArrayLike(self);\n var boundFunction = bind(callbackfn, that);\n var index = 0;\n var create = specificCreate || arraySpeciesCreate;\n var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;\n var value, result;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n value = self[index];\n result = boundFunction(value, index, O);\n if (TYPE) {\n if (IS_MAP) target[index] = result; // map\n else if (result) switch (TYPE) {\n case 3: return true; // some\n case 5: return value; // find\n case 6: return index; // findIndex\n case 2: push(target, value); // filter\n } else switch (TYPE) {\n case 4: return false; // every\n case 7: push(target, value); // filterReject\n }\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: createMethod(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: createMethod(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: createMethod(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: createMethod(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: createMethod(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: createMethod(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: createMethod(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: createMethod(7)\n};\n","'use strict';\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar defineBuiltIns = require('../internals/define-built-ins');\nvar getWeakData = require('../internals/internal-metadata').getWeakData;\nvar anInstance = require('../internals/an-instance');\nvar anObject = require('../internals/an-object');\nvar isNullOrUndefined = require('../internals/is-null-or-undefined');\nvar isObject = require('../internals/is-object');\nvar iterate = require('../internals/iterate');\nvar ArrayIterationModule = require('../internals/array-iteration');\nvar hasOwn = require('../internals/has-own-property');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar setInternalState = InternalStateModule.set;\nvar internalStateGetterFor = InternalStateModule.getterFor;\nvar find = ArrayIterationModule.find;\nvar findIndex = ArrayIterationModule.findIndex;\nvar splice = uncurryThis([].splice);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (state) {\n return state.frozen || (state.frozen = new UncaughtFrozenStore());\n};\n\nvar UncaughtFrozenStore = function () {\n this.entries = [];\n};\n\nvar findUncaughtFrozen = function (store, key) {\n return find(store.entries, function (it) {\n return it[0] === key;\n });\n};\n\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.entries.push([key, value]);\n },\n 'delete': function (key) {\n var index = findIndex(this.entries, function (it) {\n return it[0] === key;\n });\n if (~index) splice(this.entries, index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER) {\n var Constructor = wrapper(function (that, iterable) {\n anInstance(that, Prototype);\n setInternalState(that, {\n type: CONSTRUCTOR_NAME,\n id: id++,\n frozen: undefined\n });\n if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });\n });\n\n var Prototype = Constructor.prototype;\n\n var getInternalState = internalStateGetterFor(CONSTRUCTOR_NAME);\n\n var define = function (that, key, value) {\n var state = getInternalState(that);\n var data = getWeakData(anObject(key), true);\n if (data === true) uncaughtFrozenStore(state).set(key, value);\n else data[state.id] = value;\n return that;\n };\n\n defineBuiltIns(Prototype, {\n // `{ WeakMap, WeakSet }.prototype.delete(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.delete\n // https://tc39.es/ecma262/#sec-weakset.prototype.delete\n 'delete': function (key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state)['delete'](key);\n return data && hasOwn(data, state.id) && delete data[state.id];\n },\n // `{ WeakMap, WeakSet }.prototype.has(key)` methods\n // https://tc39.es/ecma262/#sec-weakmap.prototype.has\n // https://tc39.es/ecma262/#sec-weakset.prototype.has\n has: function has(key) {\n var state = getInternalState(this);\n if (!isObject(key)) return false;\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).has(key);\n return data && hasOwn(data, state.id);\n }\n });\n\n defineBuiltIns(Prototype, IS_MAP ? {\n // `WeakMap.prototype.get(key)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.get\n get: function get(key) {\n var state = getInternalState(this);\n if (isObject(key)) {\n var data = getWeakData(key);\n if (data === true) return uncaughtFrozenStore(state).get(key);\n return data ? data[state.id] : undefined;\n }\n },\n // `WeakMap.prototype.set(key, value)` method\n // https://tc39.es/ecma262/#sec-weakmap.prototype.set\n set: function set(key, value) {\n return define(this, key, value);\n }\n } : {\n // `WeakSet.prototype.add(value)` method\n // https://tc39.es/ecma262/#sec-weakset.prototype.add\n add: function add(value) {\n return define(this, value, true);\n }\n });\n\n return Constructor;\n }\n};\n","'use strict';\nvar collection = require('../internals/collection');\nvar collectionWeak = require('../internals/collection-weak');\n\n// `WeakSet` constructor\n// https://tc39.es/ecma262/#sec-weakset-constructor\ncollection('WeakSet', function (init) {\n return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };\n}, collectionWeak);\n","'use strict';\n// iterable DOM collections\n// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods\nmodule.exports = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n};\n","'use strict';\n// in old WebKit versions, `element.classList` is not an instance of global `DOMTokenList`\nvar documentCreateElement = require('../internals/document-create-element');\n\nvar classList = documentCreateElement('span').classList;\nvar DOMTokenListPrototype = classList && classList.constructor && classList.constructor.prototype;\n\nmodule.exports = DOMTokenListPrototype === Object.prototype ? undefined : DOMTokenListPrototype;\n","'use strict';\nvar global = require('../internals/global');\nvar DOMIterables = require('../internals/dom-iterables');\nvar DOMTokenListPrototype = require('../internals/dom-token-list-prototype');\nvar ArrayIteratorMethods = require('../modules/es.array.iterator');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar setToStringTag = require('../internals/set-to-string-tag');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar ITERATOR = wellKnownSymbol('iterator');\nvar ArrayValues = ArrayIteratorMethods.values;\n\nvar handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {\n if (CollectionPrototype) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[ITERATOR] !== ArrayValues) try {\n createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues);\n } catch (error) {\n CollectionPrototype[ITERATOR] = ArrayValues;\n }\n setToStringTag(CollectionPrototype, COLLECTION_NAME, true);\n if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {\n // some Chrome versions have non-configurable methods on DOMTokenList\n if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {\n createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]);\n } catch (error) {\n CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME];\n }\n }\n }\n};\n\nfor (var COLLECTION_NAME in DOMIterables) {\n handlePrototype(global[COLLECTION_NAME] && global[COLLECTION_NAME].prototype, COLLECTION_NAME);\n}\n\nhandlePrototype(DOMTokenListPrototype, 'DOMTokenList');\n","/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.unshift(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.unshift(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n\r\nexport default {\r\n __extends,\r\n __assign,\r\n __rest,\r\n __decorate,\r\n __param,\r\n __metadata,\r\n __awaiter,\r\n __generator,\r\n __createBinding,\r\n __exportStar,\r\n __values,\r\n __read,\r\n __spread,\r\n __spreadArrays,\r\n __spreadArray,\r\n __await,\r\n __asyncGenerator,\r\n __asyncDelegator,\r\n __asyncValues,\r\n __makeTemplateObject,\r\n __importStar,\r\n __importDefault,\r\n __classPrivateFieldGet,\r\n __classPrivateFieldSet,\r\n __classPrivateFieldIn,\r\n};\r\n","import { createPopper } from '@popperjs/core';\n\nimport type dayjs from 'dayjs';\nimport type { VirtualElement, StrictModifiers } from '@popperjs/core';\nimport type CalHeatmap from '../CalHeatmap';\nimport type { IPlugin, PluginOptions, Timestamp } from '../index';\n\nconst DEFAULT_SELECTOR = '#ch-tooltip';\n\ninterface PopperOptions {\n placement: any;\n modifiers: any[];\n strategy: any;\n onFirstUpdate?: any;\n}\n\ninterface TooltipOptions extends PluginOptions, PopperOptions {\n enabled: boolean;\n text: (timestamp: Timestamp, value: number, dayjsDate: dayjs.Dayjs) => string;\n}\n\nconst defaultOptions: Partial = {\n enabled: true,\n\n // Expecting a function, which will return the tooltip content\n text: (_timestamp, value, dayjsDate): string =>\n // eslint-disable-next-line implicit-arrow-linebreak\n `${value} - ${dayjsDate.format('LLLL')}`,\n};\n\nconst DEFAULT_POPPER_OPTIONS = {\n placement: 'top',\n modifiers: [\n {\n name: 'offset',\n options: {\n offset: [0, 8],\n },\n },\n ],\n};\n\nconst virtualElement: VirtualElement = {\n getBoundingClientRect(x = 0, y = 0): DOMRect {\n return {\n width: 0,\n height: 0,\n top: y,\n right: x,\n bottom: y,\n left: x,\n x,\n y,\n toJSON: () => {},\n };\n },\n};\n\nexport default class Tooltip implements IPlugin {\n name = 'Tooltip';\n\n calendar: CalHeatmap;\n\n root: HTMLElement | null;\n\n popperInstance: any;\n\n popperOptions: any;\n\n options: Partial;\n\n listenerAttached: boolean;\n\n constructor(calendar: CalHeatmap) {\n this.calendar = calendar;\n this.root = null;\n this.popperInstance = null;\n this.options = defaultOptions;\n this.listenerAttached = false;\n }\n\n setup(pluginOptions?: Partial): void {\n this.options = { ...defaultOptions, ...pluginOptions };\n const event = this.calendar.eventEmitter;\n\n if (!this.options.enabled) {\n if (this.listenerAttached) {\n event.off('mouseover', this.mouseOverCallback, this);\n event.off('mouseout', this.mouseOutCallback, this);\n\n this.listenerAttached = false;\n }\n\n this.destroy();\n return;\n }\n\n this.popperOptions = { ...DEFAULT_POPPER_OPTIONS, ...this.options };\n\n this.root = document.getElementById(DEFAULT_SELECTOR.slice(1));\n\n if (!this.root) {\n const tooltipElem = document.createElement('div');\n tooltipElem.setAttribute('id', DEFAULT_SELECTOR.slice(1));\n tooltipElem.setAttribute('role', 'tooltip');\n tooltipElem.innerHTML =\n `
` +\n ``;\n\n this.root = document.body.appendChild(tooltipElem);\n }\n\n this.root.setAttribute('data-theme', this.calendar.options.options.theme);\n\n this.popperInstance = createPopper(\n virtualElement,\n this.root,\n this.popperOptions,\n );\n\n if (!this.listenerAttached) {\n event.on('mouseover', this.mouseOverCallback, this);\n event.on('mouseout', this.mouseOutCallback, this);\n this.listenerAttached = true;\n }\n }\n\n mouseOverCallback(e: PointerEvent, timestamp: Timestamp, value: number) {\n this.#show(e.target, timestamp, value);\n }\n\n mouseOutCallback() {\n this.#hide();\n }\n\n // eslint-disable-next-line class-methods-use-this\n paint(): Promise {\n return Promise.resolve();\n }\n\n destroy(): Promise {\n if (this.root) {\n this.root.remove();\n }\n\n return Promise.resolve();\n }\n\n #show(e: any, timestamp: Timestamp, value: number): void {\n const formatter = this.options.text;\n const title = formatter ?\n formatter(timestamp, value, this.calendar.dateHelper.date(timestamp)) :\n null;\n\n if (!title) {\n return;\n }\n\n virtualElement.getBoundingClientRect = () => e.getBoundingClientRect();\n document.getElementById(`${DEFAULT_SELECTOR.slice(1)}-body`)!.innerHTML =\n title;\n\n this.popperInstance.setOptions(() => ({\n ...this.popperOptions,\n modifiers: [\n ...this.popperOptions.modifiers,\n { name: 'eventListeners', enabled: true },\n ],\n }));\n\n this.popperInstance.update();\n\n this.root!.setAttribute('data-show', '1');\n }\n\n #hide(): void {\n this.root!.removeAttribute('data-show');\n\n this.popperInstance.setOptions(() => ({\n ...this.popperOptions,\n modifiers: [\n ...this.popperOptions.modifiers,\n { name: 'eventListeners', enabled: false },\n ],\n }));\n }\n}\n"],"names":["commonjsGlobal","globalThis","window","global","self","check","it","Math","this","Function","fails","exec","error","descriptors","require$$0","Object","defineProperty","get","functionBindNative","test","bind","hasOwnProperty","NATIVE_BIND","call","prototype","functionCall","apply","arguments","$propertyIsEnumerable","propertyIsEnumerable","getOwnPropertyDescriptor","NASHORN_BUG","objectPropertyIsEnumerable","f","V","descriptor","enumerable","match","version","createPropertyDescriptor","bitmap","value","configurable","writable","FunctionPrototype","uncurryThisWithBind","functionUncurryThis","fn","uncurryThis","toString","stringSlice","slice","classofRaw","require$$1","classof","require$$2","$Object","split","indexedObject","isNullOrUndefined","$TypeError","TypeError","requireObjectCoercible","IndexedObject","toIndexedObject","documentAll","document","all","documentAll_1","IS_HTMLDDA","undefined","isCallable","argument","isObject","getBuiltIn","namespace","method","length","objectIsPrototypeOf","isPrototypeOf","engineUserAgent","navigator","String","userAgent","process","Deno","versions","v8","engineV8Version","V8_VERSION","$String","symbolConstructorDetection","getOwnPropertySymbols","symbol","Symbol","sham","useSymbolAsUid","iterator","isSymbol","require$$3","$Symbol","tryToString","aCallable","getMethod","P","func","shared$3","exports","defineGlobalProperty","key","SHARED","sharedStore","store","sharedModule","push","mode","copyright","license","source","toObject","hasOwnProperty_1","hasOwn","id","postfix","random","uid","shared","NATIVE_SYMBOL","require$$4","USE_SYMBOL_AS_UID","require$$5","WellKnownSymbolsStore","createWellKnownSymbol","withoutSetter","wellKnownSymbol","name","ordinaryToPrimitive","input","pref","val","valueOf","TO_PRIMITIVE","toPrimitive","result","exoticToPrim","toPropertyKey","EXISTS","createElement","documentCreateElement","ie8DomDefine","a","DESCRIPTORS","propertyIsEnumerableModule","require$$6","IE8_DOM_DEFINE","require$$7","$getOwnPropertyDescriptor","objectGetOwnPropertyDescriptor","O","objectDefineProperty","v8PrototypeDefineBug","anObject","V8_PROTOTYPE_DEFINE_BUG","$defineProperty","ENUMERABLE","CONFIGURABLE","WRITABLE","Attributes","current","definePropertyModule","createNonEnumerableProperty","object","makeBuiltIn$3","getDescriptor","functionName","PROPER","functionToString","inspectSource","set","has","WeakMap","weakMapBasicDetection","keys","sharedKey","hiddenKeys","NATIVE_WEAK_MAP","OBJECT_ALREADY_INITIALIZED","state","metadata","facade","STATE","internalState","enforce","getterFor","TYPE","type","CONFIGURABLE_FUNCTION_NAME","enforceInternalState","getInternalState","replace","join","CONFIGURABLE_LENGTH","TEMPLATE","makeBuiltIn","makeBuiltInModule","options","getter","setter","arity","constructor","defineBuiltIn","simple","unsafe","nonConfigurable","nonWritable","ceil","floor","trunc","x","n","toIntegerOrInfinity","number","max","min","toAbsoluteIndex","index","integer","toLength","lengthOfArrayLike","obj","createMethod","IS_INCLUDES","$this","el","fromIndex","arrayIncludes","includes","indexOf","objectKeysInternal","names","i","enumBugKeys","internalObjectKeys","concat","objectGetOwnPropertyNames","getOwnPropertyNames","objectGetOwnPropertySymbols","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","ownKeys","getOwnPropertyDescriptorModule","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","string","toLowerCase","isForced_1","copyConstructorProperties","target","exceptions","_export","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","dontCallGetSet","forced","isArray","Array","createProperty","propertyKey","toStringTagSupport","TO_STRING_TAG_SUPPORT","TO_STRING_TAG","CORRECT_ARGUMENTS","tag","tryGet","callee","noop","empty","construct","constructorRegExp","INCORRECT_TO_STRING","isConstructorModern","isConstructorLegacy","isConstructor","called","SPECIES","$Array","arraySpeciesConstructor","originalArray","C","arraySpeciesCreate","$","doesNotExceedSafeInteger","require$$8","arrayMethodHasSpeciesSupport","METHOD_NAME","array","foo","Boolean","require$$11","IS_CONCAT_SPREADABLE","require$$10","IS_CONCAT_SPREADABLE_SUPPORT","isConcatSpreadable","spreadable","proto","arg","k","len","E","A","defineBuiltInAccessor","FUNCTION_NAME_EXISTS","nameRE","regExpExec","objectKeys","$assign","assign","objectAssign","b","B","alphabet","forEach","chr","T","argumentsLength","S","j","$location","defer","channel","port","engineIsNode","uncurryThisAccessor","aPossiblePrototype","objectSetPrototypeOf","setPrototypeOf","CORRECT_SETTER","__proto__","setToStringTag","TAG","anInstance","Prototype","aConstructor","functionApply","Reflect","functionBindContext","that","html","arraySlice","engineIsIos","validateArgumentsLength","passed","required","IS_IOS","IS_NODE","setImmediate","clear","clearImmediate","Dispatch","MessageChannel","counter","queue","ONREADYSTATECHANGE","location","run","runner","eventListener","event","globalPostMessageDefer","postMessage","protocol","host","handler","args","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","appendChild","removeChild","setTimeout","task","Queue","head","tail","add","item","entry","next","notify","toggle","node","promise","then","engineIsIosPebble","Pebble","engineIsWebosWebkit","macrotask","IS_IOS_PEBBLE","IS_WEBOS_WEBKIT","MutationObserver","WebKitMutationObserver","Promise","queueMicrotaskDescriptor","microtask","flush","parent","domain","exit","enter","resolve","createTextNode","observe","characterData","microtask_1","perform","promiseNativeConstructor","engineIsDeno","engineIsBrowser","NativePromiseConstructor","IS_BROWSER","IS_DENO","require$$9","SUBCLASSING","NATIVE_PROMISE_REJECTION_EVENT","PromiseRejectionEvent","FORCED_PROMISE_CONSTRUCTOR","PROMISE_CONSTRUCTOR_SOURCE","GLOBAL_CORE_JS_PROMISE","FakePromise","promiseConstructorDetection","CONSTRUCTOR","REJECTION_EVENT","newPromiseCapability$2","PromiseCapability","reject","$$resolve","$$reject","newPromiseCapability","Internal","OwnPromiseCapability","nativeThen","setSpecies","CONSTRUCTOR_NAME","Constructor","require$$12","speciesConstructor","defaultConstructor","require$$14","require$$15","hostReportErrors","console","require$$17","require$$18","InternalStateModule","require$$19","require$$20","newPromiseCapabilityModule","require$$22","PROMISE","require$$21","NATIVE_PROMISE_SUBCLASSING","getInternalPromiseState","setInternalState","NativePromisePrototype","PromiseConstructor","PromisePrototype","newGenericPromiseCapability","DISPATCH_EVENT","createEvent","dispatchEvent","UNHANDLED_REJECTION","isThenable","callReaction","reaction","exited","ok","fail","rejection","onHandleUnhandled","isReject","notified","reactions","onUnhandled","reason","initEvent","isUnhandled","emit","unwrap","internalReject","done","internalResolve","wrapper","executor","onFulfilled","onRejected","PromiseWrapper","wrap","iterators","Iterators","ITERATOR","ArrayPrototype","getIteratorMethod","isArrayIteratorMethod","getIterator","usingIterator","iteratorMethod","iteratorClose","kind","innerResult","innerError","Result","stopped","ResultPrototype","iterate","iterable","unboundFunction","iterFn","step","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","stop","condition","callFn","SAFE_CLOSING","iteratorWithReturn","return","from","checkCorrectnessOfIteration","SKIP_CLOSING","ITERATION_SUPPORT","promiseStaticsIncorrectIteration","capability","$promiseResolve","values","remaining","alreadyCalled","real","catch","race","r","promiseResolve","promiseCapability","objectDefineProperties","defineProperties","Properties","props","activeXDocument","definePropertiesModule","PROTOTYPE","SCRIPT","IE_PROTO","EmptyConstructor","scriptTag","content","LT","NullProtoObjectViaActiveX","write","close","temp","parentWindow","NullProtoObject","ActiveXObject","iframeDocument","iframe","JS","style","display","src","contentWindow","open","F","objectCreate","create","UNSCOPABLES","IteratorPrototype","PrototypeOfArrayIteratorPrototype","arrayIterator","correctPrototypeGetter","getPrototypeOf","CORRECT_PROTOTYPE_GETTER","ObjectPrototype","objectGetPrototypeOf","BUGGY_SAFARI_ITERATORS","NEW_ITERATOR_PROTOTYPE","iteratorsCore","returnThis","createIteratorConstructor","IteratorConstructor","NAME","ENUMERABLE_NEXT","PROPER_FUNCTION_NAME","require$$13","KEYS","VALUES","ENTRIES","iteratorDefine","Iterable","DEFAULT","IS_SET","FORCED","CurrentIteratorPrototype","methods","KEY","getIterationMethod","KIND","defaultIterator","IterablePrototype","INCORRECT_VALUES_NAME","nativeIterator","anyNativeIterator","entries","createIterResultObject","addToUnscopables","defineIterator","ARRAY_ITERATOR","es_array_iterator","iterated","Arguments","charAt","charCodeAt","CONVERT_TO_STRING","pos","first","second","position","size","codeAt","STRING_ITERATOR","point","internalMetadata","objectGetOwnPropertyNamesExternal","$getOwnPropertyNames","start","end","fin","windowNames","getWindowNames","arrayBufferNonExtensible","ArrayBuffer","buffer","isExtensible","ARRAY_BUFFER_NON_EXTENSIBLE","$isExtensible","objectIsExtensible","freezing","preventExtensions","getOwnPropertyNamesExternalModule","FREEZING","REQUIRED","METADATA","setMetadata","objectID","weakData","meta","internalMetadataModule","enable","splice","fastKey","getWeakData","onFreeze","InternalMetadataModule","inheritIfRequired","dummy","Wrapper","NewTarget","NewTargetPrototype","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","IS_FILTER_REJECT","NO_HOLES","callbackfn","specificCreate","boundFunction","arrayIteration","map","filter","some","every","find","findIndex","filterReject","defineBuiltIns","internalStateGetterFor","uncaughtFrozenStore","frozen","UncaughtFrozenStore","findUncaughtFrozen","delete","collectionWeak","getConstructor","ADDER","define","common","IS_WEAK","NativeConstructor","NativePrototype","exported","fixMethod","uncurriedNativeMethod","instance","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","setStrong","collection","init","classList","DOMTokenListPrototype","domTokenListPrototype","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","ArrayIteratorMethods","ArrayValues","handlePrototype","CollectionPrototype","COLLECTION_NAME","__classPrivateFieldGet","receiver","DEFAULT_SELECTOR","defaultOptions","enabled","text","_timestamp","dayjsDate","format","DEFAULT_POPPER_OPTIONS","placement","modifiers","offset","virtualElement","getBoundingClientRect","y","width","height","top","right","bottom","left","toJSON","Tooltip","calendar","_classCallCheck","root","popperInstance","listenerAttached","pluginOptions","eventEmitter","off","mouseOverCallback","mouseOutCallback","destroy","popperOptions","getElementById","tooltipElem","setAttribute","innerHTML","body","theme","createPopper","on","e","timestamp","_Tooltip_instances","_Tooltip_show","_Tooltip_hide","remove","_this","formatter","title","dateHelper","date","setOptions","_toConsumableArray","update","_this2","removeAttribute"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153]} diff --git a/src/agenda_culturel/static/cal-heatmap/plugins/cal-heatmap.css b/src/agenda_culturel/static/cal-heatmap/plugins/cal-heatmap.css index 9bafe15..2cb2eb9 100644 --- a/src/agenda_culturel/static/cal-heatmap/plugins/cal-heatmap.css +++ b/src/agenda_culturel/static/cal-heatmap/plugins/cal-heatmap.css @@ -1 +1 @@ -.ch-container{display:block}.ch-container,.ch-domain,.ch-domain-container,.ch-domain-container-animation-wrapper{overflow:visible}.ch-domain-container.in-transition .ch-domain-container-animation-wrapper{overflow:hidden}.ch-domain-bg{fill:transparent}.ch-domain-text{fill:currentColor;font-size:10px}.ch-subdomain{overflow:visible}.ch-subdomain-bg{fill:#ededed}.ch-subdomain-bg.highlight{stroke:#444;stroke-width:1px}.ch-subdomain-bg:hover{stroke:#000;stroke-width:1px}.ch-subdomain-text{font-size:8px;pointer-events:none}[data-theme=dark] .ch-subdomain-bg{fill:#2d333b}[data-theme=dark] .ch-subdomain-bg.highlight{stroke:#768390}[data-theme=dark] .ch-subdomain-bg:hover{stroke:#636e7b}#ch-plugin-legend>svg{background:transparent;color:currentColor}#ch-tooltip{background:#222;border-radius:2px;box-shadow:2px 2px 2px rgba(0,0,0,.2);box-sizing:border-box;color:#bbb;display:none;font-size:12px;line-height:1.4;padding:5px 10px;text-align:center}#ch-tooltip[data-show]{display:block}#ch-tooltip-arrow,#ch-tooltip-arrow:before{background:inherit;height:8px;position:absolute;width:8px}#ch-tooltip-arrow{visibility:hidden}#ch-tooltip-arrow:before{content:"";transform:rotate(45deg);visibility:visible}#ch-tooltip[data-popper-placement^=top]>#ch-tooltip-arrow{bottom:-4px;margin-left:-4px}#ch-tooltip[data-popper-placement^=bottom]>#ch-tooltip-arrow{margin-left:-4px;top:-4px}#ch-tooltip[data-popper-placement^=left]>#ch-tooltip-arrow{right:-4px}#ch-tooltip[data-popper-placement^=right]>#ch-tooltip-arrow{left:-4px}#ch-tooltip[data-theme=dark]{background:#636e7b;color:#cdd9e5} \ No newline at end of file +.ch-container{display:block}.ch-container,.ch-domain,.ch-domain-container,.ch-domain-container-animation-wrapper{overflow:visible}.ch-domain-container.in-transition .ch-domain-container-animation-wrapper{overflow:hidden}.ch-domain-bg{fill:transparent}.ch-domain-text{fill:currentColor;font-size:10px}.ch-subdomain{overflow:visible}.ch-subdomain-bg{fill:#ededed}.ch-subdomain-bg.highlight{stroke:#444;stroke-width:1px}.ch-subdomain-bg:hover{stroke:#000;stroke-width:1px}.ch-subdomain-text{font-size:8px;pointer-events:none}[data-theme=dark] .ch-subdomain-bg{fill:#2d333b}[data-theme=dark] .ch-subdomain-bg.highlight{stroke:#768390}[data-theme=dark] .ch-subdomain-bg:hover{stroke:#636e7b}#ch-plugin-legend>svg{background:transparent;color:currentColor}#ch-tooltip{background:#222;border-radius:2px;box-shadow:2px 2px 2px rgba(0,0,0,.2);box-sizing:border-box;color:#bbb;display:none;font-size:12px;line-height:1.4;padding:5px 10px;text-align:center}#ch-tooltip[data-show]{display:block}#ch-tooltip-arrow,#ch-tooltip-arrow:before{background:inherit;height:8px;position:absolute;width:8px}#ch-tooltip-arrow{visibility:hidden}#ch-tooltip-arrow:before{content:"";transform:rotate(45deg);visibility:visible}#ch-tooltip[data-popper-placement^=top]>#ch-tooltip-arrow{bottom:-4px;margin-left:-4px}#ch-tooltip[data-popper-placement^=bottom]>#ch-tooltip-arrow{margin-left:-4px;top:-4px}#ch-tooltip[data-popper-placement^=left]>#ch-tooltip-arrow{right:-4px}#ch-tooltip[data-popper-placement^=right]>#ch-tooltip-arrow{left:-4px}#ch-tooltip[data-theme=dark]{background:#636e7b;color:#cdd9e5} diff --git a/src/agenda_culturel/static/choicejs/choices.min.js b/src/agenda_culturel/static/choicejs/choices.min.js index 2e5fb2c..db74246 100644 --- a/src/agenda_culturel/static/choicejs/choices.min.js +++ b/src/agenda_culturel/static/choicejs/choices.min.js @@ -1,2 +1,2 @@ /*! For license information please see choices.min.js.LICENSE.txt */ -!function(){"use strict";var e={282:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.clearChoices=t.activateChoices=t.filterChoices=t.addChoice=void 0;var n=i(883);t.addChoice=function(e){var t=e.value,i=e.label,r=e.id,s=e.groupId,o=e.disabled,a=e.elementId,c=e.customProperties,l=e.placeholder,h=e.keyCode;return{type:n.ACTION_TYPES.ADD_CHOICE,value:t,label:i,id:r,groupId:s,disabled:o,elementId:a,customProperties:c,placeholder:l,keyCode:h}},t.filterChoices=function(e){return{type:n.ACTION_TYPES.FILTER_CHOICES,results:e}},t.activateChoices=function(e){return void 0===e&&(e=!0),{type:n.ACTION_TYPES.ACTIVATE_CHOICES,active:e}},t.clearChoices=function(){return{type:n.ACTION_TYPES.CLEAR_CHOICES}}},783:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.addGroup=void 0;var n=i(883);t.addGroup=function(e){var t=e.value,i=e.id,r=e.active,s=e.disabled;return{type:n.ACTION_TYPES.ADD_GROUP,value:t,id:i,active:r,disabled:s}}},464:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.highlightItem=t.removeItem=t.addItem=void 0;var n=i(883);t.addItem=function(e){var t=e.value,i=e.label,r=e.id,s=e.choiceId,o=e.groupId,a=e.customProperties,c=e.placeholder,l=e.keyCode;return{type:n.ACTION_TYPES.ADD_ITEM,value:t,label:i,id:r,choiceId:s,groupId:o,customProperties:a,placeholder:c,keyCode:l}},t.removeItem=function(e,t){return{type:n.ACTION_TYPES.REMOVE_ITEM,id:e,choiceId:t}},t.highlightItem=function(e,t){return{type:n.ACTION_TYPES.HIGHLIGHT_ITEM,id:e,highlighted:t}}},137:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.setIsLoading=t.resetTo=t.clearAll=void 0;var n=i(883);t.clearAll=function(){return{type:n.ACTION_TYPES.CLEAR_ALL}},t.resetTo=function(e){return{type:n.ACTION_TYPES.RESET_TO,state:e}},t.setIsLoading=function(e){return{type:n.ACTION_TYPES.SET_IS_LOADING,isLoading:e}}},373:function(e,t,i){var n=this&&this.__spreadArray||function(e,t,i){if(i||2===arguments.length)for(var n,r=0,s=t.length;r=0?this._store.getGroupById(r):null;return this._store.dispatch((0,l.highlightItem)(i,!0)),t&&this.passedElement.triggerEvent(d.EVENTS.highlightItem,{id:i,value:o,label:c,groupValue:h&&h.value?h.value:null}),this},e.prototype.unhighlightItem=function(e){if(!e||!e.id)return this;var t=e.id,i=e.groupId,n=void 0===i?-1:i,r=e.value,s=void 0===r?"":r,o=e.label,a=void 0===o?"":o,c=n>=0?this._store.getGroupById(n):null;return this._store.dispatch((0,l.highlightItem)(t,!1)),this.passedElement.triggerEvent(d.EVENTS.highlightItem,{id:t,value:s,label:a,groupValue:c&&c.value?c.value:null}),this},e.prototype.highlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.highlightItem(t)})),this},e.prototype.unhighlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.unhighlightItem(t)})),this},e.prototype.removeActiveItemsByValue=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.value===e})).forEach((function(e){return t._removeItem(e)})),this},e.prototype.removeActiveItems=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.id!==e})).forEach((function(e){return t._removeItem(e)})),this},e.prototype.removeHighlightedItems=function(e){var t=this;return void 0===e&&(e=!1),this._store.highlightedActiveItems.forEach((function(i){t._removeItem(i),e&&t._triggerChange(i.value)})),this},e.prototype.showDropdown=function(e){var t=this;return this.dropdown.isActive||requestAnimationFrame((function(){t.dropdown.show(),t.containerOuter.open(t.dropdown.distanceFromTopWindow),!e&&t._canSearch&&t.input.focus(),t.passedElement.triggerEvent(d.EVENTS.showDropdown,{})})),this},e.prototype.hideDropdown=function(e){var t=this;return this.dropdown.isActive?(requestAnimationFrame((function(){t.dropdown.hide(),t.containerOuter.close(),!e&&t._canSearch&&(t.input.removeActiveDescendant(),t.input.blur()),t.passedElement.triggerEvent(d.EVENTS.hideDropdown,{})})),this):this},e.prototype.getValue=function(e){void 0===e&&(e=!1);var t=this._store.activeItems.reduce((function(t,i){var n=e?i.value:i;return t.push(n),t}),[]);return this._isSelectOneElement?t[0]:t},e.prototype.setValue=function(e){var t=this;return this.initialised?(e.forEach((function(e){return t._setChoiceOrItem(e)})),this):this},e.prototype.setChoiceByValue=function(e){var t=this;return!this.initialised||this._isTextElement||(Array.isArray(e)?e:[e]).forEach((function(e){return t._findAndSelectChoiceByValue(e)})),this},e.prototype.setChoices=function(e,t,i,n){var r=this;if(void 0===e&&(e=[]),void 0===t&&(t="value"),void 0===i&&(i="label"),void 0===n&&(n=!1),!this.initialised)throw new ReferenceError("setChoices was called on a non-initialized instance of Choices");if(!this._isSelectElement)throw new TypeError("setChoices can't be used with INPUT based Choices");if("string"!=typeof t||!t)throw new TypeError("value parameter must be a name of 'value' field in passed objects");if(n&&this.clearChoices(),"function"==typeof e){var s=e(this);if("function"==typeof Promise&&s instanceof Promise)return new Promise((function(e){return requestAnimationFrame(e)})).then((function(){return r._handleLoadingState(!0)})).then((function(){return s})).then((function(e){return r.setChoices(e,t,i,n)})).catch((function(e){r.config.silent||console.error(e)})).then((function(){return r._handleLoadingState(!1)})).then((function(){return r}));if(!Array.isArray(s))throw new TypeError(".setChoices first argument function must return either array of choices or Promise, got: ".concat(typeof s));return this.setChoices(s,t,i,!1)}if(!Array.isArray(e))throw new TypeError(".setChoices must be called either with array of choices with a function resulting into Promise of array of choices");return this.containerOuter.removeLoadingState(),this._startLoading(),e.forEach((function(e){if(e.choices)r._addGroup({id:e.id?parseInt("".concat(e.id),10):null,group:e,valueKey:t,labelKey:i});else{var n=e;r._addChoice({value:n[t],label:n[i],isSelected:!!n.selected,isDisabled:!!n.disabled,placeholder:!!n.placeholder,customProperties:n.customProperties})}})),this._stopLoading(),this},e.prototype.clearChoices=function(){return this._store.dispatch((0,a.clearChoices)()),this},e.prototype.clearStore=function(){return this._store.dispatch((0,h.clearAll)()),this},e.prototype.clearInput=function(){var e=!this._isSelectOneElement;return this.input.clear(e),!this._isTextElement&&this._canSearch&&(this._isSearching=!1,this._store.dispatch((0,a.activateChoices)(!0))),this},e.prototype._render=function(){if(!this._store.isLoading()){this._currentState=this._store.state;var e=this._currentState.choices!==this._prevState.choices||this._currentState.groups!==this._prevState.groups||this._currentState.items!==this._prevState.items,t=this._isSelectElement,i=this._currentState.items!==this._prevState.items;e&&(t&&this._renderChoices(),i&&this._renderItems(),this._prevState=this._currentState)}},e.prototype._renderChoices=function(){var e=this,t=this._store,i=t.activeGroups,n=t.activeChoices,r=document.createDocumentFragment();if(this.choiceList.clear(),this.config.resetScrollPosition&&requestAnimationFrame((function(){return e.choiceList.scrollToTop()})),i.length>=1&&!this._isSearching){var s=n.filter((function(e){return!0===e.placeholder&&-1===e.groupId}));s.length>=1&&(r=this._createChoicesFragment(s,r)),r=this._createGroupsFragment(i,n,r)}else n.length>=1&&(r=this._createChoicesFragment(n,r));if(r.childNodes&&r.childNodes.length>0){var o=this._store.activeItems,a=this._canAddItem(o,this.input.value);if(a.response)this.choiceList.append(r),this._highlightChoice();else{var c=this._getTemplate("notice",a.notice);this.choiceList.append(c)}}else{var l=void 0;c=void 0,this._isSearching?(c="function"==typeof this.config.noResultsText?this.config.noResultsText():this.config.noResultsText,l=this._getTemplate("notice",c,"no-results")):(c="function"==typeof this.config.noChoicesText?this.config.noChoicesText():this.config.noChoicesText,l=this._getTemplate("notice",c,"no-choices")),this.choiceList.append(l)}},e.prototype._renderItems=function(){var e=this._store.activeItems||[];this.itemList.clear();var t=this._createItemsFragment(e);t.childNodes&&this.itemList.append(t)},e.prototype._createGroupsFragment=function(e,t,i){var n=this;return void 0===i&&(i=document.createDocumentFragment()),this.config.shouldSort&&e.sort(this.config.sorter),e.forEach((function(e){var r=function(e){return t.filter((function(t){return n._isSelectOneElement?t.groupId===e.id:t.groupId===e.id&&("always"===n.config.renderSelectedChoices||!t.selected)}))}(e);if(r.length>=1){var s=n._getTemplate("choiceGroup",e);i.appendChild(s),n._createChoicesFragment(r,i,!0)}})),i},e.prototype._createChoicesFragment=function(e,t,i){var r=this;void 0===t&&(t=document.createDocumentFragment()),void 0===i&&(i=!1);var s=this.config,o=s.renderSelectedChoices,a=s.searchResultLimit,c=s.renderChoiceLimit,l=this._isSearching?f.sortByScore:this.config.sorter,h=function(e){if("auto"!==o||r._isSelectOneElement||!e.selected){var i=r._getTemplate("choice",e,r.config.itemSelectText);t.appendChild(i)}},u=e;"auto"!==o||this._isSelectOneElement||(u=e.filter((function(e){return!e.selected})));var d=u.reduce((function(e,t){return t.placeholder?e.placeholderChoices.push(t):e.normalChoices.push(t),e}),{placeholderChoices:[],normalChoices:[]}),p=d.placeholderChoices,m=d.normalChoices;(this.config.shouldSort||this._isSearching)&&m.sort(l);var v=u.length,g=this._isSelectOneElement?n(n([],p,!0),m,!0):m;this._isSearching?v=a:c&&c>0&&!i&&(v=c);for(var _=0;_=n){var o=r?this._searchChoices(e):0;this.passedElement.triggerEvent(d.EVENTS.search,{value:e,resultCount:o})}else s&&(this._isSearching=!1,this._store.dispatch((0,a.activateChoices)(!0)))}},e.prototype._canAddItem=function(e,t){var i=!0,n="function"==typeof this.config.addItemText?this.config.addItemText(t):this.config.addItemText;if(!this._isSelectOneElement){var r=(0,f.existsInArray)(e,t);this.config.maxItemCount>0&&this.config.maxItemCount<=e.length&&(i=!1,n="function"==typeof this.config.maxItemText?this.config.maxItemText(this.config.maxItemCount):this.config.maxItemText),!this.config.duplicateItemsAllowed&&r&&i&&(i=!1,n="function"==typeof this.config.uniqueItemText?this.config.uniqueItemText(t):this.config.uniqueItemText),this._isTextElement&&this.config.addItems&&i&&"function"==typeof this.config.addItemFilter&&!this.config.addItemFilter(t)&&(i=!1,n="function"==typeof this.config.customAddItemText?this.config.customAddItemText(t):this.config.customAddItemText)}return{response:i,notice:n}},e.prototype._searchChoices=function(e){var t="string"==typeof e?e.trim():e,i="string"==typeof this._currentValue?this._currentValue.trim():this._currentValue;if(t.length<1&&t==="".concat(i," "))return 0;var r=this._store.searchableChoices,s=t,c=Object.assign(this.config.fuseOptions,{keys:n([],this.config.searchFields,!0),includeMatches:!0}),l=new o.default(r,c).search(s);return this._currentValue=t,this._highlightPosition=0,this._isSearching=!0,this._store.dispatch((0,a.filterChoices)(l)),l.length},e.prototype._addEventListeners=function(){var e=document.documentElement;e.addEventListener("touchend",this._onTouchEnd,!0),this.containerOuter.element.addEventListener("keydown",this._onKeyDown,!0),this.containerOuter.element.addEventListener("mousedown",this._onMouseDown,!0),e.addEventListener("click",this._onClick,{passive:!0}),e.addEventListener("touchmove",this._onTouchMove,{passive:!0}),this.dropdown.element.addEventListener("mouseover",this._onMouseOver,{passive:!0}),this._isSelectOneElement&&(this.containerOuter.element.addEventListener("focus",this._onFocus,{passive:!0}),this.containerOuter.element.addEventListener("blur",this._onBlur,{passive:!0})),this.input.element.addEventListener("keyup",this._onKeyUp,{passive:!0}),this.input.element.addEventListener("focus",this._onFocus,{passive:!0}),this.input.element.addEventListener("blur",this._onBlur,{passive:!0}),this.input.element.form&&this.input.element.form.addEventListener("reset",this._onFormReset,{passive:!0}),this.input.addEventListeners()},e.prototype._removeEventListeners=function(){var e=document.documentElement;e.removeEventListener("touchend",this._onTouchEnd,!0),this.containerOuter.element.removeEventListener("keydown",this._onKeyDown,!0),this.containerOuter.element.removeEventListener("mousedown",this._onMouseDown,!0),e.removeEventListener("click",this._onClick),e.removeEventListener("touchmove",this._onTouchMove),this.dropdown.element.removeEventListener("mouseover",this._onMouseOver),this._isSelectOneElement&&(this.containerOuter.element.removeEventListener("focus",this._onFocus),this.containerOuter.element.removeEventListener("blur",this._onBlur)),this.input.element.removeEventListener("keyup",this._onKeyUp),this.input.element.removeEventListener("focus",this._onFocus),this.input.element.removeEventListener("blur",this._onBlur),this.input.element.form&&this.input.element.form.removeEventListener("reset",this._onFormReset),this.input.removeEventListeners()},e.prototype._onKeyDown=function(e){var t=e.keyCode,i=this._store.activeItems,n=this.input.isFocussed,r=this.dropdown.isActive,s=this.itemList.hasChildren(),o=String.fromCharCode(t),a=/[^\x00-\x1F]/.test(o),c=d.KEY_CODES.BACK_KEY,l=d.KEY_CODES.DELETE_KEY,h=d.KEY_CODES.ENTER_KEY,u=d.KEY_CODES.A_KEY,p=d.KEY_CODES.ESC_KEY,f=d.KEY_CODES.UP_KEY,m=d.KEY_CODES.DOWN_KEY,v=d.KEY_CODES.PAGE_UP_KEY,g=d.KEY_CODES.PAGE_DOWN_KEY;switch(this._isTextElement||r||!a||(this.showDropdown(),this.input.isFocussed||(this.input.value+=e.key.toLowerCase())),t){case u:return this._onSelectKey(e,s);case h:return this._onEnterKey(e,i,r);case p:return this._onEscapeKey(r);case f:case v:case m:case g:return this._onDirectionKey(e,r);case l:case c:return this._onDeleteKey(e,i,n)}},e.prototype._onKeyUp=function(e){var t=e.target,i=e.keyCode,n=this.input.value,r=this._store.activeItems,s=this._canAddItem(r,n),o=d.KEY_CODES.BACK_KEY,c=d.KEY_CODES.DELETE_KEY;if(this._isTextElement)if(s.notice&&n){var l=this._getTemplate("notice",s.notice);this.dropdown.element.innerHTML=l.outerHTML,this.showDropdown(!0)}else this.hideDropdown(!0);else{var h=(i===o||i===c)&&t&&!t.value,u=!this._isTextElement&&this._isSearching,p=this._canSearch&&s.response;h&&u?(this._isSearching=!1,this._store.dispatch((0,a.activateChoices)(!0))):p&&this._handleSearch(this.input.rawValue)}this._canSearch=this.config.searchEnabled},e.prototype._onSelectKey=function(e,t){var i=e.ctrlKey,n=e.metaKey;(i||n)&&t&&(this._canSearch=!1,this.config.removeItems&&!this.input.value&&this.input.element===document.activeElement&&this.highlightAll())},e.prototype._onEnterKey=function(e,t,i){var n=e.target,r=d.KEY_CODES.ENTER_KEY,s=n&&n.hasAttribute("data-button");if(this._isTextElement&&n&&n.value){var o=this.input.value;this._canAddItem(t,o).response&&(this.hideDropdown(!0),this._addItem({value:o}),this._triggerChange(o),this.clearInput())}if(s&&(this._handleButtonAction(t,n),e.preventDefault()),i){var a=this.dropdown.getChild(".".concat(this.config.classNames.highlightedState));a&&(t[0]&&(t[0].keyCode=r),this._handleChoiceAction(t,a)),e.preventDefault()}else this._isSelectOneElement&&(this.showDropdown(),e.preventDefault())},e.prototype._onEscapeKey=function(e){e&&(this.hideDropdown(!0),this.containerOuter.focus())},e.prototype._onDirectionKey=function(e,t){var i=e.keyCode,n=e.metaKey,r=d.KEY_CODES.DOWN_KEY,s=d.KEY_CODES.PAGE_UP_KEY,o=d.KEY_CODES.PAGE_DOWN_KEY;if(t||this._isSelectOneElement){this.showDropdown(),this._canSearch=!1;var a=i===r||i===o?1:-1,c="[data-choice-selectable]",l=void 0;if(n||i===o||i===s)l=a>0?this.dropdown.element.querySelector("".concat(c,":last-of-type")):this.dropdown.element.querySelector(c);else{var h=this.dropdown.element.querySelector(".".concat(this.config.classNames.highlightedState));l=h?(0,f.getAdjacentEl)(h,c,a):this.dropdown.element.querySelector(c)}l&&((0,f.isScrolledIntoView)(l,this.choiceList.element,a)||this.choiceList.scrollToChildElement(l,a),this._highlightChoice(l)),e.preventDefault()}},e.prototype._onDeleteKey=function(e,t,i){var n=e.target;this._isSelectOneElement||n.value||!i||(this._handleBackspace(t),e.preventDefault())},e.prototype._onTouchMove=function(){this._wasTap&&(this._wasTap=!1)},e.prototype._onTouchEnd=function(e){var t=(e||e.touches[0]).target;this._wasTap&&this.containerOuter.element.contains(t)&&((t===this.containerOuter.element||t===this.containerInner.element)&&(this._isTextElement?this.input.focus():this._isSelectMultipleElement&&this.showDropdown()),e.stopPropagation()),this._wasTap=!0},e.prototype._onMouseDown=function(e){var t=e.target;if(t instanceof HTMLElement){if(_&&this.choiceList.element.contains(t)){var i=this.choiceList.element.firstElementChild,n="ltr"===this._direction?e.offsetX>=i.offsetWidth:e.offsetX0&&this.unhighlightAll(),this.containerOuter.removeFocusState(),this.hideDropdown(!0))},e.prototype._onFocus=function(e){var t,i=this,n=e.target;n&&this.containerOuter.element.contains(n)&&((t={})[d.TEXT_TYPE]=function(){n===i.input.element&&i.containerOuter.addFocusState()},t[d.SELECT_ONE_TYPE]=function(){i.containerOuter.addFocusState(),n===i.input.element&&i.showDropdown(!0)},t[d.SELECT_MULTIPLE_TYPE]=function(){n===i.input.element&&(i.showDropdown(!0),i.containerOuter.addFocusState())},t)[this.passedElement.element.type]()},e.prototype._onBlur=function(e){var t,i=this,n=e.target;if(n&&this.containerOuter.element.contains(n)&&!this._isScrollingOnIe){var r=this._store.activeItems.some((function(e){return e.highlighted}));((t={})[d.TEXT_TYPE]=function(){n===i.input.element&&(i.containerOuter.removeFocusState(),r&&i.unhighlightAll(),i.hideDropdown(!0))},t[d.SELECT_ONE_TYPE]=function(){i.containerOuter.removeFocusState(),(n===i.input.element||n===i.containerOuter.element&&!i._canSearch)&&i.hideDropdown(!0)},t[d.SELECT_MULTIPLE_TYPE]=function(){n===i.input.element&&(i.containerOuter.removeFocusState(),i.hideDropdown(!0),r&&i.unhighlightAll())},t)[this.passedElement.element.type]()}else this._isScrollingOnIe=!1,this.input.element.focus()},e.prototype._onFormReset=function(){this._store.dispatch((0,h.resetTo)(this._initialState))},e.prototype._highlightChoice=function(e){var t=this;void 0===e&&(e=null);var i=Array.from(this.dropdown.element.querySelectorAll("[data-choice-selectable]"));if(i.length){var n=e;Array.from(this.dropdown.element.querySelectorAll(".".concat(this.config.classNames.highlightedState))).forEach((function(e){e.classList.remove(t.config.classNames.highlightedState),e.setAttribute("aria-selected","false")})),n?this._highlightPosition=i.indexOf(n):(n=i.length>this._highlightPosition?i[this._highlightPosition]:i[i.length-1])||(n=i[0]),n.classList.add(this.config.classNames.highlightedState),n.setAttribute("aria-selected","true"),this.passedElement.triggerEvent(d.EVENTS.highlightChoice,{el:n}),this.dropdown.isActive&&(this.input.setActiveDescendant(n.id),this.containerOuter.setActiveDescendant(n.id))}},e.prototype._addItem=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,r=e.choiceId,s=void 0===r?-1:r,o=e.groupId,a=void 0===o?-1:o,c=e.customProperties,h=void 0===c?{}:c,u=e.placeholder,p=void 0!==u&&u,f=e.keyCode,m=void 0===f?-1:f,v="string"==typeof t?t.trim():t,g=this._store.items,_=n||v,y=s||-1,E=a>=0?this._store.getGroupById(a):null,b=g?g.length+1:1;this.config.prependValue&&(v=this.config.prependValue+v.toString()),this.config.appendValue&&(v+=this.config.appendValue.toString()),this._store.dispatch((0,l.addItem)({value:v,label:_,id:b,choiceId:y,groupId:a,customProperties:h,placeholder:p,keyCode:m})),this._isSelectOneElement&&this.removeActiveItems(b),this.passedElement.triggerEvent(d.EVENTS.addItem,{id:b,value:v,label:_,customProperties:h,groupValue:E&&E.value?E.value:null,keyCode:m})},e.prototype._removeItem=function(e){var t=e.id,i=e.value,n=e.label,r=e.customProperties,s=e.choiceId,o=e.groupId,a=o&&o>=0?this._store.getGroupById(o):null;t&&s&&(this._store.dispatch((0,l.removeItem)(t,s)),this.passedElement.triggerEvent(d.EVENTS.removeItem,{id:t,value:i,label:n,customProperties:r,groupValue:a&&a.value?a.value:null}))},e.prototype._addChoice=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,r=e.isSelected,s=void 0!==r&&r,o=e.isDisabled,c=void 0!==o&&o,l=e.groupId,h=void 0===l?-1:l,u=e.customProperties,d=void 0===u?{}:u,p=e.placeholder,f=void 0!==p&&p,m=e.keyCode,v=void 0===m?-1:m;if(null!=t){var g=this._store.choices,_=n||t,y=g?g.length+1:1,E="".concat(this._baseId,"-").concat(this._idNames.itemChoice,"-").concat(y);this._store.dispatch((0,a.addChoice)({id:y,groupId:h,elementId:E,value:t,label:_,disabled:c,customProperties:d,placeholder:f,keyCode:v})),s&&this._addItem({value:t,label:_,choiceId:y,customProperties:d,placeholder:f,keyCode:v})}},e.prototype._addGroup=function(e){var t=this,i=e.group,n=e.id,r=e.valueKey,s=void 0===r?"value":r,o=e.labelKey,a=void 0===o?"label":o,l=(0,f.isType)("Object",i)?i.choices:Array.from(i.getElementsByTagName("OPTION")),h=n||Math.floor((new Date).valueOf()*Math.random()),u=!!i.disabled&&i.disabled;l?(this._store.dispatch((0,c.addGroup)({value:i.label,id:h,active:!0,disabled:u})),l.forEach((function(e){var i=e.disabled||e.parentNode&&e.parentNode.disabled;t._addChoice({value:e[s],label:(0,f.isType)("Object",e)?e[a]:e.innerHTML,isSelected:e.selected,isDisabled:i,groupId:h,customProperties:e.customProperties,placeholder:e.placeholder})}))):this._store.dispatch((0,c.addGroup)({value:i.label,id:i.id,active:!1,disabled:i.disabled}))},e.prototype._getTemplate=function(e){for(var t,i=[],r=1;r0?this.element.scrollTop+o-r:e.offsetTop;requestAnimationFrame((function(){i._animateScroll(a,t)}))}},e.prototype._scrollDown=function(e,t,i){var n=(i-e)/t,r=n>1?n:1;this.element.scrollTop=e+r},e.prototype._scrollUp=function(e,t,i){var n=(e-i)/t,r=n>1?n:1;this.element.scrollTop=e-r},e.prototype._animateScroll=function(e,t){var i=this,r=n.SCROLLING_SPEED,s=this.element.scrollTop,o=!1;t>0?(this._scrollDown(s,r,e),se&&(o=!0)),o&&requestAnimationFrame((function(){i._animateScroll(e,t)}))},e}();t.default=r},730:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0});var n=i(799),r=function(){function e(e){var t=e.element,i=e.classNames;if(this.element=t,this.classNames=i,!(t instanceof HTMLInputElement||t instanceof HTMLSelectElement))throw new TypeError("Invalid element passed");this.isDisabled=!1}return Object.defineProperty(e.prototype,"isActive",{get:function(){return"active"===this.element.dataset.choice},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"dir",{get:function(){return this.element.dir},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"value",{get:function(){return this.element.value},set:function(e){this.element.value=e},enumerable:!1,configurable:!0}),e.prototype.conceal=function(){this.element.classList.add(this.classNames.input),this.element.hidden=!0,this.element.tabIndex=-1;var e=this.element.getAttribute("style");e&&this.element.setAttribute("data-choice-orig-style",e),this.element.setAttribute("data-choice","active")},e.prototype.reveal=function(){this.element.classList.remove(this.classNames.input),this.element.hidden=!1,this.element.removeAttribute("tabindex");var e=this.element.getAttribute("data-choice-orig-style");e?(this.element.removeAttribute("data-choice-orig-style"),this.element.setAttribute("style",e)):this.element.removeAttribute("style"),this.element.removeAttribute("data-choice"),this.element.value=this.element.value},e.prototype.enable=function(){this.element.removeAttribute("disabled"),this.element.disabled=!1,this.isDisabled=!1},e.prototype.disable=function(){this.element.setAttribute("disabled",""),this.element.disabled=!0,this.isDisabled=!0},e.prototype.triggerEvent=function(e,t){(0,n.dispatchEvent)(this.element,e,t)},e}();t.default=r},541:function(e,t,i){var n,r=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=function(e){function t(t){var i=t.element,n=t.classNames,r=t.delimiter,s=e.call(this,{element:i,classNames:n})||this;return s.delimiter=r,s}return r(t,e),Object.defineProperty(t.prototype,"value",{get:function(){return this.element.value},set:function(e){this.element.setAttribute("value",e),this.element.value=e},enumerable:!1,configurable:!0}),t}(s(i(730)).default);t.default=o},982:function(e,t,i){var n,r=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=function(e){function t(t){var i=t.element,n=t.classNames,r=t.template,s=e.call(this,{element:i,classNames:n})||this;return s.template=r,s}return r(t,e),Object.defineProperty(t.prototype,"placeholderOption",{get:function(){return this.element.querySelector('option[value=""]')||this.element.querySelector("option[placeholder]")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"optionGroups",{get:function(){return Array.from(this.element.getElementsByTagName("OPTGROUP"))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"options",{get:function(){return Array.from(this.element.options)},set:function(e){var t=this,i=document.createDocumentFragment();e.forEach((function(e){return n=e,r=t.template(n),void i.appendChild(r);var n,r})),this.appendDocFragment(i)},enumerable:!1,configurable:!0}),t.prototype.appendDocFragment=function(e){this.element.innerHTML="",this.element.appendChild(e)},t}(s(i(730)).default);t.default=o},883:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.SCROLLING_SPEED=t.SELECT_MULTIPLE_TYPE=t.SELECT_ONE_TYPE=t.TEXT_TYPE=t.KEY_CODES=t.ACTION_TYPES=t.EVENTS=void 0,t.EVENTS={showDropdown:"showDropdown",hideDropdown:"hideDropdown",change:"change",choice:"choice",search:"search",addItem:"addItem",removeItem:"removeItem",highlightItem:"highlightItem",highlightChoice:"highlightChoice",unhighlightItem:"unhighlightItem"},t.ACTION_TYPES={ADD_CHOICE:"ADD_CHOICE",FILTER_CHOICES:"FILTER_CHOICES",ACTIVATE_CHOICES:"ACTIVATE_CHOICES",CLEAR_CHOICES:"CLEAR_CHOICES",ADD_GROUP:"ADD_GROUP",ADD_ITEM:"ADD_ITEM",REMOVE_ITEM:"REMOVE_ITEM",HIGHLIGHT_ITEM:"HIGHLIGHT_ITEM",CLEAR_ALL:"CLEAR_ALL",RESET_TO:"RESET_TO",SET_IS_LOADING:"SET_IS_LOADING"},t.KEY_CODES={BACK_KEY:46,DELETE_KEY:8,ENTER_KEY:13,A_KEY:65,ESC_KEY:27,UP_KEY:38,DOWN_KEY:40,PAGE_UP_KEY:33,PAGE_DOWN_KEY:34},t.TEXT_TYPE="text",t.SELECT_ONE_TYPE="select-one",t.SELECT_MULTIPLE_TYPE="select-multiple",t.SCROLLING_SPEED=4},789:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CONFIG=t.DEFAULT_CLASSNAMES=void 0;var n=i(799);t.DEFAULT_CLASSNAMES={containerOuter:"choices",containerInner:"choices__inner",input:"choices__input",inputCloned:"choices__input--cloned",list:"choices__list",listItems:"choices__list--multiple",listSingle:"choices__list--single",listDropdown:"choices__list--dropdown",item:"choices__item",itemSelectable:"choices__item--selectable",itemDisabled:"choices__item--disabled",itemChoice:"choices__item--choice",placeholder:"choices__placeholder",group:"choices__group",groupHeading:"choices__heading",button:"choices__button",activeState:"is-active",focusState:"is-focused",openState:"is-open",disabledState:"is-disabled",highlightedState:"is-highlighted",selectedState:"is-selected",flippedState:"is-flipped",loadingState:"is-loading",noResults:"has-no-results",noChoices:"has-no-choices"},t.DEFAULT_CONFIG={items:[],choices:[],silent:!1,renderChoiceLimit:-1,maxItemCount:-1,addItems:!0,addItemFilter:null,removeItems:!0,removeItemButton:!1,editItems:!1,allowHTML:!0,duplicateItemsAllowed:!0,delimiter:",",paste:!0,searchEnabled:!0,searchChoices:!0,searchFloor:1,searchResultLimit:4,searchFields:["label","value"],position:"auto",resetScrollPosition:!0,shouldSort:!0,shouldSortItems:!1,sorter:n.sortByAlpha,placeholder:!0,placeholderValue:null,searchPlaceholderValue:null,prependValue:null,appendValue:null,renderSelectedChoices:"auto",loadingText:"Loading...",noResultsText:"No results found",noChoicesText:"No choices to choose from",itemSelectText:"Press to select",uniqueItemText:"Only unique values can be added",customAddItemText:"Only values matching specific conditions can be added",addItemText:function(e){return'Press Enter to add "'.concat((0,n.sanitise)(e),'"')},maxItemText:function(e){return"Only ".concat(e," values can be added")},valueComparer:function(e,t){return e===t},fuseOptions:{includeScore:!0},labelId:"",callbackOnInit:null,callbackOnCreateTemplates:null,classNames:t.DEFAULT_CLASSNAMES}},18:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},978:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},948:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},359:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},285:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},533:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},187:function(e,t,i){var n=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),r=this&&this.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||n(t,e,i)};Object.defineProperty(t,"__esModule",{value:!0}),r(i(18),t),r(i(978),t),r(i(948),t),r(i(359),t),r(i(285),t),r(i(533),t),r(i(287),t),r(i(132),t),r(i(837),t),r(i(598),t),r(i(369),t),r(i(37),t),r(i(47),t),r(i(923),t),r(i(876),t)},287:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},132:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},837:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},598:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},37:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},369:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},47:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},923:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},876:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},799:function(e,t){var i;Object.defineProperty(t,"__esModule",{value:!0}),t.parseCustomProperties=t.diff=t.cloneObject=t.existsInArray=t.dispatchEvent=t.sortByScore=t.sortByAlpha=t.strToEl=t.sanitise=t.isScrolledIntoView=t.getAdjacentEl=t.wrap=t.isType=t.getType=t.generateId=t.generateChars=t.getRandomNumber=void 0,t.getRandomNumber=function(e,t){return Math.floor(Math.random()*(t-e)+e)},t.generateChars=function(e){return Array.from({length:e},(function(){return(0,t.getRandomNumber)(0,36).toString(36)})).join("")},t.generateId=function(e,i){var n=e.id||e.name&&"".concat(e.name,"-").concat((0,t.generateChars)(2))||(0,t.generateChars)(4);return n=n.replace(/(:|\.|\[|\]|,)/g,""),"".concat(i,"-").concat(n)},t.getType=function(e){return Object.prototype.toString.call(e).slice(8,-1)},t.isType=function(e,i){return null!=i&&(0,t.getType)(i)===e},t.wrap=function(e,t){return void 0===t&&(t=document.createElement("div")),e.parentNode&&(e.nextSibling?e.parentNode.insertBefore(t,e.nextSibling):e.parentNode.appendChild(t)),t.appendChild(e)},t.getAdjacentEl=function(e,t,i){void 0===i&&(i=1);for(var n="".concat(i>0?"next":"previous","ElementSibling"),r=e[n];r;){if(r.matches(t))return r;r=r[n]}return r},t.isScrolledIntoView=function(e,t,i){return void 0===i&&(i=1),!!e&&(i>0?t.scrollTop+t.offsetHeight>=e.offsetTop+e.offsetHeight:e.offsetTop>=t.scrollTop)},t.sanitise=function(e){return"string"!=typeof e?e:e.replace(/&/g,"&").replace(/>/g,">").replace(/-1?e.map((function(e){var t=e;return t.id===parseInt("".concat(o.choiceId),10)&&(t.selected=!0),t})):e;case"REMOVE_ITEM":var a=n;return a.choiceId&&a.choiceId>-1?e.map((function(e){var t=e;return t.id===parseInt("".concat(a.choiceId),10)&&(t.selected=!1),t})):e;case"FILTER_CHOICES":var c=n;return e.map((function(e){var t=e;return t.active=c.results.some((function(e){var i=e.item,n=e.score;return i.id===t.id&&(t.score=n,!0)})),t}));case"ACTIVATE_CHOICES":var l=n;return e.map((function(e){var t=e;return t.active=l.active,t}));case"CLEAR_CHOICES":return t.defaultState;default:return e}}},871:function(e,t){var i=this&&this.__spreadArray||function(e,t,i){if(i||2===arguments.length)for(var n,r=0,s=t.length;r0?"treeitem":"option"),Object.assign(E.dataset,{choice:"",id:d,value:p,selectText:i}),g?(E.classList.add(h),E.dataset.choiceDisabled="",E.setAttribute("aria-disabled","true")):(E.classList.add(c),E.dataset.choiceSelectable=""),E},input:function(e,t){var i=e.classNames,n=i.input,r=i.inputCloned,s=Object.assign(document.createElement("input"),{type:"search",className:"".concat(n," ").concat(r),autocomplete:"off",autocapitalize:"off",spellcheck:!1});return s.setAttribute("role","textbox"),s.setAttribute("aria-autocomplete","list"),s.setAttribute("aria-label",t),s},dropdown:function(e){var t=e.classNames,i=t.list,n=t.listDropdown,r=document.createElement("div");return r.classList.add(i,n),r.setAttribute("aria-expanded","false"),r},notice:function(e,t,i){var n,r=e.allowHTML,s=e.classNames,o=s.item,a=s.itemChoice,c=s.noResults,l=s.noChoices;void 0===i&&(i="");var h=[o,a];return"no-choices"===i?h.push(l):"no-results"===i&&h.push(c),Object.assign(document.createElement("div"),((n={})[r?"innerHTML":"innerText"]=t,n.className=h.join(" "),n))},option:function(e){var t=e.label,i=e.value,n=e.customProperties,r=e.active,s=e.disabled,o=new Option(t,i,!1,r);return n&&(o.dataset.customProperties="".concat(n)),o.disabled=!!s,o}};t.default=i},996:function(e){var t=function(e){return function(e){return!!e&&"object"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===i}(e)}(e)},i="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?a((i=e,Array.isArray(i)?[]:{}),e,t):e;var i}function r(e,t,i){return e.concat(t).map((function(e){return n(e,i)}))}function s(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return e.propertyIsEnumerable(t)})):[]}(e))}function o(e,t){try{return t in e}catch(e){return!1}}function a(e,i,c){(c=c||{}).arrayMerge=c.arrayMerge||r,c.isMergeableObject=c.isMergeableObject||t,c.cloneUnlessOtherwiseSpecified=n;var l=Array.isArray(i);return l===Array.isArray(e)?l?c.arrayMerge(e,i,c):function(e,t,i){var r={};return i.isMergeableObject(e)&&s(e).forEach((function(t){r[t]=n(e[t],i)})),s(t).forEach((function(s){(function(e,t){return o(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,s)||(o(e,s)&&i.isMergeableObject(t[s])?r[s]=function(e,t){if(!t.customMerge)return a;var i=t.customMerge(e);return"function"==typeof i?i:a}(s,i)(e[s],t[s],i):r[s]=n(t[s],i))})),r}(e,i,c):n(i,c)}a.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,i){return a(e,i,t)}),{})};var c=a;e.exports=c},221:function(e,t,i){function n(e){return Array.isArray?Array.isArray(e):"[object Array]"===l(e)}function r(e){return"string"==typeof e}function s(e){return"number"==typeof e}function o(e){return"object"==typeof e}function a(e){return null!=e}function c(e){return!e.trim().length}function l(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}i.r(t),i.d(t,{default:function(){return R}});const h=Object.prototype.hasOwnProperty;class u{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach((e=>{let i=d(e);t+=i.weight,this._keys.push(i),this._keyMap[i.id]=i,t+=i.weight})),this._keys.forEach((e=>{e.weight/=t}))}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function d(e){let t=null,i=null,s=null,o=1,a=null;if(r(e)||n(e))s=e,t=p(e),i=f(e);else{if(!h.call(e,"name"))throw new Error("Missing name property in key");const n=e.name;if(s=n,h.call(e,"weight")&&(o=e.weight,o<=0))throw new Error((e=>`Property 'weight' in key '${e}' must be a positive integer`)(n));t=p(n),i=f(n),a=e.getFn}return{path:t,id:i,weight:o,src:s,getFn:a}}function p(e){return n(e)?e:e.split(".")}function f(e){return n(e)?e.join("."):e}var m={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(e,t)=>e.score===t.score?e.idx{if(a(e))if(t[u]){const d=e[t[u]];if(!a(d))return;if(u===t.length-1&&(r(d)||s(d)||function(e){return!0===e||!1===e||function(e){return o(e)&&null!==e}(e)&&"[object Boolean]"==l(e)}(d)))i.push(function(e){return null==e?"":function(e){if("string"==typeof e)return e;let t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(e)}(d));else if(n(d)){c=!0;for(let e=0,i=d.length;e{this._keysMap[e.id]=t}))}create(){!this.isCreated&&this.docs.length&&(this.isCreated=!0,r(this.docs[0])?this.docs.forEach(((e,t)=>{this._addString(e,t)})):this.docs.forEach(((e,t)=>{this._addObject(e,t)})),this.norm.clear())}add(e){const t=this.size();r(e)?this._addString(e,t):this._addObject(e,t)}removeAt(e){this.records.splice(e,1);for(let t=e,i=this.size();t{let o=t.getFn?t.getFn(e):this.getFn(e,t.path);if(a(o))if(n(o)){let e=[];const t=[{nestedArrIndex:-1,value:o}];for(;t.length;){const{nestedArrIndex:i,value:s}=t.pop();if(a(s))if(r(s)&&!c(s)){let t={v:s,i:i,n:this.norm.get(s)};e.push(t)}else n(s)&&s.forEach(((e,i)=>{t.push({nestedArrIndex:i,value:e})}))}i.$[s]=e}else if(r(o)&&!c(o)){let e={v:o,n:this.norm.get(o)};i.$[s]=e}})),this.records.push(i)}toJSON(){return{keys:this.keys,records:this.records}}}function _(e,t,{getFn:i=m.getFn,fieldNormWeight:n=m.fieldNormWeight}={}){const r=new g({getFn:i,fieldNormWeight:n});return r.setKeys(e.map(d)),r.setSources(t),r.create(),r}function y(e,{errors:t=0,currentLocation:i=0,expectedLocation:n=0,distance:r=m.distance,ignoreLocation:s=m.ignoreLocation}={}){const o=t/e.length;if(s)return o;const a=Math.abs(n-i);return r?o+a/r:a?1:o}const E=32;function b(e){let t={};for(let i=0,n=e.length;i{this.chunks.push({pattern:e,alphabet:b(e),startIndex:t})},h=this.pattern.length;if(h>E){let e=0;const t=h%E,i=h-t;for(;e{const{isMatch:f,score:v,indices:g}=function(e,t,i,{location:n=m.location,distance:r=m.distance,threshold:s=m.threshold,findAllMatches:o=m.findAllMatches,minMatchCharLength:a=m.minMatchCharLength,includeMatches:c=m.includeMatches,ignoreLocation:l=m.ignoreLocation}={}){if(t.length>E)throw new Error("Pattern length exceeds max of 32.");const h=t.length,u=e.length,d=Math.max(0,Math.min(n,u));let p=s,f=d;const v=a>1||c,g=v?Array(u):[];let _;for(;(_=e.indexOf(t,f))>-1;){let e=y(t,{currentLocation:_,expectedLocation:d,distance:r,ignoreLocation:l});if(p=Math.min(e,p),f=_+h,v){let e=0;for(;e=c;s-=1){let o=s-1,a=i[e.charAt(o)];if(v&&(g[o]=+!!a),_[s]=(_[s+1]<<1|1)&a,n&&(_[s]|=(b[s+1]|b[s])<<1|1|b[s+1]),_[s]&I&&(S=y(t,{errors:n,currentLocation:o,expectedLocation:d,distance:r,ignoreLocation:l}),S<=p)){if(p=S,f=o,f<=d)break;c=Math.max(1,2*d-f)}}if(y(t,{errors:n+1,currentLocation:d,expectedLocation:d,distance:r,ignoreLocation:l})>p)break;b=_}const C={isMatch:f>=0,score:Math.max(.001,S)};if(v){const e=function(e=[],t=m.minMatchCharLength){let i=[],n=-1,r=-1,s=0;for(let o=e.length;s=t&&i.push([n,r]),n=-1)}return e[s-1]&&s-n>=t&&i.push([n,s-1]),i}(g,a);e.length?c&&(C.indices=e):C.isMatch=!1}return C}(e,t,d,{location:n+p,distance:r,threshold:s,findAllMatches:o,minMatchCharLength:a,includeMatches:i,ignoreLocation:c});f&&(u=!0),h+=v,f&&g&&(l=[...l,...g])}));let d={isMatch:u,score:u?h/this.chunks.length:1};return u&&i&&(d.indices=l),d}}class O{constructor(e){this.pattern=e}static isMultiMatch(e){return I(e,this.multiRegex)}static isSingleMatch(e){return I(e,this.singleRegex)}search(){}}function I(e,t){const i=e.match(t);return i?i[1]:null}class C extends O{constructor(e,{location:t=m.location,threshold:i=m.threshold,distance:n=m.distance,includeMatches:r=m.includeMatches,findAllMatches:s=m.findAllMatches,minMatchCharLength:o=m.minMatchCharLength,isCaseSensitive:a=m.isCaseSensitive,ignoreLocation:c=m.ignoreLocation}={}){super(e),this._bitapSearch=new S(e,{location:t,threshold:i,distance:n,includeMatches:r,findAllMatches:s,minMatchCharLength:o,isCaseSensitive:a,ignoreLocation:c})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(e){return this._bitapSearch.searchIn(e)}}class T extends O{constructor(e){super(e)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(e){let t,i=0;const n=[],r=this.pattern.length;for(;(t=e.indexOf(this.pattern,i))>-1;)i=t+r,n.push([t,i-1]);const s=!!n.length;return{isMatch:s,score:s?0:1,indices:n}}}const L=[class extends O{constructor(e){super(e)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(e){const t=e===this.pattern;return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},T,class extends O{constructor(e){super(e)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(e){const t=e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(e){const t=!e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(e){const t=!e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(e){const t=e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[e.length-this.pattern.length,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(e){const t=-1===e.indexOf(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},C],w=L.length,A=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,M=new Set([C.type,T.type]);const P=[];function x(e,t){for(let i=0,n=P.length;i!(!e.$and&&!e.$or),j=e=>({[N]:Object.keys(e).map((t=>({[t]:e[t]})))});function F(e,t,{auto:i=!0}={}){const s=e=>{let a=Object.keys(e);const c=(e=>!!e.$path)(e);if(!c&&a.length>1&&!D(e))return s(j(e));if((e=>!n(e)&&o(e)&&!D(e))(e)){const n=c?e.$path:a[0],s=c?e.$val:e[n];if(!r(s))throw new Error((e=>`Invalid value for key ${e}`)(n));const o={keyId:f(n),pattern:s};return i&&(o.searcher=x(s,t)),o}let l={children:[],operator:a[0]};return a.forEach((t=>{const i=e[t];n(i)&&i.forEach((e=>{l.children.push(s(e))}))})),l};return D(e)||(e=j(e)),s(e)}function k(e,t){const i=e.matches;t.matches=[],a(i)&&i.forEach((e=>{if(!a(e.indices)||!e.indices.length)return;const{indices:i,value:n}=e;let r={indices:i,value:n};e.key&&(r.key=e.key.src),e.idx>-1&&(r.refIndex=e.idx),t.matches.push(r)}))}function K(e,t){t.score=e.score}class R{constructor(e,t={},i){this.options={...m,...t},this.options.useExtendedSearch,this._keyStore=new u(this.options.keys),this.setCollection(e,i)}setCollection(e,t){if(this._docs=e,t&&!(t instanceof g))throw new Error("Incorrect 'index' type");this._myIndex=t||_(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(e){a(e)&&(this._docs.push(e),this._myIndex.add(e))}remove(e=(()=>!1)){const t=[];for(let i=0,n=this._docs.length;i{let i=1;e.matches.forEach((({key:e,norm:n,score:r})=>{const s=e?e.weight:null;i*=Math.pow(0===r&&s?Number.EPSILON:r,(s||1)*(t?1:n))})),e.score=i}))}(l,{ignoreFieldNorm:c}),o&&l.sort(a),s(t)&&t>-1&&(l=l.slice(0,t)),function(e,t,{includeMatches:i=m.includeMatches,includeScore:n=m.includeScore}={}){const r=[];return i&&r.push(k),n&&r.push(K),e.map((e=>{const{idx:i}=e,n={item:t[i],refIndex:i};return r.length&&r.forEach((t=>{t(e,n)})),n}))}(l,this._docs,{includeMatches:i,includeScore:n})}_searchStringList(e){const t=x(e,this.options),{records:i}=this._myIndex,n=[];return i.forEach((({v:e,i:i,n:r})=>{if(!a(e))return;const{isMatch:s,score:o,indices:c}=t.searchIn(e);s&&n.push({item:e,idx:i,matches:[{score:o,value:e,norm:r,indices:c}]})})),n}_searchLogical(e){const t=F(e,this.options),i=(e,t,n)=>{if(!e.children){const{keyId:i,searcher:r}=e,s=this._findMatches({key:this._keyStore.get(i),value:this._myIndex.getValueForItemAtKeyId(t,i),searcher:r});return s&&s.length?[{idx:n,item:t,matches:s}]:[]}const r=[];for(let s=0,o=e.children.length;s{if(a(e)){let o=i(t,e,n);o.length&&(r[n]||(r[n]={idx:n,item:e,matches:[]},s.push(r[n])),o.forEach((({matches:e})=>{r[n].matches.push(...e)})))}})),s}_searchObjectList(e){const t=x(e,this.options),{keys:i,records:n}=this._myIndex,r=[];return n.forEach((({$:e,i:n})=>{if(!a(e))return;let s=[];i.forEach(((i,n)=>{s.push(...this._findMatches({key:i,value:e[n],searcher:t}))})),s.length&&r.push({idx:n,item:e,matches:s})})),r}_findMatches({key:e,value:t,searcher:i}){if(!a(t))return[];let r=[];if(n(t))t.forEach((({v:t,i:n,n:s})=>{if(!a(t))return;const{isMatch:o,score:c,indices:l}=i.searchIn(t);o&&r.push({score:c,key:e,value:t,idx:n,norm:s,indices:l})}));else{const{v:n,n:s}=t,{isMatch:o,score:a,indices:c}=i.searchIn(n);o&&r.push({score:a,key:e,value:n,norm:s,indices:c})}return r}}R.version="6.6.2",R.createIndex=_,R.parseIndex=function(e,{getFn:t=m.getFn,fieldNormWeight:i=m.fieldNormWeight}={}){const{keys:n,records:r}=e,s=new g({getFn:t,fieldNormWeight:i});return s.setKeys(n),s.setIndexRecords(r),s},R.config=m,R.parseQuery=F,function(...e){P.push(...e)}(class{constructor(e,{isCaseSensitive:t=m.isCaseSensitive,includeMatches:i=m.includeMatches,minMatchCharLength:n=m.minMatchCharLength,ignoreLocation:r=m.ignoreLocation,findAllMatches:s=m.findAllMatches,location:o=m.location,threshold:a=m.threshold,distance:c=m.distance}={}){this.query=null,this.options={isCaseSensitive:t,includeMatches:i,minMatchCharLength:n,findAllMatches:s,ignoreLocation:r,location:o,threshold:a,distance:c},this.pattern=t?e:e.toLowerCase(),this.query=function(e,t={}){return e.split("|").map((e=>{let i=e.trim().split(A).filter((e=>e&&!!e.trim())),n=[];for(let e=0,r=i.length;e=0?this._store.getGroupById(r):null;return this._store.dispatch((0,l.highlightItem)(i,!0)),t&&this.passedElement.triggerEvent(d.EVENTS.highlightItem,{id:i,value:o,label:c,groupValue:h&&h.value?h.value:null}),this},e.prototype.unhighlightItem=function(e){if(!e||!e.id)return this;var t=e.id,i=e.groupId,n=void 0===i?-1:i,r=e.value,s=void 0===r?"":r,o=e.label,a=void 0===o?"":o,c=n>=0?this._store.getGroupById(n):null;return this._store.dispatch((0,l.highlightItem)(t,!1)),this.passedElement.triggerEvent(d.EVENTS.highlightItem,{id:t,value:s,label:a,groupValue:c&&c.value?c.value:null}),this},e.prototype.highlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.highlightItem(t)})),this},e.prototype.unhighlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.unhighlightItem(t)})),this},e.prototype.removeActiveItemsByValue=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.value===e})).forEach((function(e){return t._removeItem(e)})),this},e.prototype.removeActiveItems=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.id!==e})).forEach((function(e){return t._removeItem(e)})),this},e.prototype.removeHighlightedItems=function(e){var t=this;return void 0===e&&(e=!1),this._store.highlightedActiveItems.forEach((function(i){t._removeItem(i),e&&t._triggerChange(i.value)})),this},e.prototype.showDropdown=function(e){var t=this;return this.dropdown.isActive||requestAnimationFrame((function(){t.dropdown.show(),t.containerOuter.open(t.dropdown.distanceFromTopWindow),!e&&t._canSearch&&t.input.focus(),t.passedElement.triggerEvent(d.EVENTS.showDropdown,{})})),this},e.prototype.hideDropdown=function(e){var t=this;return this.dropdown.isActive?(requestAnimationFrame((function(){t.dropdown.hide(),t.containerOuter.close(),!e&&t._canSearch&&(t.input.removeActiveDescendant(),t.input.blur()),t.passedElement.triggerEvent(d.EVENTS.hideDropdown,{})})),this):this},e.prototype.getValue=function(e){void 0===e&&(e=!1);var t=this._store.activeItems.reduce((function(t,i){var n=e?i.value:i;return t.push(n),t}),[]);return this._isSelectOneElement?t[0]:t},e.prototype.setValue=function(e){var t=this;return this.initialised?(e.forEach((function(e){return t._setChoiceOrItem(e)})),this):this},e.prototype.setChoiceByValue=function(e){var t=this;return!this.initialised||this._isTextElement||(Array.isArray(e)?e:[e]).forEach((function(e){return t._findAndSelectChoiceByValue(e)})),this},e.prototype.setChoices=function(e,t,i,n){var r=this;if(void 0===e&&(e=[]),void 0===t&&(t="value"),void 0===i&&(i="label"),void 0===n&&(n=!1),!this.initialised)throw new ReferenceError("setChoices was called on a non-initialized instance of Choices");if(!this._isSelectElement)throw new TypeError("setChoices can't be used with INPUT based Choices");if("string"!=typeof t||!t)throw new TypeError("value parameter must be a name of 'value' field in passed objects");if(n&&this.clearChoices(),"function"==typeof e){var s=e(this);if("function"==typeof Promise&&s instanceof Promise)return new Promise((function(e){return requestAnimationFrame(e)})).then((function(){return r._handleLoadingState(!0)})).then((function(){return s})).then((function(e){return r.setChoices(e,t,i,n)})).catch((function(e){r.config.silent||console.error(e)})).then((function(){return r._handleLoadingState(!1)})).then((function(){return r}));if(!Array.isArray(s))throw new TypeError(".setChoices first argument function must return either array of choices or Promise, got: ".concat(typeof s));return this.setChoices(s,t,i,!1)}if(!Array.isArray(e))throw new TypeError(".setChoices must be called either with array of choices with a function resulting into Promise of array of choices");return this.containerOuter.removeLoadingState(),this._startLoading(),e.forEach((function(e){if(e.choices)r._addGroup({id:e.id?parseInt("".concat(e.id),10):null,group:e,valueKey:t,labelKey:i});else{var n=e;r._addChoice({value:n[t],label:n[i],isSelected:!!n.selected,isDisabled:!!n.disabled,placeholder:!!n.placeholder,customProperties:n.customProperties})}})),this._stopLoading(),this},e.prototype.clearChoices=function(){return this._store.dispatch((0,a.clearChoices)()),this},e.prototype.clearStore=function(){return this._store.dispatch((0,h.clearAll)()),this},e.prototype.clearInput=function(){var e=!this._isSelectOneElement;return this.input.clear(e),!this._isTextElement&&this._canSearch&&(this._isSearching=!1,this._store.dispatch((0,a.activateChoices)(!0))),this},e.prototype._render=function(){if(!this._store.isLoading()){this._currentState=this._store.state;var e=this._currentState.choices!==this._prevState.choices||this._currentState.groups!==this._prevState.groups||this._currentState.items!==this._prevState.items,t=this._isSelectElement,i=this._currentState.items!==this._prevState.items;e&&(t&&this._renderChoices(),i&&this._renderItems(),this._prevState=this._currentState)}},e.prototype._renderChoices=function(){var e=this,t=this._store,i=t.activeGroups,n=t.activeChoices,r=document.createDocumentFragment();if(this.choiceList.clear(),this.config.resetScrollPosition&&requestAnimationFrame((function(){return e.choiceList.scrollToTop()})),i.length>=1&&!this._isSearching){var s=n.filter((function(e){return!0===e.placeholder&&-1===e.groupId}));s.length>=1&&(r=this._createChoicesFragment(s,r)),r=this._createGroupsFragment(i,n,r)}else n.length>=1&&(r=this._createChoicesFragment(n,r));if(r.childNodes&&r.childNodes.length>0){var o=this._store.activeItems,a=this._canAddItem(o,this.input.value);if(a.response)this.choiceList.append(r),this._highlightChoice();else{var c=this._getTemplate("notice",a.notice);this.choiceList.append(c)}}else{var l=void 0;c=void 0,this._isSearching?(c="function"==typeof this.config.noResultsText?this.config.noResultsText():this.config.noResultsText,l=this._getTemplate("notice",c,"no-results")):(c="function"==typeof this.config.noChoicesText?this.config.noChoicesText():this.config.noChoicesText,l=this._getTemplate("notice",c,"no-choices")),this.choiceList.append(l)}},e.prototype._renderItems=function(){var e=this._store.activeItems||[];this.itemList.clear();var t=this._createItemsFragment(e);t.childNodes&&this.itemList.append(t)},e.prototype._createGroupsFragment=function(e,t,i){var n=this;return void 0===i&&(i=document.createDocumentFragment()),this.config.shouldSort&&e.sort(this.config.sorter),e.forEach((function(e){var r=function(e){return t.filter((function(t){return n._isSelectOneElement?t.groupId===e.id:t.groupId===e.id&&("always"===n.config.renderSelectedChoices||!t.selected)}))}(e);if(r.length>=1){var s=n._getTemplate("choiceGroup",e);i.appendChild(s),n._createChoicesFragment(r,i,!0)}})),i},e.prototype._createChoicesFragment=function(e,t,i){var r=this;void 0===t&&(t=document.createDocumentFragment()),void 0===i&&(i=!1);var s=this.config,o=s.renderSelectedChoices,a=s.searchResultLimit,c=s.renderChoiceLimit,l=this._isSearching?f.sortByScore:this.config.sorter,h=function(e){if("auto"!==o||r._isSelectOneElement||!e.selected){var i=r._getTemplate("choice",e,r.config.itemSelectText);t.appendChild(i)}},u=e;"auto"!==o||this._isSelectOneElement||(u=e.filter((function(e){return!e.selected})));var d=u.reduce((function(e,t){return t.placeholder?e.placeholderChoices.push(t):e.normalChoices.push(t),e}),{placeholderChoices:[],normalChoices:[]}),p=d.placeholderChoices,m=d.normalChoices;(this.config.shouldSort||this._isSearching)&&m.sort(l);var v=u.length,g=this._isSelectOneElement?n(n([],p,!0),m,!0):m;this._isSearching?v=a:c&&c>0&&!i&&(v=c);for(var _=0;_=n){var o=r?this._searchChoices(e):0;this.passedElement.triggerEvent(d.EVENTS.search,{value:e,resultCount:o})}else s&&(this._isSearching=!1,this._store.dispatch((0,a.activateChoices)(!0)))}},e.prototype._canAddItem=function(e,t){var i=!0,n="function"==typeof this.config.addItemText?this.config.addItemText(t):this.config.addItemText;if(!this._isSelectOneElement){var r=(0,f.existsInArray)(e,t);this.config.maxItemCount>0&&this.config.maxItemCount<=e.length&&(i=!1,n="function"==typeof this.config.maxItemText?this.config.maxItemText(this.config.maxItemCount):this.config.maxItemText),!this.config.duplicateItemsAllowed&&r&&i&&(i=!1,n="function"==typeof this.config.uniqueItemText?this.config.uniqueItemText(t):this.config.uniqueItemText),this._isTextElement&&this.config.addItems&&i&&"function"==typeof this.config.addItemFilter&&!this.config.addItemFilter(t)&&(i=!1,n="function"==typeof this.config.customAddItemText?this.config.customAddItemText(t):this.config.customAddItemText)}return{response:i,notice:n}},e.prototype._searchChoices=function(e){var t="string"==typeof e?e.trim():e,i="string"==typeof this._currentValue?this._currentValue.trim():this._currentValue;if(t.length<1&&t==="".concat(i," "))return 0;var r=this._store.searchableChoices,s=t,c=Object.assign(this.config.fuseOptions,{keys:n([],this.config.searchFields,!0),includeMatches:!0}),l=new o.default(r,c).search(s);return this._currentValue=t,this._highlightPosition=0,this._isSearching=!0,this._store.dispatch((0,a.filterChoices)(l)),l.length},e.prototype._addEventListeners=function(){var e=document.documentElement;e.addEventListener("touchend",this._onTouchEnd,!0),this.containerOuter.element.addEventListener("keydown",this._onKeyDown,!0),this.containerOuter.element.addEventListener("mousedown",this._onMouseDown,!0),e.addEventListener("click",this._onClick,{passive:!0}),e.addEventListener("touchmove",this._onTouchMove,{passive:!0}),this.dropdown.element.addEventListener("mouseover",this._onMouseOver,{passive:!0}),this._isSelectOneElement&&(this.containerOuter.element.addEventListener("focus",this._onFocus,{passive:!0}),this.containerOuter.element.addEventListener("blur",this._onBlur,{passive:!0})),this.input.element.addEventListener("keyup",this._onKeyUp,{passive:!0}),this.input.element.addEventListener("focus",this._onFocus,{passive:!0}),this.input.element.addEventListener("blur",this._onBlur,{passive:!0}),this.input.element.form&&this.input.element.form.addEventListener("reset",this._onFormReset,{passive:!0}),this.input.addEventListeners()},e.prototype._removeEventListeners=function(){var e=document.documentElement;e.removeEventListener("touchend",this._onTouchEnd,!0),this.containerOuter.element.removeEventListener("keydown",this._onKeyDown,!0),this.containerOuter.element.removeEventListener("mousedown",this._onMouseDown,!0),e.removeEventListener("click",this._onClick),e.removeEventListener("touchmove",this._onTouchMove),this.dropdown.element.removeEventListener("mouseover",this._onMouseOver),this._isSelectOneElement&&(this.containerOuter.element.removeEventListener("focus",this._onFocus),this.containerOuter.element.removeEventListener("blur",this._onBlur)),this.input.element.removeEventListener("keyup",this._onKeyUp),this.input.element.removeEventListener("focus",this._onFocus),this.input.element.removeEventListener("blur",this._onBlur),this.input.element.form&&this.input.element.form.removeEventListener("reset",this._onFormReset),this.input.removeEventListeners()},e.prototype._onKeyDown=function(e){var t=e.keyCode,i=this._store.activeItems,n=this.input.isFocussed,r=this.dropdown.isActive,s=this.itemList.hasChildren(),o=String.fromCharCode(t),a=/[^\x00-\x1F]/.test(o),c=d.KEY_CODES.BACK_KEY,l=d.KEY_CODES.DELETE_KEY,h=d.KEY_CODES.ENTER_KEY,u=d.KEY_CODES.A_KEY,p=d.KEY_CODES.ESC_KEY,f=d.KEY_CODES.UP_KEY,m=d.KEY_CODES.DOWN_KEY,v=d.KEY_CODES.PAGE_UP_KEY,g=d.KEY_CODES.PAGE_DOWN_KEY;switch(this._isTextElement||r||!a||(this.showDropdown(),this.input.isFocussed||(this.input.value+=e.key.toLowerCase())),t){case u:return this._onSelectKey(e,s);case h:return this._onEnterKey(e,i,r);case p:return this._onEscapeKey(r);case f:case v:case m:case g:return this._onDirectionKey(e,r);case l:case c:return this._onDeleteKey(e,i,n)}},e.prototype._onKeyUp=function(e){var t=e.target,i=e.keyCode,n=this.input.value,r=this._store.activeItems,s=this._canAddItem(r,n),o=d.KEY_CODES.BACK_KEY,c=d.KEY_CODES.DELETE_KEY;if(this._isTextElement)if(s.notice&&n){var l=this._getTemplate("notice",s.notice);this.dropdown.element.innerHTML=l.outerHTML,this.showDropdown(!0)}else this.hideDropdown(!0);else{var h=(i===o||i===c)&&t&&!t.value,u=!this._isTextElement&&this._isSearching,p=this._canSearch&&s.response;h&&u?(this._isSearching=!1,this._store.dispatch((0,a.activateChoices)(!0))):p&&this._handleSearch(this.input.rawValue)}this._canSearch=this.config.searchEnabled},e.prototype._onSelectKey=function(e,t){var i=e.ctrlKey,n=e.metaKey;(i||n)&&t&&(this._canSearch=!1,this.config.removeItems&&!this.input.value&&this.input.element===document.activeElement&&this.highlightAll())},e.prototype._onEnterKey=function(e,t,i){var n=e.target,r=d.KEY_CODES.ENTER_KEY,s=n&&n.hasAttribute("data-button");if(this._isTextElement&&n&&n.value){var o=this.input.value;this._canAddItem(t,o).response&&(this.hideDropdown(!0),this._addItem({value:o}),this._triggerChange(o),this.clearInput())}if(s&&(this._handleButtonAction(t,n),e.preventDefault()),i){var a=this.dropdown.getChild(".".concat(this.config.classNames.highlightedState));a&&(t[0]&&(t[0].keyCode=r),this._handleChoiceAction(t,a)),e.preventDefault()}else this._isSelectOneElement&&(this.showDropdown(),e.preventDefault())},e.prototype._onEscapeKey=function(e){e&&(this.hideDropdown(!0),this.containerOuter.focus())},e.prototype._onDirectionKey=function(e,t){var i=e.keyCode,n=e.metaKey,r=d.KEY_CODES.DOWN_KEY,s=d.KEY_CODES.PAGE_UP_KEY,o=d.KEY_CODES.PAGE_DOWN_KEY;if(t||this._isSelectOneElement){this.showDropdown(),this._canSearch=!1;var a=i===r||i===o?1:-1,c="[data-choice-selectable]",l=void 0;if(n||i===o||i===s)l=a>0?this.dropdown.element.querySelector("".concat(c,":last-of-type")):this.dropdown.element.querySelector(c);else{var h=this.dropdown.element.querySelector(".".concat(this.config.classNames.highlightedState));l=h?(0,f.getAdjacentEl)(h,c,a):this.dropdown.element.querySelector(c)}l&&((0,f.isScrolledIntoView)(l,this.choiceList.element,a)||this.choiceList.scrollToChildElement(l,a),this._highlightChoice(l)),e.preventDefault()}},e.prototype._onDeleteKey=function(e,t,i){var n=e.target;this._isSelectOneElement||n.value||!i||(this._handleBackspace(t),e.preventDefault())},e.prototype._onTouchMove=function(){this._wasTap&&(this._wasTap=!1)},e.prototype._onTouchEnd=function(e){var t=(e||e.touches[0]).target;this._wasTap&&this.containerOuter.element.contains(t)&&((t===this.containerOuter.element||t===this.containerInner.element)&&(this._isTextElement?this.input.focus():this._isSelectMultipleElement&&this.showDropdown()),e.stopPropagation()),this._wasTap=!0},e.prototype._onMouseDown=function(e){var t=e.target;if(t instanceof HTMLElement){if(_&&this.choiceList.element.contains(t)){var i=this.choiceList.element.firstElementChild,n="ltr"===this._direction?e.offsetX>=i.offsetWidth:e.offsetX0&&this.unhighlightAll(),this.containerOuter.removeFocusState(),this.hideDropdown(!0))},e.prototype._onFocus=function(e){var t,i=this,n=e.target;n&&this.containerOuter.element.contains(n)&&((t={})[d.TEXT_TYPE]=function(){n===i.input.element&&i.containerOuter.addFocusState()},t[d.SELECT_ONE_TYPE]=function(){i.containerOuter.addFocusState(),n===i.input.element&&i.showDropdown(!0)},t[d.SELECT_MULTIPLE_TYPE]=function(){n===i.input.element&&(i.showDropdown(!0),i.containerOuter.addFocusState())},t)[this.passedElement.element.type]()},e.prototype._onBlur=function(e){var t,i=this,n=e.target;if(n&&this.containerOuter.element.contains(n)&&!this._isScrollingOnIe){var r=this._store.activeItems.some((function(e){return e.highlighted}));((t={})[d.TEXT_TYPE]=function(){n===i.input.element&&(i.containerOuter.removeFocusState(),r&&i.unhighlightAll(),i.hideDropdown(!0))},t[d.SELECT_ONE_TYPE]=function(){i.containerOuter.removeFocusState(),(n===i.input.element||n===i.containerOuter.element&&!i._canSearch)&&i.hideDropdown(!0)},t[d.SELECT_MULTIPLE_TYPE]=function(){n===i.input.element&&(i.containerOuter.removeFocusState(),i.hideDropdown(!0),r&&i.unhighlightAll())},t)[this.passedElement.element.type]()}else this._isScrollingOnIe=!1,this.input.element.focus()},e.prototype._onFormReset=function(){this._store.dispatch((0,h.resetTo)(this._initialState))},e.prototype._highlightChoice=function(e){var t=this;void 0===e&&(e=null);var i=Array.from(this.dropdown.element.querySelectorAll("[data-choice-selectable]"));if(i.length){var n=e;Array.from(this.dropdown.element.querySelectorAll(".".concat(this.config.classNames.highlightedState))).forEach((function(e){e.classList.remove(t.config.classNames.highlightedState),e.setAttribute("aria-selected","false")})),n?this._highlightPosition=i.indexOf(n):(n=i.length>this._highlightPosition?i[this._highlightPosition]:i[i.length-1])||(n=i[0]),n.classList.add(this.config.classNames.highlightedState),n.setAttribute("aria-selected","true"),this.passedElement.triggerEvent(d.EVENTS.highlightChoice,{el:n}),this.dropdown.isActive&&(this.input.setActiveDescendant(n.id),this.containerOuter.setActiveDescendant(n.id))}},e.prototype._addItem=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,r=e.choiceId,s=void 0===r?-1:r,o=e.groupId,a=void 0===o?-1:o,c=e.customProperties,h=void 0===c?{}:c,u=e.placeholder,p=void 0!==u&&u,f=e.keyCode,m=void 0===f?-1:f,v="string"==typeof t?t.trim():t,g=this._store.items,_=n||v,y=s||-1,E=a>=0?this._store.getGroupById(a):null,b=g?g.length+1:1;this.config.prependValue&&(v=this.config.prependValue+v.toString()),this.config.appendValue&&(v+=this.config.appendValue.toString()),this._store.dispatch((0,l.addItem)({value:v,label:_,id:b,choiceId:y,groupId:a,customProperties:h,placeholder:p,keyCode:m})),this._isSelectOneElement&&this.removeActiveItems(b),this.passedElement.triggerEvent(d.EVENTS.addItem,{id:b,value:v,label:_,customProperties:h,groupValue:E&&E.value?E.value:null,keyCode:m})},e.prototype._removeItem=function(e){var t=e.id,i=e.value,n=e.label,r=e.customProperties,s=e.choiceId,o=e.groupId,a=o&&o>=0?this._store.getGroupById(o):null;t&&s&&(this._store.dispatch((0,l.removeItem)(t,s)),this.passedElement.triggerEvent(d.EVENTS.removeItem,{id:t,value:i,label:n,customProperties:r,groupValue:a&&a.value?a.value:null}))},e.prototype._addChoice=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,r=e.isSelected,s=void 0!==r&&r,o=e.isDisabled,c=void 0!==o&&o,l=e.groupId,h=void 0===l?-1:l,u=e.customProperties,d=void 0===u?{}:u,p=e.placeholder,f=void 0!==p&&p,m=e.keyCode,v=void 0===m?-1:m;if(null!=t){var g=this._store.choices,_=n||t,y=g?g.length+1:1,E="".concat(this._baseId,"-").concat(this._idNames.itemChoice,"-").concat(y);this._store.dispatch((0,a.addChoice)({id:y,groupId:h,elementId:E,value:t,label:_,disabled:c,customProperties:d,placeholder:f,keyCode:v})),s&&this._addItem({value:t,label:_,choiceId:y,customProperties:d,placeholder:f,keyCode:v})}},e.prototype._addGroup=function(e){var t=this,i=e.group,n=e.id,r=e.valueKey,s=void 0===r?"value":r,o=e.labelKey,a=void 0===o?"label":o,l=(0,f.isType)("Object",i)?i.choices:Array.from(i.getElementsByTagName("OPTION")),h=n||Math.floor((new Date).valueOf()*Math.random()),u=!!i.disabled&&i.disabled;l?(this._store.dispatch((0,c.addGroup)({value:i.label,id:h,active:!0,disabled:u})),l.forEach((function(e){var i=e.disabled||e.parentNode&&e.parentNode.disabled;t._addChoice({value:e[s],label:(0,f.isType)("Object",e)?e[a]:e.innerHTML,isSelected:e.selected,isDisabled:i,groupId:h,customProperties:e.customProperties,placeholder:e.placeholder})}))):this._store.dispatch((0,c.addGroup)({value:i.label,id:i.id,active:!1,disabled:i.disabled}))},e.prototype._getTemplate=function(e){for(var t,i=[],r=1;r0?this.element.scrollTop+o-r:e.offsetTop;requestAnimationFrame((function(){i._animateScroll(a,t)}))}},e.prototype._scrollDown=function(e,t,i){var n=(i-e)/t,r=n>1?n:1;this.element.scrollTop=e+r},e.prototype._scrollUp=function(e,t,i){var n=(e-i)/t,r=n>1?n:1;this.element.scrollTop=e-r},e.prototype._animateScroll=function(e,t){var i=this,r=n.SCROLLING_SPEED,s=this.element.scrollTop,o=!1;t>0?(this._scrollDown(s,r,e),se&&(o=!0)),o&&requestAnimationFrame((function(){i._animateScroll(e,t)}))},e}();t.default=r},730:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0});var n=i(799),r=function(){function e(e){var t=e.element,i=e.classNames;if(this.element=t,this.classNames=i,!(t instanceof HTMLInputElement||t instanceof HTMLSelectElement))throw new TypeError("Invalid element passed");this.isDisabled=!1}return Object.defineProperty(e.prototype,"isActive",{get:function(){return"active"===this.element.dataset.choice},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"dir",{get:function(){return this.element.dir},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"value",{get:function(){return this.element.value},set:function(e){this.element.value=e},enumerable:!1,configurable:!0}),e.prototype.conceal=function(){this.element.classList.add(this.classNames.input),this.element.hidden=!0,this.element.tabIndex=-1;var e=this.element.getAttribute("style");e&&this.element.setAttribute("data-choice-orig-style",e),this.element.setAttribute("data-choice","active")},e.prototype.reveal=function(){this.element.classList.remove(this.classNames.input),this.element.hidden=!1,this.element.removeAttribute("tabindex");var e=this.element.getAttribute("data-choice-orig-style");e?(this.element.removeAttribute("data-choice-orig-style"),this.element.setAttribute("style",e)):this.element.removeAttribute("style"),this.element.removeAttribute("data-choice"),this.element.value=this.element.value},e.prototype.enable=function(){this.element.removeAttribute("disabled"),this.element.disabled=!1,this.isDisabled=!1},e.prototype.disable=function(){this.element.setAttribute("disabled",""),this.element.disabled=!0,this.isDisabled=!0},e.prototype.triggerEvent=function(e,t){(0,n.dispatchEvent)(this.element,e,t)},e}();t.default=r},541:function(e,t,i){var n,r=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=function(e){function t(t){var i=t.element,n=t.classNames,r=t.delimiter,s=e.call(this,{element:i,classNames:n})||this;return s.delimiter=r,s}return r(t,e),Object.defineProperty(t.prototype,"value",{get:function(){return this.element.value},set:function(e){this.element.setAttribute("value",e),this.element.value=e},enumerable:!1,configurable:!0}),t}(s(i(730)).default);t.default=o},982:function(e,t,i){var n,r=this&&this.__extends||(n=function(e,t){return n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},n(e,t)},function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function i(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(i.prototype=t.prototype,new i)}),s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var o=function(e){function t(t){var i=t.element,n=t.classNames,r=t.template,s=e.call(this,{element:i,classNames:n})||this;return s.template=r,s}return r(t,e),Object.defineProperty(t.prototype,"placeholderOption",{get:function(){return this.element.querySelector('option[value=""]')||this.element.querySelector("option[placeholder]")},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"optionGroups",{get:function(){return Array.from(this.element.getElementsByTagName("OPTGROUP"))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"options",{get:function(){return Array.from(this.element.options)},set:function(e){var t=this,i=document.createDocumentFragment();e.forEach((function(e){return n=e,r=t.template(n),void i.appendChild(r);var n,r})),this.appendDocFragment(i)},enumerable:!1,configurable:!0}),t.prototype.appendDocFragment=function(e){this.element.innerHTML="",this.element.appendChild(e)},t}(s(i(730)).default);t.default=o},883:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.SCROLLING_SPEED=t.SELECT_MULTIPLE_TYPE=t.SELECT_ONE_TYPE=t.TEXT_TYPE=t.KEY_CODES=t.ACTION_TYPES=t.EVENTS=void 0,t.EVENTS={showDropdown:"showDropdown",hideDropdown:"hideDropdown",change:"change",choice:"choice",search:"search",addItem:"addItem",removeItem:"removeItem",highlightItem:"highlightItem",highlightChoice:"highlightChoice",unhighlightItem:"unhighlightItem"},t.ACTION_TYPES={ADD_CHOICE:"ADD_CHOICE",FILTER_CHOICES:"FILTER_CHOICES",ACTIVATE_CHOICES:"ACTIVATE_CHOICES",CLEAR_CHOICES:"CLEAR_CHOICES",ADD_GROUP:"ADD_GROUP",ADD_ITEM:"ADD_ITEM",REMOVE_ITEM:"REMOVE_ITEM",HIGHLIGHT_ITEM:"HIGHLIGHT_ITEM",CLEAR_ALL:"CLEAR_ALL",RESET_TO:"RESET_TO",SET_IS_LOADING:"SET_IS_LOADING"},t.KEY_CODES={BACK_KEY:46,DELETE_KEY:8,ENTER_KEY:13,A_KEY:65,ESC_KEY:27,UP_KEY:38,DOWN_KEY:40,PAGE_UP_KEY:33,PAGE_DOWN_KEY:34},t.TEXT_TYPE="text",t.SELECT_ONE_TYPE="select-one",t.SELECT_MULTIPLE_TYPE="select-multiple",t.SCROLLING_SPEED=4},789:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CONFIG=t.DEFAULT_CLASSNAMES=void 0;var n=i(799);t.DEFAULT_CLASSNAMES={containerOuter:"choices",containerInner:"choices__inner",input:"choices__input",inputCloned:"choices__input--cloned",list:"choices__list",listItems:"choices__list--multiple",listSingle:"choices__list--single",listDropdown:"choices__list--dropdown",item:"choices__item",itemSelectable:"choices__item--selectable",itemDisabled:"choices__item--disabled",itemChoice:"choices__item--choice",placeholder:"choices__placeholder",group:"choices__group",groupHeading:"choices__heading",button:"choices__button",activeState:"is-active",focusState:"is-focused",openState:"is-open",disabledState:"is-disabled",highlightedState:"is-highlighted",selectedState:"is-selected",flippedState:"is-flipped",loadingState:"is-loading",noResults:"has-no-results",noChoices:"has-no-choices"},t.DEFAULT_CONFIG={items:[],choices:[],silent:!1,renderChoiceLimit:-1,maxItemCount:-1,addItems:!0,addItemFilter:null,removeItems:!0,removeItemButton:!1,editItems:!1,allowHTML:!0,duplicateItemsAllowed:!0,delimiter:",",paste:!0,searchEnabled:!0,searchChoices:!0,searchFloor:1,searchResultLimit:4,searchFields:["label","value"],position:"auto",resetScrollPosition:!0,shouldSort:!0,shouldSortItems:!1,sorter:n.sortByAlpha,placeholder:!0,placeholderValue:null,searchPlaceholderValue:null,prependValue:null,appendValue:null,renderSelectedChoices:"auto",loadingText:"Loading...",noResultsText:"No results found",noChoicesText:"No choices to choose from",itemSelectText:"Press to select",uniqueItemText:"Only unique values can be added",customAddItemText:"Only values matching specific conditions can be added",addItemText:function(e){return'Press Enter to add "'.concat((0,n.sanitise)(e),'"')},maxItemText:function(e){return"Only ".concat(e," values can be added")},valueComparer:function(e,t){return e===t},fuseOptions:{includeScore:!0},labelId:"",callbackOnInit:null,callbackOnCreateTemplates:null,classNames:t.DEFAULT_CLASSNAMES}},18:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},978:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},948:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},359:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},285:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},533:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},187:function(e,t,i){var n=this&&this.__createBinding||(Object.create?function(e,t,i,n){void 0===n&&(n=i);var r=Object.getOwnPropertyDescriptor(t,i);r&&!("get"in r?!t.__esModule:r.writable||r.configurable)||(r={enumerable:!0,get:function(){return t[i]}}),Object.defineProperty(e,n,r)}:function(e,t,i,n){void 0===n&&(n=i),e[n]=t[i]}),r=this&&this.__exportStar||function(e,t){for(var i in e)"default"===i||Object.prototype.hasOwnProperty.call(t,i)||n(t,e,i)};Object.defineProperty(t,"__esModule",{value:!0}),r(i(18),t),r(i(978),t),r(i(948),t),r(i(359),t),r(i(285),t),r(i(533),t),r(i(287),t),r(i(132),t),r(i(837),t),r(i(598),t),r(i(369),t),r(i(37),t),r(i(47),t),r(i(923),t),r(i(876),t)},287:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},132:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},837:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},598:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},37:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},369:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},47:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},923:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},876:function(e,t){Object.defineProperty(t,"__esModule",{value:!0})},799:function(e,t){var i;Object.defineProperty(t,"__esModule",{value:!0}),t.parseCustomProperties=t.diff=t.cloneObject=t.existsInArray=t.dispatchEvent=t.sortByScore=t.sortByAlpha=t.strToEl=t.sanitise=t.isScrolledIntoView=t.getAdjacentEl=t.wrap=t.isType=t.getType=t.generateId=t.generateChars=t.getRandomNumber=void 0,t.getRandomNumber=function(e,t){return Math.floor(Math.random()*(t-e)+e)},t.generateChars=function(e){return Array.from({length:e},(function(){return(0,t.getRandomNumber)(0,36).toString(36)})).join("")},t.generateId=function(e,i){var n=e.id||e.name&&"".concat(e.name,"-").concat((0,t.generateChars)(2))||(0,t.generateChars)(4);return n=n.replace(/(:|\.|\[|\]|,)/g,""),"".concat(i,"-").concat(n)},t.getType=function(e){return Object.prototype.toString.call(e).slice(8,-1)},t.isType=function(e,i){return null!=i&&(0,t.getType)(i)===e},t.wrap=function(e,t){return void 0===t&&(t=document.createElement("div")),e.parentNode&&(e.nextSibling?e.parentNode.insertBefore(t,e.nextSibling):e.parentNode.appendChild(t)),t.appendChild(e)},t.getAdjacentEl=function(e,t,i){void 0===i&&(i=1);for(var n="".concat(i>0?"next":"previous","ElementSibling"),r=e[n];r;){if(r.matches(t))return r;r=r[n]}return r},t.isScrolledIntoView=function(e,t,i){return void 0===i&&(i=1),!!e&&(i>0?t.scrollTop+t.offsetHeight>=e.offsetTop+e.offsetHeight:e.offsetTop>=t.scrollTop)},t.sanitise=function(e){return"string"!=typeof e?e:e.replace(/&/g,"&").replace(/>/g,">").replace(/-1?e.map((function(e){var t=e;return t.id===parseInt("".concat(o.choiceId),10)&&(t.selected=!0),t})):e;case"REMOVE_ITEM":var a=n;return a.choiceId&&a.choiceId>-1?e.map((function(e){var t=e;return t.id===parseInt("".concat(a.choiceId),10)&&(t.selected=!1),t})):e;case"FILTER_CHOICES":var c=n;return e.map((function(e){var t=e;return t.active=c.results.some((function(e){var i=e.item,n=e.score;return i.id===t.id&&(t.score=n,!0)})),t}));case"ACTIVATE_CHOICES":var l=n;return e.map((function(e){var t=e;return t.active=l.active,t}));case"CLEAR_CHOICES":return t.defaultState;default:return e}}},871:function(e,t){var i=this&&this.__spreadArray||function(e,t,i){if(i||2===arguments.length)for(var n,r=0,s=t.length;r0?"treeitem":"option"),Object.assign(E.dataset,{choice:"",id:d,value:p,selectText:i}),g?(E.classList.add(h),E.dataset.choiceDisabled="",E.setAttribute("aria-disabled","true")):(E.classList.add(c),E.dataset.choiceSelectable=""),E},input:function(e,t){var i=e.classNames,n=i.input,r=i.inputCloned,s=Object.assign(document.createElement("input"),{type:"search",className:"".concat(n," ").concat(r),autocomplete:"off",autocapitalize:"off",spellcheck:!1});return s.setAttribute("role","textbox"),s.setAttribute("aria-autocomplete","list"),s.setAttribute("aria-label",t),s},dropdown:function(e){var t=e.classNames,i=t.list,n=t.listDropdown,r=document.createElement("div");return r.classList.add(i,n),r.setAttribute("aria-expanded","false"),r},notice:function(e,t,i){var n,r=e.allowHTML,s=e.classNames,o=s.item,a=s.itemChoice,c=s.noResults,l=s.noChoices;void 0===i&&(i="");var h=[o,a];return"no-choices"===i?h.push(l):"no-results"===i&&h.push(c),Object.assign(document.createElement("div"),((n={})[r?"innerHTML":"innerText"]=t,n.className=h.join(" "),n))},option:function(e){var t=e.label,i=e.value,n=e.customProperties,r=e.active,s=e.disabled,o=new Option(t,i,!1,r);return n&&(o.dataset.customProperties="".concat(n)),o.disabled=!!s,o}};t.default=i},996:function(e){var t=function(e){return function(e){return!!e&&"object"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return"[object RegExp]"===t||"[object Date]"===t||function(e){return e.$$typeof===i}(e)}(e)},i="function"==typeof Symbol&&Symbol.for?Symbol.for("react.element"):60103;function n(e,t){return!1!==t.clone&&t.isMergeableObject(e)?a((i=e,Array.isArray(i)?[]:{}),e,t):e;var i}function r(e,t,i){return e.concat(t).map((function(e){return n(e,i)}))}function s(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return e.propertyIsEnumerable(t)})):[]}(e))}function o(e,t){try{return t in e}catch(e){return!1}}function a(e,i,c){(c=c||{}).arrayMerge=c.arrayMerge||r,c.isMergeableObject=c.isMergeableObject||t,c.cloneUnlessOtherwiseSpecified=n;var l=Array.isArray(i);return l===Array.isArray(e)?l?c.arrayMerge(e,i,c):function(e,t,i){var r={};return i.isMergeableObject(e)&&s(e).forEach((function(t){r[t]=n(e[t],i)})),s(t).forEach((function(s){(function(e,t){return o(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))})(e,s)||(o(e,s)&&i.isMergeableObject(t[s])?r[s]=function(e,t){if(!t.customMerge)return a;var i=t.customMerge(e);return"function"==typeof i?i:a}(s,i)(e[s],t[s],i):r[s]=n(t[s],i))})),r}(e,i,c):n(i,c)}a.all=function(e,t){if(!Array.isArray(e))throw new Error("first argument should be an array");return e.reduce((function(e,i){return a(e,i,t)}),{})};var c=a;e.exports=c},221:function(e,t,i){function n(e){return Array.isArray?Array.isArray(e):"[object Array]"===l(e)}function r(e){return"string"==typeof e}function s(e){return"number"==typeof e}function o(e){return"object"==typeof e}function a(e){return null!=e}function c(e){return!e.trim().length}function l(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}i.r(t),i.d(t,{default:function(){return R}});const h=Object.prototype.hasOwnProperty;class u{constructor(e){this._keys=[],this._keyMap={};let t=0;e.forEach((e=>{let i=d(e);t+=i.weight,this._keys.push(i),this._keyMap[i.id]=i,t+=i.weight})),this._keys.forEach((e=>{e.weight/=t}))}get(e){return this._keyMap[e]}keys(){return this._keys}toJSON(){return JSON.stringify(this._keys)}}function d(e){let t=null,i=null,s=null,o=1,a=null;if(r(e)||n(e))s=e,t=p(e),i=f(e);else{if(!h.call(e,"name"))throw new Error("Missing name property in key");const n=e.name;if(s=n,h.call(e,"weight")&&(o=e.weight,o<=0))throw new Error((e=>`Property 'weight' in key '${e}' must be a positive integer`)(n));t=p(n),i=f(n),a=e.getFn}return{path:t,id:i,weight:o,src:s,getFn:a}}function p(e){return n(e)?e:e.split(".")}function f(e){return n(e)?e.join("."):e}var m={isCaseSensitive:!1,includeScore:!1,keys:[],shouldSort:!0,sortFn:(e,t)=>e.score===t.score?e.idx{if(a(e))if(t[u]){const d=e[t[u]];if(!a(d))return;if(u===t.length-1&&(r(d)||s(d)||function(e){return!0===e||!1===e||function(e){return o(e)&&null!==e}(e)&&"[object Boolean]"==l(e)}(d)))i.push(function(e){return null==e?"":function(e){if("string"==typeof e)return e;let t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(e)}(d));else if(n(d)){c=!0;for(let e=0,i=d.length;e{this._keysMap[e.id]=t}))}create(){!this.isCreated&&this.docs.length&&(this.isCreated=!0,r(this.docs[0])?this.docs.forEach(((e,t)=>{this._addString(e,t)})):this.docs.forEach(((e,t)=>{this._addObject(e,t)})),this.norm.clear())}add(e){const t=this.size();r(e)?this._addString(e,t):this._addObject(e,t)}removeAt(e){this.records.splice(e,1);for(let t=e,i=this.size();t{let o=t.getFn?t.getFn(e):this.getFn(e,t.path);if(a(o))if(n(o)){let e=[];const t=[{nestedArrIndex:-1,value:o}];for(;t.length;){const{nestedArrIndex:i,value:s}=t.pop();if(a(s))if(r(s)&&!c(s)){let t={v:s,i:i,n:this.norm.get(s)};e.push(t)}else n(s)&&s.forEach(((e,i)=>{t.push({nestedArrIndex:i,value:e})}))}i.$[s]=e}else if(r(o)&&!c(o)){let e={v:o,n:this.norm.get(o)};i.$[s]=e}})),this.records.push(i)}toJSON(){return{keys:this.keys,records:this.records}}}function _(e,t,{getFn:i=m.getFn,fieldNormWeight:n=m.fieldNormWeight}={}){const r=new g({getFn:i,fieldNormWeight:n});return r.setKeys(e.map(d)),r.setSources(t),r.create(),r}function y(e,{errors:t=0,currentLocation:i=0,expectedLocation:n=0,distance:r=m.distance,ignoreLocation:s=m.ignoreLocation}={}){const o=t/e.length;if(s)return o;const a=Math.abs(n-i);return r?o+a/r:a?1:o}const E=32;function b(e){let t={};for(let i=0,n=e.length;i{this.chunks.push({pattern:e,alphabet:b(e),startIndex:t})},h=this.pattern.length;if(h>E){let e=0;const t=h%E,i=h-t;for(;e{const{isMatch:f,score:v,indices:g}=function(e,t,i,{location:n=m.location,distance:r=m.distance,threshold:s=m.threshold,findAllMatches:o=m.findAllMatches,minMatchCharLength:a=m.minMatchCharLength,includeMatches:c=m.includeMatches,ignoreLocation:l=m.ignoreLocation}={}){if(t.length>E)throw new Error("Pattern length exceeds max of 32.");const h=t.length,u=e.length,d=Math.max(0,Math.min(n,u));let p=s,f=d;const v=a>1||c,g=v?Array(u):[];let _;for(;(_=e.indexOf(t,f))>-1;){let e=y(t,{currentLocation:_,expectedLocation:d,distance:r,ignoreLocation:l});if(p=Math.min(e,p),f=_+h,v){let e=0;for(;e=c;s-=1){let o=s-1,a=i[e.charAt(o)];if(v&&(g[o]=+!!a),_[s]=(_[s+1]<<1|1)&a,n&&(_[s]|=(b[s+1]|b[s])<<1|1|b[s+1]),_[s]&I&&(S=y(t,{errors:n,currentLocation:o,expectedLocation:d,distance:r,ignoreLocation:l}),S<=p)){if(p=S,f=o,f<=d)break;c=Math.max(1,2*d-f)}}if(y(t,{errors:n+1,currentLocation:d,expectedLocation:d,distance:r,ignoreLocation:l})>p)break;b=_}const C={isMatch:f>=0,score:Math.max(.001,S)};if(v){const e=function(e=[],t=m.minMatchCharLength){let i=[],n=-1,r=-1,s=0;for(let o=e.length;s=t&&i.push([n,r]),n=-1)}return e[s-1]&&s-n>=t&&i.push([n,s-1]),i}(g,a);e.length?c&&(C.indices=e):C.isMatch=!1}return C}(e,t,d,{location:n+p,distance:r,threshold:s,findAllMatches:o,minMatchCharLength:a,includeMatches:i,ignoreLocation:c});f&&(u=!0),h+=v,f&&g&&(l=[...l,...g])}));let d={isMatch:u,score:u?h/this.chunks.length:1};return u&&i&&(d.indices=l),d}}class O{constructor(e){this.pattern=e}static isMultiMatch(e){return I(e,this.multiRegex)}static isSingleMatch(e){return I(e,this.singleRegex)}search(){}}function I(e,t){const i=e.match(t);return i?i[1]:null}class C extends O{constructor(e,{location:t=m.location,threshold:i=m.threshold,distance:n=m.distance,includeMatches:r=m.includeMatches,findAllMatches:s=m.findAllMatches,minMatchCharLength:o=m.minMatchCharLength,isCaseSensitive:a=m.isCaseSensitive,ignoreLocation:c=m.ignoreLocation}={}){super(e),this._bitapSearch=new S(e,{location:t,threshold:i,distance:n,includeMatches:r,findAllMatches:s,minMatchCharLength:o,isCaseSensitive:a,ignoreLocation:c})}static get type(){return"fuzzy"}static get multiRegex(){return/^"(.*)"$/}static get singleRegex(){return/^(.*)$/}search(e){return this._bitapSearch.searchIn(e)}}class T extends O{constructor(e){super(e)}static get type(){return"include"}static get multiRegex(){return/^'"(.*)"$/}static get singleRegex(){return/^'(.*)$/}search(e){let t,i=0;const n=[],r=this.pattern.length;for(;(t=e.indexOf(this.pattern,i))>-1;)i=t+r,n.push([t,i-1]);const s=!!n.length;return{isMatch:s,score:s?0:1,indices:n}}}const L=[class extends O{constructor(e){super(e)}static get type(){return"exact"}static get multiRegex(){return/^="(.*)"$/}static get singleRegex(){return/^=(.*)$/}search(e){const t=e===this.pattern;return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},T,class extends O{constructor(e){super(e)}static get type(){return"prefix-exact"}static get multiRegex(){return/^\^"(.*)"$/}static get singleRegex(){return/^\^(.*)$/}search(e){const t=e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,this.pattern.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-prefix-exact"}static get multiRegex(){return/^!\^"(.*)"$/}static get singleRegex(){return/^!\^(.*)$/}search(e){const t=!e.startsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-suffix-exact"}static get multiRegex(){return/^!"(.*)"\$$/}static get singleRegex(){return/^!(.*)\$$/}search(e){const t=!e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"suffix-exact"}static get multiRegex(){return/^"(.*)"\$$/}static get singleRegex(){return/^(.*)\$$/}search(e){const t=e.endsWith(this.pattern);return{isMatch:t,score:t?0:1,indices:[e.length-this.pattern.length,e.length-1]}}},class extends O{constructor(e){super(e)}static get type(){return"inverse-exact"}static get multiRegex(){return/^!"(.*)"$/}static get singleRegex(){return/^!(.*)$/}search(e){const t=-1===e.indexOf(this.pattern);return{isMatch:t,score:t?0:1,indices:[0,e.length-1]}}},C],w=L.length,A=/ +(?=(?:[^\"]*\"[^\"]*\")*[^\"]*$)/,M=new Set([C.type,T.type]);const P=[];function x(e,t){for(let i=0,n=P.length;i!(!e.$and&&!e.$or),j=e=>({[N]:Object.keys(e).map((t=>({[t]:e[t]})))});function F(e,t,{auto:i=!0}={}){const s=e=>{let a=Object.keys(e);const c=(e=>!!e.$path)(e);if(!c&&a.length>1&&!D(e))return s(j(e));if((e=>!n(e)&&o(e)&&!D(e))(e)){const n=c?e.$path:a[0],s=c?e.$val:e[n];if(!r(s))throw new Error((e=>`Invalid value for key ${e}`)(n));const o={keyId:f(n),pattern:s};return i&&(o.searcher=x(s,t)),o}let l={children:[],operator:a[0]};return a.forEach((t=>{const i=e[t];n(i)&&i.forEach((e=>{l.children.push(s(e))}))})),l};return D(e)||(e=j(e)),s(e)}function k(e,t){const i=e.matches;t.matches=[],a(i)&&i.forEach((e=>{if(!a(e.indices)||!e.indices.length)return;const{indices:i,value:n}=e;let r={indices:i,value:n};e.key&&(r.key=e.key.src),e.idx>-1&&(r.refIndex=e.idx),t.matches.push(r)}))}function K(e,t){t.score=e.score}class R{constructor(e,t={},i){this.options={...m,...t},this.options.useExtendedSearch,this._keyStore=new u(this.options.keys),this.setCollection(e,i)}setCollection(e,t){if(this._docs=e,t&&!(t instanceof g))throw new Error("Incorrect 'index' type");this._myIndex=t||_(this.options.keys,this._docs,{getFn:this.options.getFn,fieldNormWeight:this.options.fieldNormWeight})}add(e){a(e)&&(this._docs.push(e),this._myIndex.add(e))}remove(e=(()=>!1)){const t=[];for(let i=0,n=this._docs.length;i{let i=1;e.matches.forEach((({key:e,norm:n,score:r})=>{const s=e?e.weight:null;i*=Math.pow(0===r&&s?Number.EPSILON:r,(s||1)*(t?1:n))})),e.score=i}))}(l,{ignoreFieldNorm:c}),o&&l.sort(a),s(t)&&t>-1&&(l=l.slice(0,t)),function(e,t,{includeMatches:i=m.includeMatches,includeScore:n=m.includeScore}={}){const r=[];return i&&r.push(k),n&&r.push(K),e.map((e=>{const{idx:i}=e,n={item:t[i],refIndex:i};return r.length&&r.forEach((t=>{t(e,n)})),n}))}(l,this._docs,{includeMatches:i,includeScore:n})}_searchStringList(e){const t=x(e,this.options),{records:i}=this._myIndex,n=[];return i.forEach((({v:e,i:i,n:r})=>{if(!a(e))return;const{isMatch:s,score:o,indices:c}=t.searchIn(e);s&&n.push({item:e,idx:i,matches:[{score:o,value:e,norm:r,indices:c}]})})),n}_searchLogical(e){const t=F(e,this.options),i=(e,t,n)=>{if(!e.children){const{keyId:i,searcher:r}=e,s=this._findMatches({key:this._keyStore.get(i),value:this._myIndex.getValueForItemAtKeyId(t,i),searcher:r});return s&&s.length?[{idx:n,item:t,matches:s}]:[]}const r=[];for(let s=0,o=e.children.length;s{if(a(e)){let o=i(t,e,n);o.length&&(r[n]||(r[n]={idx:n,item:e,matches:[]},s.push(r[n])),o.forEach((({matches:e})=>{r[n].matches.push(...e)})))}})),s}_searchObjectList(e){const t=x(e,this.options),{keys:i,records:n}=this._myIndex,r=[];return n.forEach((({$:e,i:n})=>{if(!a(e))return;let s=[];i.forEach(((i,n)=>{s.push(...this._findMatches({key:i,value:e[n],searcher:t}))})),s.length&&r.push({idx:n,item:e,matches:s})})),r}_findMatches({key:e,value:t,searcher:i}){if(!a(t))return[];let r=[];if(n(t))t.forEach((({v:t,i:n,n:s})=>{if(!a(t))return;const{isMatch:o,score:c,indices:l}=i.searchIn(t);o&&r.push({score:c,key:e,value:t,idx:n,norm:s,indices:l})}));else{const{v:n,n:s}=t,{isMatch:o,score:a,indices:c}=i.searchIn(n);o&&r.push({score:a,key:e,value:n,norm:s,indices:c})}return r}}R.version="6.6.2",R.createIndex=_,R.parseIndex=function(e,{getFn:t=m.getFn,fieldNormWeight:i=m.fieldNormWeight}={}){const{keys:n,records:r}=e,s=new g({getFn:t,fieldNormWeight:i});return s.setKeys(n),s.setIndexRecords(r),s},R.config=m,R.parseQuery=F,function(...e){P.push(...e)}(class{constructor(e,{isCaseSensitive:t=m.isCaseSensitive,includeMatches:i=m.includeMatches,minMatchCharLength:n=m.minMatchCharLength,ignoreLocation:r=m.ignoreLocation,findAllMatches:s=m.findAllMatches,location:o=m.location,threshold:a=m.threshold,distance:c=m.distance}={}){this.query=null,this.options={isCaseSensitive:t,includeMatches:i,minMatchCharLength:n,findAllMatches:s,ignoreLocation:r,location:o,threshold:a,distance:c},this.pattern=t?e:e.toLowerCase(),this.query=function(e,t={}){return e.split("|").map((e=>{let i=e.trim().split(A).filter((e=>e&&!!e.trim())),n=[];for(let e=0,r=i.length;e - + Y'a un p'tit pépin ! - + @@ -24,5 +24,5 @@ - - \ No newline at end of file + + diff --git a/src/agenda_culturel/static/images/feather-sprite.svg b/src/agenda_culturel/static/images/feather-sprite.svg index f4aec38..13369c1 100644 --- a/src/agenda_culturel/static/images/feather-sprite.svg +++ b/src/agenda_culturel/static/images/feather-sprite.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/src/agenda_culturel/static/js/adjust_datetimes.js b/src/agenda_culturel/static/js/adjust_datetimes.js index 9230f1e..c2cd1bd 100644 --- a/src/agenda_culturel/static/js/adjust_datetimes.js +++ b/src/agenda_culturel/static/js/adjust_datetimes.js @@ -5,14 +5,14 @@ function formatDate(date = new Date()) { month: '2-digit', }); const day = date.toLocaleString('default', {day: '2-digit'}); - + return [year, month, day].join('-'); } function formatTime(date = new Date()) { const hour = ("0" + date.getHours()).slice(-2); const minutes = date.toLocaleString('default', {minute: '2-digit'}); - + return [hour, minutes].join(':'); } @@ -31,7 +31,7 @@ const update_datetimes = (event) => { if (current == start_day) { if (end_day.value) { console.log("update day ", start_day.oldvalue, " -> ", start_day.value); - + new_date = new Date(start_day.value); old_date = new Date(start_day.oldvalue); @@ -68,4 +68,4 @@ const update_datetimes = (event) => { } } -}; \ No newline at end of file +}; diff --git a/src/agenda_culturel/static/js/calendar-buttons.js b/src/agenda_culturel/static/js/calendar-buttons.js index 00181e7..5f1168b 100644 --- a/src/agenda_culturel/static/js/calendar-buttons.js +++ b/src/agenda_culturel/static/js/calendar-buttons.js @@ -27,8 +27,8 @@ function displayButtons() { buttonRight.classList.remove("hidden"); buttonRightPage.classList.add("hidden"); } - - + + } else { buttonLeft.classList.add("hidden"); @@ -52,8 +52,8 @@ document.addEventListener("DOMContentLoaded", function(e) { grid = agenda.querySelector(".grid"); agenda.scrollLeft -= grid.offsetWidth / 7; }, false); - - + + // clic on the right button will move the grid one step to the right document.querySelector('.slider-button.button-right').addEventListener('click', function (event) { agenda = document.getElementById("calendar"); @@ -66,6 +66,6 @@ document.addEventListener("DOMContentLoaded", function(e) { agenda.addEventListener('scrollend', () => { displayButtons(); }); - - -}); \ No newline at end of file + + +}); diff --git a/src/agenda_culturel/static/js/leaflet.markercluster.js b/src/agenda_culturel/static/js/leaflet.markercluster.js index 67c52dc..fa90f6e 100644 --- a/src/agenda_culturel/static/js/leaflet.markercluster.js +++ b/src/agenda_culturel/static/js/leaflet.markercluster.js @@ -1,3 +1,3 @@ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e.Leaflet=e.Leaflet||{},e.Leaflet.markercluster=e.Leaflet.markercluster||{}))}(this,function(e){"use strict";var t=L.MarkerClusterGroup=L.FeatureGroup.extend({options:{maxClusterRadius:80,iconCreateFunction:null,clusterPane:L.Marker.prototype.options.pane,spiderfyOnMaxZoom:!0,showCoverageOnHover:!0,zoomToBoundsOnClick:!0,singleMarkerMode:!1,disableClusteringAtZoom:null,removeOutsideVisibleBounds:!0,animate:!0,animateAddingMarkers:!1,spiderfyDistanceMultiplier:1,spiderLegPolylineOptions:{weight:1.5,color:"#222",opacity:.5},chunkedLoading:!1,chunkInterval:200,chunkDelay:50,chunkProgress:null,polygonOptions:{}},initialize:function(e){L.Util.setOptions(this,e),this.options.iconCreateFunction||(this.options.iconCreateFunction=this._defaultIconCreateFunction),this._featureGroup=L.featureGroup(),this._featureGroup.addEventParent(this),this._nonPointGroup=L.featureGroup(),this._nonPointGroup.addEventParent(this),this._inZoomAnimation=0,this._needsClustering=[],this._needsRemoving=[],this._currentShownBounds=null,this._queue=[],this._childMarkerEventHandlers={dragstart:this._childMarkerDragStart,move:this._childMarkerMoved,dragend:this._childMarkerDragEnd};var t=L.DomUtil.TRANSITION&&this.options.animate;L.extend(this,t?this._withAnimation:this._noAnimation),this._markerCluster=t?L.MarkerCluster:L.MarkerClusterNonAnimated},addLayer:function(e){if(e instanceof L.LayerGroup)return this.addLayers([e]);if(!e.getLatLng)return this._nonPointGroup.addLayer(e),this.fire("layeradd",{layer:e}),this;if(!this._map)return this._needsClustering.push(e),this.fire("layeradd",{layer:e}),this;if(this.hasLayer(e))return this;this._unspiderfy&&this._unspiderfy(),this._addLayer(e,this._maxZoom),this.fire("layeradd",{layer:e}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons();var t=e,i=this._zoom;if(e.__parent)for(;t.__parent._zoom>=i;)t=t.__parent;return this._currentShownBounds.contains(t.getLatLng())&&(this.options.animateAddingMarkers?this._animationAddLayer(e,t):this._animationAddLayerNonAnimated(e,t)),this},removeLayer:function(e){return e instanceof L.LayerGroup?this.removeLayers([e]):e.getLatLng?this._map?e.__parent?(this._unspiderfy&&(this._unspiderfy(),this._unspiderfyLayer(e)),this._removeLayer(e,!0),this.fire("layerremove",{layer:e}),this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),e.off(this._childMarkerEventHandlers,this),this._featureGroup.hasLayer(e)&&(this._featureGroup.removeLayer(e),e.clusterShow&&e.clusterShow()),this):this:(!this._arraySplice(this._needsClustering,e)&&this.hasLayer(e)&&this._needsRemoving.push({layer:e,latlng:e._latlng}),this.fire("layerremove",{layer:e}),this):(this._nonPointGroup.removeLayer(e),this.fire("layerremove",{layer:e}),this)},addLayers:function(e,t){if(!L.Util.isArray(e))return this.addLayer(e);var i,n=this._featureGroup,r=this._nonPointGroup,s=this.options.chunkedLoading,o=this.options.chunkInterval,a=this.options.chunkProgress,h=e.length,l=0,u=!0;if(this._map){var _=(new Date).getTime(),d=L.bind(function(){for(var c=(new Date).getTime();h>l;l++){if(s&&0===l%200){var p=(new Date).getTime()-c;if(p>o)break}if(i=e[l],i instanceof L.LayerGroup)u&&(e=e.slice(),u=!1),this._extractNonGroupLayers(i,e),h=e.length;else if(i.getLatLng){if(!this.hasLayer(i)&&(this._addLayer(i,this._maxZoom),t||this.fire("layeradd",{layer:i}),i.__parent&&2===i.__parent.getChildCount())){var f=i.__parent.getAllChildMarkers(),m=f[0]===i?f[1]:f[0];n.removeLayer(m)}}else r.addLayer(i),t||this.fire("layeradd",{layer:i})}a&&a(l,h,(new Date).getTime()-_),l===h?(this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds)):setTimeout(d,this.options.chunkDelay)},this);d()}else for(var c=this._needsClustering;h>l;l++)i=e[l],i instanceof L.LayerGroup?(u&&(e=e.slice(),u=!1),this._extractNonGroupLayers(i,e),h=e.length):i.getLatLng?this.hasLayer(i)||c.push(i):r.addLayer(i);return this},removeLayers:function(e){var t,i,n=e.length,r=this._featureGroup,s=this._nonPointGroup,o=!0;if(!this._map){for(t=0;n>t;t++)i=e[t],i instanceof L.LayerGroup?(o&&(e=e.slice(),o=!1),this._extractNonGroupLayers(i,e),n=e.length):(this._arraySplice(this._needsClustering,i),s.removeLayer(i),this.hasLayer(i)&&this._needsRemoving.push({layer:i,latlng:i._latlng}),this.fire("layerremove",{layer:i}));return this}if(this._unspiderfy){this._unspiderfy();var a=e.slice(),h=n;for(t=0;h>t;t++)i=a[t],i instanceof L.LayerGroup?(this._extractNonGroupLayers(i,a),h=a.length):this._unspiderfyLayer(i)}for(t=0;n>t;t++)i=e[t],i instanceof L.LayerGroup?(o&&(e=e.slice(),o=!1),this._extractNonGroupLayers(i,e),n=e.length):i.__parent?(this._removeLayer(i,!0,!0),this.fire("layerremove",{layer:i}),r.hasLayer(i)&&(r.removeLayer(i),i.clusterShow&&i.clusterShow())):(s.removeLayer(i),this.fire("layerremove",{layer:i}));return this._topClusterLevel._recalculateBounds(),this._refreshClustersIcons(),this._topClusterLevel._recursivelyAddChildrenToMap(null,this._zoom,this._currentShownBounds),this},clearLayers:function(){return this._map||(this._needsClustering=[],this._needsRemoving=[],delete this._gridClusters,delete this._gridUnclustered),this._noanimationUnspiderfy&&this._noanimationUnspiderfy(),this._featureGroup.clearLayers(),this._nonPointGroup.clearLayers(),this.eachLayer(function(e){e.off(this._childMarkerEventHandlers,this),delete e.__parent},this),this._map&&this._generateInitialClusters(),this},getBounds:function(){var e=new L.LatLngBounds;this._topClusterLevel&&e.extend(this._topClusterLevel._bounds);for(var t=this._needsClustering.length-1;t>=0;t--)e.extend(this._needsClustering[t].getLatLng());return e.extend(this._nonPointGroup.getBounds()),e},eachLayer:function(e,t){var i,n,r,s=this._needsClustering.slice(),o=this._needsRemoving;for(this._topClusterLevel&&this._topClusterLevel.getAllChildMarkers(s),n=s.length-1;n>=0;n--){for(i=!0,r=o.length-1;r>=0;r--)if(o[r].layer===s[n]){i=!1;break}i&&e.call(t,s[n])}this._nonPointGroup.eachLayer(e,t)},getLayers:function(){var e=[];return this.eachLayer(function(t){e.push(t)}),e},getLayer:function(e){var t=null;return e=parseInt(e,10),this.eachLayer(function(i){L.stamp(i)===e&&(t=i)}),t},hasLayer:function(e){if(!e)return!1;var t,i=this._needsClustering;for(t=i.length-1;t>=0;t--)if(i[t]===e)return!0;for(i=this._needsRemoving,t=i.length-1;t>=0;t--)if(i[t].layer===e)return!1;return!(!e.__parent||e.__parent._group!==this)||this._nonPointGroup.hasLayer(e)},zoomToShowLayer:function(e,t){"function"!=typeof t&&(t=function(){});var i=function(){!e._icon&&!e.__parent._icon||this._inZoomAnimation||(this._map.off("moveend",i,this),this.off("animationend",i,this),e._icon?t():e.__parent._icon&&(this.once("spiderfied",t,this),e.__parent.spiderfy()))};e._icon&&this._map.getBounds().contains(e.getLatLng())?t():e.__parent._zoomt;t++)n=this._needsRemoving[t],n.newlatlng=n.layer._latlng,n.layer._latlng=n.latlng;for(t=0,i=this._needsRemoving.length;i>t;t++)n=this._needsRemoving[t],this._removeLayer(n.layer,!0),n.layer._latlng=n.newlatlng;this._needsRemoving=[],this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds(),this._map.on("zoomend",this._zoomEnd,this),this._map.on("moveend",this._moveEnd,this),this._spiderfierOnAdd&&this._spiderfierOnAdd(),this._bindEvents(),i=this._needsClustering,this._needsClustering=[],this.addLayers(i,!0)},onRemove:function(e){e.off("zoomend",this._zoomEnd,this),e.off("moveend",this._moveEnd,this),this._unbindEvents(),this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim",""),this._spiderfierOnRemove&&this._spiderfierOnRemove(),delete this._maxLat,this._hideCoverage(),this._featureGroup.remove(),this._nonPointGroup.remove(),this._featureGroup.clearLayers(),this._map=null},getVisibleParent:function(e){for(var t=e;t&&!t._icon;)t=t.__parent;return t||null},_arraySplice:function(e,t){for(var i=e.length-1;i>=0;i--)if(e[i]===t)return e.splice(i,1),!0},_removeFromGridUnclustered:function(e,t){for(var i=this._map,n=this._gridUnclustered,r=Math.floor(this._map.getMinZoom());t>=r&&n[t].removeObject(e,i.project(e.getLatLng(),t));t--);},_childMarkerDragStart:function(e){e.target.__dragStart=e.target._latlng},_childMarkerMoved:function(e){if(!this._ignoreMove&&!e.target.__dragStart){var t=e.target._popup&&e.target._popup.isOpen();this._moveChild(e.target,e.oldLatLng,e.latlng),t&&e.target.openPopup()}},_moveChild:function(e,t,i){e._latlng=t,this.removeLayer(e),e._latlng=i,this.addLayer(e)},_childMarkerDragEnd:function(e){var t=e.target.__dragStart;delete e.target.__dragStart,t&&this._moveChild(e.target,t,e.target._latlng)},_removeLayer:function(e,t,i){var n=this._gridClusters,r=this._gridUnclustered,s=this._featureGroup,o=this._map,a=Math.floor(this._map.getMinZoom());t&&this._removeFromGridUnclustered(e,this._maxZoom);var h,l=e.__parent,u=l._markers;for(this._arraySplice(u,e);l&&(l._childCount--,l._boundsNeedUpdate=!0,!(l._zoomt?"small":100>t?"medium":"large",new L.DivIcon({html:"
"+t+"
",className:"marker-cluster"+i,iconSize:new L.Point(40,40)})},_bindEvents:function(){var e=this._map,t=this.options.spiderfyOnMaxZoom,i=this.options.showCoverageOnHover,n=this.options.zoomToBoundsOnClick;(t||n)&&this.on("clusterclick",this._zoomOrSpiderfy,this),i&&(this.on("clustermouseover",this._showCoverage,this),this.on("clustermouseout",this._hideCoverage,this),e.on("zoomend",this._hideCoverage,this))},_zoomOrSpiderfy:function(e){for(var t=e.layer,i=t;1===i._childClusters.length;)i=i._childClusters[0];i._zoom===this._maxZoom&&i._childCount===t._childCount&&this.options.spiderfyOnMaxZoom?t.spiderfy():this.options.zoomToBoundsOnClick&&t.zoomToBounds(),e.originalEvent&&13===e.originalEvent.keyCode&&this._map._container.focus()},_showCoverage:function(e){var t=this._map;this._inZoomAnimation||(this._shownPolygon&&t.removeLayer(this._shownPolygon),e.layer.getChildCount()>2&&e.layer!==this._spiderfied&&(this._shownPolygon=new L.Polygon(e.layer.getConvexHull(),this.options.polygonOptions),t.addLayer(this._shownPolygon)))},_hideCoverage:function(){this._shownPolygon&&(this._map.removeLayer(this._shownPolygon),this._shownPolygon=null)},_unbindEvents:function(){var e=this.options.spiderfyOnMaxZoom,t=this.options.showCoverageOnHover,i=this.options.zoomToBoundsOnClick,n=this._map;(e||i)&&this.off("clusterclick",this._zoomOrSpiderfy,this),t&&(this.off("clustermouseover",this._showCoverage,this),this.off("clustermouseout",this._hideCoverage,this),n.off("zoomend",this._hideCoverage,this))},_zoomEnd:function(){this._map&&(this._mergeSplitClusters(),this._zoom=Math.round(this._map._zoom),this._currentShownBounds=this._getExpandedVisibleBounds())},_moveEnd:function(){if(!this._inZoomAnimation){var e=this._getExpandedVisibleBounds();this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),this._zoom,e),this._topClusterLevel._recursivelyAddChildrenToMap(null,Math.round(this._map._zoom),e),this._currentShownBounds=e}},_generateInitialClusters:function(){var e=Math.ceil(this._map.getMaxZoom()),t=Math.floor(this._map.getMinZoom()),i=this.options.maxClusterRadius,n=i;"function"!=typeof i&&(n=function(){return i}),null!==this.options.disableClusteringAtZoom&&(e=this.options.disableClusteringAtZoom-1),this._maxZoom=e,this._gridClusters={},this._gridUnclustered={};for(var r=e;r>=t;r--)this._gridClusters[r]=new L.DistanceGrid(n(r)),this._gridUnclustered[r]=new L.DistanceGrid(n(r));this._topClusterLevel=new this._markerCluster(this,t-1)},_addLayer:function(e,t){var i,n,r=this._gridClusters,s=this._gridUnclustered,o=Math.floor(this._map.getMinZoom());for(this.options.singleMarkerMode&&this._overrideMarkerIcon(e),e.on(this._childMarkerEventHandlers,this);t>=o;t--){i=this._map.project(e.getLatLng(),t);var a=r[t].getNearObject(i);if(a)return a._addChild(e),e.__parent=a,void 0;if(a=s[t].getNearObject(i)){var h=a.__parent;h&&this._removeLayer(a,!1);var l=new this._markerCluster(this,t,a,e);r[t].addObject(l,this._map.project(l._cLatLng,t)),a.__parent=l,e.__parent=l;var u=l;for(n=t-1;n>h._zoom;n--)u=new this._markerCluster(this,n,u),r[n].addObject(u,this._map.project(a.getLatLng(),n));return h._addChild(u),this._removeFromGridUnclustered(a,t),void 0}s[t].addObject(e,i)}this._topClusterLevel._addChild(e),e.__parent=this._topClusterLevel},_refreshClustersIcons:function(){this._featureGroup.eachLayer(function(e){e instanceof L.MarkerCluster&&e._iconNeedsUpdate&&e._updateIcon()})},_enqueue:function(e){this._queue.push(e),this._queueTimeout||(this._queueTimeout=setTimeout(L.bind(this._processQueue,this),300))},_processQueue:function(){for(var e=0;ee?(this._animationStart(),this._animationZoomOut(this._zoom,e)):this._moveEnd()},_getExpandedVisibleBounds:function(){return this.options.removeOutsideVisibleBounds?L.Browser.mobile?this._checkBoundsMaxLat(this._map.getBounds()):this._checkBoundsMaxLat(this._map.getBounds().pad(1)):this._mapBoundsInfinite},_checkBoundsMaxLat:function(e){var t=this._maxLat;return void 0!==t&&(e.getNorth()>=t&&(e._northEast.lat=1/0),e.getSouth()<=-t&&(e._southWest.lat=-1/0)),e},_animationAddLayerNonAnimated:function(e,t){if(t===e)this._featureGroup.addLayer(e);else if(2===t._childCount){t._addToMap();var i=t.getAllChildMarkers();this._featureGroup.removeLayer(i[0]),this._featureGroup.removeLayer(i[1])}else t._updateIcon()},_extractNonGroupLayers:function(e,t){var i,n=e.getLayers(),r=0;for(t=t||[];r=0;i--)o=h[i],n.contains(o._latlng)||r.removeLayer(o)}),this._forceLayout(),this._topClusterLevel._recursivelyBecomeVisible(n,t),r.eachLayer(function(e){e instanceof L.MarkerCluster||!e._icon||e.clusterShow()}),this._topClusterLevel._recursively(n,e,t,function(e){e._recursivelyRestoreChildPositions(t)}),this._ignoreMove=!1,this._enqueue(function(){this._topClusterLevel._recursively(n,e,s,function(e){r.removeLayer(e),e.clusterShow()}),this._animationEnd()})},_animationZoomOut:function(e,t){this._animationZoomOutSingle(this._topClusterLevel,e-1,t),this._topClusterLevel._recursivelyAddChildrenToMap(null,t,this._getExpandedVisibleBounds()),this._topClusterLevel._recursivelyRemoveChildrenFromMap(this._currentShownBounds,Math.floor(this._map.getMinZoom()),e,this._getExpandedVisibleBounds())},_animationAddLayer:function(e,t){var i=this,n=this._featureGroup;n.addLayer(e),t!==e&&(t._childCount>2?(t._updateIcon(),this._forceLayout(),this._animationStart(),e._setPos(this._map.latLngToLayerPoint(t.getLatLng())),e.clusterHide(),this._enqueue(function(){n.removeLayer(e),e.clusterShow(),i._animationEnd()})):(this._forceLayout(),i._animationStart(),i._animationZoomOutSingle(t,this._map.getMaxZoom(),this._zoom)))}},_animationZoomOutSingle:function(e,t,i){var n=this._getExpandedVisibleBounds(),r=Math.floor(this._map.getMinZoom());e._recursivelyAnimateChildrenInAndAddSelfToMap(n,r,t+1,i);var s=this;this._forceLayout(),e._recursivelyBecomeVisible(n,i),this._enqueue(function(){if(1===e._childCount){var o=e._markers[0];this._ignoreMove=!0,o.setLatLng(o.getLatLng()),this._ignoreMove=!1,o.clusterShow&&o.clusterShow()}else e._recursively(n,i,r,function(e){e._recursivelyRemoveChildrenFromMap(n,r,t+1)});s._animationEnd()})},_animationEnd:function(){this._map&&(this._map._mapPane.className=this._map._mapPane.className.replace(" leaflet-cluster-anim","")),this._inZoomAnimation--,this.fire("animationend")},_forceLayout:function(){L.Util.falseFn(document.body.offsetWidth)}}),L.markerClusterGroup=function(e){return new L.MarkerClusterGroup(e)};var i=L.MarkerCluster=L.Marker.extend({options:L.Icon.prototype.options,initialize:function(e,t,i,n){L.Marker.prototype.initialize.call(this,i?i._cLatLng||i.getLatLng():new L.LatLng(0,0),{icon:this,pane:e.options.clusterPane}),this._group=e,this._zoom=t,this._markers=[],this._childClusters=[],this._childCount=0,this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._bounds=new L.LatLngBounds,i&&this._addChild(i),n&&this._addChild(n)},getAllChildMarkers:function(e,t){e=e||[];for(var i=this._childClusters.length-1;i>=0;i--)this._childClusters[i].getAllChildMarkers(e);for(var n=this._markers.length-1;n>=0;n--)t&&this._markers[n].__dragStart||e.push(this._markers[n]);return e},getChildCount:function(){return this._childCount},zoomToBounds:function(e){for(var t,i=this._childClusters.slice(),n=this._group._map,r=n.getBoundsZoom(this._bounds),s=this._zoom+1,o=n.getZoom();i.length>0&&r>s;){s++;var a=[];for(t=0;ts?this._group._map.setView(this._latlng,s):o>=r?this._group._map.setView(this._latlng,o+1):this._group._map.fitBounds(this._bounds,e)},getBounds:function(){var e=new L.LatLngBounds;return e.extend(this._bounds),e},_updateIcon:function(){this._iconNeedsUpdate=!0,this._icon&&this.setIcon(this)},createIcon:function(){return this._iconNeedsUpdate&&(this._iconObj=this._group.options.iconCreateFunction(this),this._iconNeedsUpdate=!1),this._iconObj.createIcon()},createShadow:function(){return this._iconObj.createShadow()},_addChild:function(e,t){this._iconNeedsUpdate=!0,this._boundsNeedUpdate=!0,this._setClusterCenter(e),e instanceof L.MarkerCluster?(t||(this._childClusters.push(e),e.__parent=this),this._childCount+=e._childCount):(t||this._markers.push(e),this._childCount++),this.__parent&&this.__parent._addChild(e,!0)},_setClusterCenter:function(e){this._cLatLng||(this._cLatLng=e._cLatLng||e._latlng)},_resetBounds:function(){var e=this._bounds;e._southWest&&(e._southWest.lat=1/0,e._southWest.lng=1/0),e._northEast&&(e._northEast.lat=-1/0,e._northEast.lng=-1/0)},_recalculateBounds:function(){var e,t,i,n,r=this._markers,s=this._childClusters,o=0,a=0,h=this._childCount;if(0!==h){for(this._resetBounds(),e=0;e=0;i--)n=r[i],n._icon&&(n._setPos(t),n.clusterHide())},function(e){var i,n,r=e._childClusters;for(i=r.length-1;i>=0;i--)n=r[i],n._icon&&(n._setPos(t),n.clusterHide())})},_recursivelyAnimateChildrenInAndAddSelfToMap:function(e,t,i,n){this._recursively(e,n,t,function(r){r._recursivelyAnimateChildrenIn(e,r._group._map.latLngToLayerPoint(r.getLatLng()).round(),i),r._isSingleParent()&&i-1===n?(r.clusterShow(),r._recursivelyRemoveChildrenFromMap(e,t,i)):r.clusterHide(),r._addToMap()})},_recursivelyBecomeVisible:function(e,t){this._recursively(e,this._group._map.getMinZoom(),t,null,function(e){e.clusterShow()})},_recursivelyAddChildrenToMap:function(e,t,i){this._recursively(i,this._group._map.getMinZoom()-1,t,function(n){if(t!==n._zoom)for(var r=n._markers.length-1;r>=0;r--){var s=n._markers[r];i.contains(s._latlng)&&(e&&(s._backupLatlng=s.getLatLng(),s.setLatLng(e),s.clusterHide&&s.clusterHide()),n._group._featureGroup.addLayer(s))}},function(t){t._addToMap(e)})},_recursivelyRestoreChildPositions:function(e){for(var t=this._markers.length-1;t>=0;t--){var i=this._markers[t];i._backupLatlng&&(i.setLatLng(i._backupLatlng),delete i._backupLatlng)}if(e-1===this._zoom)for(var n=this._childClusters.length-1;n>=0;n--)this._childClusters[n]._restorePosition();else for(var r=this._childClusters.length-1;r>=0;r--)this._childClusters[r]._recursivelyRestoreChildPositions(e)},_restorePosition:function(){this._backupLatlng&&(this.setLatLng(this._backupLatlng),delete this._backupLatlng)},_recursivelyRemoveChildrenFromMap:function(e,t,i,n){var r,s;this._recursively(e,t-1,i-1,function(e){for(s=e._markers.length-1;s>=0;s--)r=e._markers[s],n&&n.contains(r._latlng)||(e._group._featureGroup.removeLayer(r),r.clusterShow&&r.clusterShow())},function(e){for(s=e._childClusters.length-1;s>=0;s--)r=e._childClusters[s],n&&n.contains(r._latlng)||(e._group._featureGroup.removeLayer(r),r.clusterShow&&r.clusterShow())})},_recursively:function(e,t,i,n,r){var s,o,a=this._childClusters,h=this._zoom;if(h>=t&&(n&&n(this),r&&h===i&&r(this)),t>h||i>h)for(s=a.length-1;s>=0;s--)o=a[s],o._boundsNeedUpdate&&o._recalculateBounds(),e.intersects(o._bounds)&&o._recursively(e,t,i,n,r)},_isSingleParent:function(){return this._childClusters.length>0&&this._childClusters[0]._childCount===this._childCount}});L.Marker.include({clusterHide:function(){var e=this.options.opacity;return this.setOpacity(0),this.options.opacity=e,this},clusterShow:function(){return this.setOpacity(this.options.opacity)}}),L.DistanceGrid=function(e){this._cellSize=e,this._sqCellSize=e*e,this._grid={},this._objectPoint={}},L.DistanceGrid.prototype={addObject:function(e,t){var i=this._getCoord(t.x),n=this._getCoord(t.y),r=this._grid,s=r[n]=r[n]||{},o=s[i]=s[i]||[],a=L.Util.stamp(e);this._objectPoint[a]=t,o.push(e)},updateObject:function(e,t){this.removeObject(e),this.addObject(e,t)},removeObject:function(e,t){var i,n,r=this._getCoord(t.x),s=this._getCoord(t.y),o=this._grid,a=o[s]=o[s]||{},h=a[r]=a[r]||[];for(delete this._objectPoint[L.Util.stamp(e)],i=0,n=h.length;n>i;i++)if(h[i]===e)return h.splice(i,1),1===n&&delete a[r],!0},eachObject:function(e,t){var i,n,r,s,o,a,h,l=this._grid;for(i in l){o=l[i];for(n in o)for(a=o[n],r=0,s=a.length;s>r;r++)h=e.call(t,a[r]),h&&(r--,s--)}},getNearObject:function(e){var t,i,n,r,s,o,a,h,l=this._getCoord(e.x),u=this._getCoord(e.y),_=this._objectPoint,d=this._sqCellSize,c=null;for(t=u-1;u+1>=t;t++)if(r=this._grid[t])for(i=l-1;l+1>=i;i++)if(s=r[i])for(n=0,o=s.length;o>n;n++)a=s[n],h=this._sqDist(_[L.Util.stamp(a)],e),(d>h||d>=h&&null===c)&&(d=h,c=a);return c},_getCoord:function(e){var t=Math.floor(e/this._cellSize);return isFinite(t)?t:e},_sqDist:function(e,t){var i=t.x-e.x,n=t.y-e.y;return i*i+n*n}},function(){L.QuickHull={getDistant:function(e,t){var i=t[1].lat-t[0].lat,n=t[0].lng-t[1].lng;return n*(e.lat-t[0].lat)+i*(e.lng-t[0].lng)},findMostDistantPointFromBaseLine:function(e,t){var i,n,r,s=0,o=null,a=[];for(i=t.length-1;i>=0;i--)n=t[i],r=this.getDistant(n,e),r>0&&(a.push(n),r>s&&(s=r,o=n));return{maxPoint:o,newPoints:a}},buildConvexHull:function(e,t){var i=[],n=this.findMostDistantPointFromBaseLine(e,t);return n.maxPoint?(i=i.concat(this.buildConvexHull([e[0],n.maxPoint],n.newPoints)),i=i.concat(this.buildConvexHull([n.maxPoint,e[1]],n.newPoints))):[e[0]]},getConvexHull:function(e){var t,i=!1,n=!1,r=!1,s=!1,o=null,a=null,h=null,l=null,u=null,_=null;for(t=e.length-1;t>=0;t--){var d=e[t];(i===!1||d.lat>i)&&(o=d,i=d.lat),(n===!1||d.latr)&&(h=d,r=d.lng),(s===!1||d.lng=0;t--)e=i[t].getLatLng(),n.push(e);return L.QuickHull.getConvexHull(n)}}),L.MarkerCluster.include({_2PI:2*Math.PI,_circleFootSeparation:25,_circleStartAngle:0,_spiralFootSeparation:28,_spiralLengthStart:11,_spiralLengthFactor:5,_circleSpiralSwitchover:9,spiderfy:function(){if(this._group._spiderfied!==this&&!this._group._inZoomAnimation){var e,t=this.getAllChildMarkers(null,!0),i=this._group,n=i._map,r=n.latLngToLayerPoint(this._latlng);this._group._unspiderfy(),this._group._spiderfied=this,t.length>=this._circleSpiralSwitchover?e=this._generatePointsSpiral(t.length,r):(r.y+=10,e=this._generatePointsCircle(t.length,r)),this._animationSpiderfy(t,e)}},unspiderfy:function(e){this._group._inZoomAnimation||(this._animationUnspiderfy(e),this._group._spiderfied=null)},_generatePointsCircle:function(e,t){var i,n,r=this._group.options.spiderfyDistanceMultiplier*this._circleFootSeparation*(2+e),s=r/this._2PI,o=this._2PI/e,a=[];for(s=Math.max(s,35),a.length=e,i=0;e>i;i++)n=this._circleStartAngle+i*o,a[i]=new L.Point(t.x+s*Math.cos(n),t.y+s*Math.sin(n))._round();return a},_generatePointsSpiral:function(e,t){var i,n=this._group.options.spiderfyDistanceMultiplier,r=n*this._spiralLengthStart,s=n*this._spiralFootSeparation,o=n*this._spiralLengthFactor*this._2PI,a=0,h=[];for(h.length=e,i=e;i>=0;i--)e>i&&(h[i]=new L.Point(t.x+r*Math.cos(a),t.y+r*Math.sin(a))._round()),a+=s/r+5e-4*i,r+=o/a;return h},_noanimationUnspiderfy:function(){var e,t,i=this._group,n=i._map,r=i._featureGroup,s=this.getAllChildMarkers(null,!0);for(i._ignoreMove=!0,this.setOpacity(1),t=s.length-1;t>=0;t--)e=s[t],r.removeLayer(e),e._preSpiderfyLatlng&&(e.setLatLng(e._preSpiderfyLatlng),delete e._preSpiderfyLatlng),e.setZIndexOffset&&e.setZIndexOffset(0),e._spiderLeg&&(n.removeLayer(e._spiderLeg),delete e._spiderLeg);i.fire("unspiderfied",{cluster:this,markers:s}),i._ignoreMove=!1,i._spiderfied=null}}),L.MarkerClusterNonAnimated=L.MarkerCluster.extend({_animationSpiderfy:function(e,t){var i,n,r,s,o=this._group,a=o._map,h=o._featureGroup,l=this._group.options.spiderLegPolylineOptions;for(o._ignoreMove=!0,i=0;i=0;i--)a=u.layerPointToLatLng(t[i]),n=e[i],n._preSpiderfyLatlng=n._latlng,n.setLatLng(a),n.clusterShow&&n.clusterShow(),p&&(r=n._spiderLeg,s=r._path,s.style.strokeDashoffset=0,r.setStyle({opacity:m}));this.setOpacity(.3),l._ignoreMove=!1,setTimeout(function(){l._animationEnd(),l.fire("spiderfied",{cluster:h,markers:e})},200)},_animationUnspiderfy:function(e){var t,i,n,r,s,o,a=this,h=this._group,l=h._map,u=h._featureGroup,_=e?l._latLngToNewLayerPoint(this._latlng,e.zoom,e.center):l.latLngToLayerPoint(this._latlng),d=this.getAllChildMarkers(null,!0),c=L.Path.SVG;for(h._ignoreMove=!0,h._animationStart(),this.setOpacity(1),i=d.length-1;i>=0;i--)t=d[i],t._preSpiderfyLatlng&&(t.closePopup(),t.setLatLng(t._preSpiderfyLatlng),delete t._preSpiderfyLatlng,o=!0,t._setPos&&(t._setPos(_),o=!1),t.clusterHide&&(t.clusterHide(),o=!1),o&&u.removeLayer(t),c&&(n=t._spiderLeg,r=n._path,s=r.getTotalLength()+.1,r.style.strokeDashoffset=s,n.setStyle({opacity:0})));h._ignoreMove=!1,setTimeout(function(){var e=0;for(i=d.length-1;i>=0;i--)t=d[i],t._spiderLeg&&e++;for(i=d.length-1;i>=0;i--)t=d[i],t._spiderLeg&&(t.clusterShow&&t.clusterShow(),t.setZIndexOffset&&t.setZIndexOffset(0),e>1&&u.removeLayer(t),l.removeLayer(t._spiderLeg),delete t._spiderLeg);h._animationEnd(),h.fire("unspiderfied",{cluster:a,markers:d})},200)}}),L.MarkerClusterGroup.include({_spiderfied:null,unspiderfy:function(){this._unspiderfy.apply(this,arguments)},_spiderfierOnAdd:function(){this._map.on("click",this._unspiderfyWrapper,this),this._map.options.zoomAnimation&&this._map.on("zoomstart",this._unspiderfyZoomStart,this),this._map.on("zoomend",this._noanimationUnspiderfy,this),L.Browser.touch||this._map.getRenderer(this)},_spiderfierOnRemove:function(){this._map.off("click",this._unspiderfyWrapper,this),this._map.off("zoomstart",this._unspiderfyZoomStart,this),this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._map.off("zoomend",this._noanimationUnspiderfy,this),this._noanimationUnspiderfy() },_unspiderfyZoomStart:function(){this._map&&this._map.on("zoomanim",this._unspiderfyZoomAnim,this)},_unspiderfyZoomAnim:function(e){L.DomUtil.hasClass(this._map._mapPane,"leaflet-touching")||(this._map.off("zoomanim",this._unspiderfyZoomAnim,this),this._unspiderfy(e))},_unspiderfyWrapper:function(){this._unspiderfy()},_unspiderfy:function(e){this._spiderfied&&this._spiderfied.unspiderfy(e)},_noanimationUnspiderfy:function(){this._spiderfied&&this._spiderfied._noanimationUnspiderfy()},_unspiderfyLayer:function(e){e._spiderLeg&&(this._featureGroup.removeLayer(e),e.clusterShow&&e.clusterShow(),e.setZIndexOffset&&e.setZIndexOffset(0),this._map.removeLayer(e._spiderLeg),delete e._spiderLeg)}}),L.MarkerClusterGroup.include({refreshClusters:function(e){return e?e instanceof L.MarkerClusterGroup?e=e._topClusterLevel.getAllChildMarkers():e instanceof L.LayerGroup?e=e._layers:e instanceof L.MarkerCluster?e=e.getAllChildMarkers():e instanceof L.Marker&&(e=[e]):e=this._topClusterLevel.getAllChildMarkers(),this._flagParentsIconsNeedUpdate(e),this._refreshClustersIcons(),this.options.singleMarkerMode&&this._refreshSingleMarkerModeMarkers(e),this},_flagParentsIconsNeedUpdate:function(e){var t,i;for(t in e)for(i=e[t].__parent;i;)i._iconNeedsUpdate=!0,i=i.__parent},_refreshSingleMarkerModeMarkers:function(e){var t,i;for(t in e)i=e[t],this.hasLayer(i)&&i.setIcon(this._overrideMarkerIcon(i))}}),L.Marker.include({refreshIconOptions:function(e,t){var i=this.options.icon;return L.setOptions(i,e),this.setIcon(i),t&&this.__parent&&this.__parent._group.refreshClusters(this),this}}),e.MarkerClusterGroup=t,e.MarkerCluster=i}); -//# sourceMappingURL=leaflet.markercluster.js.map \ No newline at end of file +//# sourceMappingURL=leaflet.markercluster.js.map diff --git a/src/agenda_culturel/static/js/leaflet.markercluster.js.map b/src/agenda_culturel/static/js/leaflet.markercluster.js.map index a4b459c..296d8c1 100644 --- a/src/agenda_culturel/static/js/leaflet.markercluster.js.map +++ b/src/agenda_culturel/static/js/leaflet.markercluster.js.map @@ -1 +1 @@ -{"version":3,"sources":["../src/MarkerClusterGroup.js","../src/MarkerCluster.js","../src/MarkerOpacity.js","../src/DistanceGrid.js","../src/MarkerCluster.QuickHull.js","../src/MarkerCluster.Spiderfier.js","../src/MarkerClusterGroup.Refresh.js"],"names":[],"mappings":"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","file":"dist/leaflet.markercluster.js"} \ No newline at end of file +{"version":3,"sources":["../src/MarkerClusterGroup.js","../src/MarkerCluster.js","../src/MarkerOpacity.js","../src/DistanceGrid.js","../src/MarkerCluster.QuickHull.js","../src/MarkerCluster.Spiderfier.js","../src/MarkerClusterGroup.Refresh.js"],"names":[],"mappings":"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","file":"dist/leaflet.markercluster.js"} diff --git a/src/agenda_culturel/static/js/modal.js b/src/agenda_culturel/static/js/modal.js index 7b20e02..d01b8fe 100644 --- a/src/agenda_culturel/static/js/modal.js +++ b/src/agenda_culturel/static/js/modal.js @@ -121,4 +121,4 @@ document.addEventListener("DOMContentLoaded", function(e) { openModal(modal, false); } -}); \ No newline at end of file +}); diff --git a/src/agenda_culturel/static/js/popper.min.js.map b/src/agenda_culturel/static/js/popper.min.js.map index e3471cf..2794fd1 100644 --- a/src/agenda_culturel/static/js/popper.min.js.map +++ b/src/agenda_culturel/static/js/popper.min.js.map @@ -1 +1 @@ -{"version":3,"file":"popper.min.js","sources":["../../src/dom-utils/getWindow.js","../../src/dom-utils/instanceOf.js","../../src/utils/math.js","../../src/utils/userAgent.js","../../src/dom-utils/isLayoutViewport.js","../../src/dom-utils/getBoundingClientRect.js","../../src/dom-utils/getWindowScroll.js","../../src/dom-utils/getNodeName.js","../../src/dom-utils/getDocumentElement.js","../../src/dom-utils/getWindowScrollBarX.js","../../src/dom-utils/getComputedStyle.js","../../src/dom-utils/isScrollParent.js","../../src/dom-utils/getCompositeRect.js","../../src/dom-utils/getNodeScroll.js","../../src/dom-utils/getHTMLElementScroll.js","../../src/dom-utils/getLayoutRect.js","../../src/dom-utils/getParentNode.js","../../src/dom-utils/getScrollParent.js","../../src/dom-utils/listScrollParents.js","../../src/dom-utils/isTableElement.js","../../src/dom-utils/getOffsetParent.js","../../src/enums.js","../../src/utils/orderModifiers.js","../../src/dom-utils/contains.js","../../src/utils/rectToClientRect.js","../../src/dom-utils/getClippingRect.js","../../src/dom-utils/getViewportRect.js","../../src/dom-utils/getDocumentRect.js","../../src/utils/getBasePlacement.js","../../src/utils/getVariation.js","../../src/utils/getMainAxisFromPlacement.js","../../src/utils/computeOffsets.js","../../src/utils/mergePaddingObject.js","../../src/utils/getFreshSideObject.js","../../src/utils/expandToHashMap.js","../../src/utils/detectOverflow.js","../../src/createPopper.js","../../src/utils/debounce.js","../../src/utils/mergeByName.js","../../src/modifiers/eventListeners.js","../../src/modifiers/popperOffsets.js","../../src/modifiers/computeStyles.js","../../src/modifiers/applyStyles.js","../../src/modifiers/offset.js","../../src/utils/getOppositePlacement.js","../../src/utils/getOppositeVariationPlacement.js","../../src/utils/computeAutoPlacement.js","../../src/modifiers/flip.js","../../src/utils/within.js","../../src/modifiers/preventOverflow.js","../../src/utils/getAltAxis.js","../../src/modifiers/arrow.js","../../src/modifiers/hide.js","../../src/popper-lite.js","../../src/popper.js"],"sourcesContent":["// @flow\nimport type { Window } from '../types';\ndeclare function getWindow(node: Node | Window): Window;\n\nexport default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n const ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}\n","// @flow\nimport getWindow from './getWindow';\n\ndeclare function isElement(node: mixed): boolean %checks(node instanceof\n Element);\nfunction isElement(node) {\n const OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\ndeclare function isHTMLElement(node: mixed): boolean %checks(node instanceof\n HTMLElement);\nfunction isHTMLElement(node) {\n const OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\ndeclare function isShadowRoot(node: mixed): boolean %checks(node instanceof\n ShadowRoot);\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n const OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };\n","// @flow\nexport const max = Math.max;\nexport const min = Math.min;\nexport const round = Math.round;\n","// @flow\ntype Navigator = Navigator & { userAgentData?: NavigatorUAData };\n\ninterface NavigatorUAData {\n brands: Array<{ brand: string, version: string }>;\n mobile: boolean;\n platform: string;\n}\n\nexport default function getUAString(): string {\n const uaData = (navigator: Navigator).userAgentData;\n\n if (uaData?.brands && Array.isArray(uaData.brands)) {\n return uaData.brands\n .map((item) => `${item.brand}/${item.version}`)\n .join(' ');\n }\n\n return navigator.userAgent;\n}\n","// @flow\nimport getUAString from '../utils/userAgent';\n\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}\n","// @flow\nimport type { ClientRectObject, VirtualElement } from '../types';\nimport { isElement, isHTMLElement } from './instanceOf';\nimport { round } from '../utils/math';\nimport getWindow from './getWindow';\nimport isLayoutViewport from './isLayoutViewport';\n\nexport default function getBoundingClientRect(\n element: Element | VirtualElement,\n includeScale: boolean = false,\n isFixedStrategy: boolean = false\n): ClientRectObject {\n const clientRect = element.getBoundingClientRect();\n let scaleX = 1;\n let scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX =\n (element: HTMLElement).offsetWidth > 0\n ? round(clientRect.width) / (element: HTMLElement).offsetWidth || 1\n : 1;\n scaleY =\n (element: HTMLElement).offsetHeight > 0\n ? round(clientRect.height) / (element: HTMLElement).offsetHeight || 1\n : 1;\n }\n\n const { visualViewport } = isElement(element) ? getWindow(element) : window;\n const addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n\n const x =\n (clientRect.left +\n (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) /\n scaleX;\n const y =\n (clientRect.top +\n (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) /\n scaleY;\n const width = clientRect.width / scaleX;\n const height = clientRect.height / scaleY;\n\n return {\n width,\n height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x,\n y,\n };\n}\n","// @flow\nimport getWindow from './getWindow';\nimport type { Window } from '../types';\n\nexport default function getWindowScroll(node: Node | Window) {\n const win = getWindow(node);\n const scrollLeft = win.pageXOffset;\n const scrollTop = win.pageYOffset;\n\n return {\n scrollLeft,\n scrollTop,\n };\n}\n","// @flow\nimport type { Window } from '../types';\n\nexport default function getNodeName(element: ?Node | Window): ?string {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}\n","// @flow\nimport { isElement } from './instanceOf';\nimport type { Window } from '../types';\n\nexport default function getDocumentElement(\n element: Element | Window\n): HTMLElement {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return (\n (isElement(element)\n ? element.ownerDocument\n : // $FlowFixMe[prop-missing]\n element.document) || window.document\n ).documentElement;\n}\n","// @flow\nimport getBoundingClientRect from './getBoundingClientRect';\nimport getDocumentElement from './getDocumentElement';\nimport getWindowScroll from './getWindowScroll';\n\nexport default function getWindowScrollBarX(element: Element): number {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return (\n getBoundingClientRect(getDocumentElement(element)).left +\n getWindowScroll(element).scrollLeft\n );\n}\n","// @flow\nimport getWindow from './getWindow';\n\nexport default function getComputedStyle(\n element: Element\n): CSSStyleDeclaration {\n return getWindow(element).getComputedStyle(element);\n}\n","// @flow\nimport getComputedStyle from './getComputedStyle';\n\nexport default function isScrollParent(element: HTMLElement): boolean {\n // Firefox wants us to check `-x` and `-y` variations as well\n const { overflow, overflowX, overflowY } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}\n","// @flow\nimport type { Rect, VirtualElement, Window } from '../types';\nimport getBoundingClientRect from './getBoundingClientRect';\nimport getNodeScroll from './getNodeScroll';\nimport getNodeName from './getNodeName';\nimport { isHTMLElement } from './instanceOf';\nimport getWindowScrollBarX from './getWindowScrollBarX';\nimport getDocumentElement from './getDocumentElement';\nimport isScrollParent from './isScrollParent';\nimport { round } from '../utils/math';\n\nfunction isElementScaled(element: HTMLElement) {\n const rect = element.getBoundingClientRect();\n const scaleX = round(rect.width) / element.offsetWidth || 1;\n const scaleY = round(rect.height) / element.offsetHeight || 1;\n\n return scaleX !== 1 || scaleY !== 1;\n}\n\n// Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\nexport default function getCompositeRect(\n elementOrVirtualElement: Element | VirtualElement,\n offsetParent: Element | Window,\n isFixed: boolean = false\n): Rect {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const offsetParentIsScaled =\n isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const rect = getBoundingClientRect(\n elementOrVirtualElement,\n offsetParentIsScaled,\n isFixed\n );\n\n let scroll = { scrollLeft: 0, scrollTop: 0 };\n let offsets = { x: 0, y: 0 };\n\n if (isOffsetParentAnElement || (!isOffsetParentAnElement && !isFixed)) {\n if (\n getNodeName(offsetParent) !== 'body' ||\n // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)\n ) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height,\n };\n}\n","// @flow\nimport getWindowScroll from './getWindowScroll';\nimport getWindow from './getWindow';\nimport { isHTMLElement } from './instanceOf';\nimport getHTMLElementScroll from './getHTMLElementScroll';\nimport type { Window } from '../types';\n\nexport default function getNodeScroll(node: Node | Window) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}\n","// @flow\n\nexport default function getHTMLElementScroll(element: HTMLElement) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop,\n };\n}\n","// @flow\nimport type { Rect } from '../types';\nimport getBoundingClientRect from './getBoundingClientRect';\n\n// Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\nexport default function getLayoutRect(element: HTMLElement): Rect {\n const clientRect = getBoundingClientRect(element);\n\n // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n let width = element.offsetWidth;\n let height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width,\n height,\n };\n}\n","// @flow\nimport getNodeName from './getNodeName';\nimport getDocumentElement from './getDocumentElement';\nimport { isShadowRoot } from './instanceOf';\n\nexport default function getParentNode(element: Node | ShadowRoot): Node {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (\n // this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || // DOM Element detected\n (isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n );\n}\n","// @flow\nimport getParentNode from './getParentNode';\nimport isScrollParent from './isScrollParent';\nimport getNodeName from './getNodeName';\nimport { isHTMLElement } from './instanceOf';\n\nexport default function getScrollParent(node: Node): HTMLElement {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}\n","// @flow\nimport getScrollParent from './getScrollParent';\nimport getParentNode from './getParentNode';\nimport getWindow from './getWindow';\nimport type { Window, VisualViewport } from '../types';\nimport isScrollParent from './isScrollParent';\n\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\nexport default function listScrollParents(\n element: Node,\n list: Array = []\n): Array {\n const scrollParent = getScrollParent(element);\n const isBody = scrollParent === element.ownerDocument?.body;\n const win = getWindow(scrollParent);\n const target = isBody\n ? [win].concat(\n win.visualViewport || [],\n isScrollParent(scrollParent) ? scrollParent : []\n )\n : scrollParent;\n const updatedList = list.concat(target);\n\n return isBody\n ? updatedList\n : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}\n","// @flow\nimport getNodeName from './getNodeName';\n\nexport default function isTableElement(element: Element): boolean {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}\n","// @flow\nimport getWindow from './getWindow';\nimport getNodeName from './getNodeName';\nimport getComputedStyle from './getComputedStyle';\nimport { isHTMLElement, isShadowRoot } from './instanceOf';\nimport isTableElement from './isTableElement';\nimport getParentNode from './getParentNode';\nimport getUAString from '../utils/userAgent';\n\nfunction getTrueOffsetParent(element: Element): ?Element {\n if (\n !isHTMLElement(element) ||\n // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed'\n ) {\n return null;\n }\n\n return element.offsetParent;\n}\n\n// `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\nfunction getContainingBlock(element: Element) {\n const isFirefox = /firefox/i.test(getUAString());\n const isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n const elementCss = getComputedStyle(element);\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n let currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (\n isHTMLElement(currentNode) &&\n ['html', 'body'].indexOf(getNodeName(currentNode)) < 0\n ) {\n const css = getComputedStyle(currentNode);\n\n // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n if (\n css.transform !== 'none' ||\n css.perspective !== 'none' ||\n css.contain === 'paint' ||\n ['transform', 'perspective'].indexOf(css.willChange) !== -1 ||\n (isFirefox && css.willChange === 'filter') ||\n (isFirefox && css.filter && css.filter !== 'none')\n ) {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nexport default function getOffsetParent(element: Element) {\n const window = getWindow(element);\n\n let offsetParent = getTrueOffsetParent(element);\n\n while (\n offsetParent &&\n isTableElement(offsetParent) &&\n getComputedStyle(offsetParent).position === 'static'\n ) {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (\n offsetParent &&\n (getNodeName(offsetParent) === 'html' ||\n (getNodeName(offsetParent) === 'body' &&\n getComputedStyle(offsetParent).position === 'static'))\n ) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}\n","// @flow\nexport const top: 'top' = 'top';\nexport const bottom: 'bottom' = 'bottom';\nexport const right: 'right' = 'right';\nexport const left: 'left' = 'left';\nexport const auto: 'auto' = 'auto';\nexport type BasePlacement =\n | typeof top\n | typeof bottom\n | typeof right\n | typeof left;\nexport const basePlacements: Array = [top, bottom, right, left];\n\nexport const start: 'start' = 'start';\nexport const end: 'end' = 'end';\nexport type Variation = typeof start | typeof end;\n\nexport const clippingParents: 'clippingParents' = 'clippingParents';\nexport const viewport: 'viewport' = 'viewport';\nexport type Boundary = Element | Array | typeof clippingParents;\nexport type RootBoundary = typeof viewport | 'document';\n\nexport const popper: 'popper' = 'popper';\nexport const reference: 'reference' = 'reference';\nexport type Context = typeof popper | typeof reference;\n\nexport type VariationPlacement =\n | 'top-start'\n | 'top-end'\n | 'bottom-start'\n | 'bottom-end'\n | 'right-start'\n | 'right-end'\n | 'left-start'\n | 'left-end';\nexport type AutoPlacement = 'auto' | 'auto-start' | 'auto-end';\nexport type ComputedPlacement = VariationPlacement | BasePlacement;\nexport type Placement = AutoPlacement | BasePlacement | VariationPlacement;\n\nexport const variationPlacements: Array = basePlacements.reduce(\n (acc: Array, placement: BasePlacement) =>\n acc.concat([(`${placement}-${start}`: any), (`${placement}-${end}`: any)]),\n []\n);\nexport const placements: Array = [...basePlacements, auto].reduce(\n (\n acc: Array,\n placement: BasePlacement | typeof auto\n ): Array =>\n acc.concat([\n placement,\n (`${placement}-${start}`: any),\n (`${placement}-${end}`: any),\n ]),\n []\n);\n\n// modifiers that need to read the DOM\nexport const beforeRead: 'beforeRead' = 'beforeRead';\nexport const read: 'read' = 'read';\nexport const afterRead: 'afterRead' = 'afterRead';\n// pure-logic modifiers\nexport const beforeMain: 'beforeMain' = 'beforeMain';\nexport const main: 'main' = 'main';\nexport const afterMain: 'afterMain' = 'afterMain';\n// modifier with the purpose to write to the DOM (or write into a framework state)\nexport const beforeWrite: 'beforeWrite' = 'beforeWrite';\nexport const write: 'write' = 'write';\nexport const afterWrite: 'afterWrite' = 'afterWrite';\nexport const modifierPhases: Array = [\n beforeRead,\n read,\n afterRead,\n beforeMain,\n main,\n afterMain,\n beforeWrite,\n write,\n afterWrite,\n];\n\nexport type ModifierPhases =\n | typeof beforeRead\n | typeof read\n | typeof afterRead\n | typeof beforeMain\n | typeof main\n | typeof afterMain\n | typeof beforeWrite\n | typeof write\n | typeof afterWrite;\n","// @flow\nimport type { Modifier } from '../types';\nimport { modifierPhases } from '../enums';\n\n// source: https://stackoverflow.com/questions/49875255\nfunction order(modifiers) {\n const map = new Map();\n const visited = new Set();\n const result = [];\n\n modifiers.forEach(modifier => {\n map.set(modifier.name, modifier);\n });\n\n // On visiting object, check for its dependencies and visit them recursively\n function sort(modifier: Modifier) {\n visited.add(modifier.name);\n\n const requires = [\n ...(modifier.requires || []),\n ...(modifier.requiresIfExists || []),\n ];\n\n requires.forEach(dep => {\n if (!visited.has(dep)) {\n const depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n\n result.push(modifier);\n }\n\n modifiers.forEach(modifier => {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n\n return result;\n}\n\nexport default function orderModifiers(\n modifiers: Array>\n): Array> {\n // order based on dependencies\n const orderedModifiers = order(modifiers);\n\n // order based on phase\n return modifierPhases.reduce((acc, phase) => {\n return acc.concat(\n orderedModifiers.filter(modifier => modifier.phase === phase)\n );\n }, []);\n}\n","// @flow\nimport { isShadowRoot } from './instanceOf';\n\nexport default function contains(parent: Element, child: Element) {\n const rootNode = child.getRootNode && child.getRootNode();\n\n // First, attempt with faster native method\n if (parent.contains(child)) {\n return true;\n }\n // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n let next = child;\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n }\n // $FlowFixMe[prop-missing]: need a better way to handle this...\n next = next.parentNode || next.host;\n } while (next);\n }\n\n // Give up, the result is false\n return false;\n}\n","// @flow\nimport type { Rect, ClientRectObject } from '../types';\n\nexport default function rectToClientRect(rect: Rect): ClientRectObject {\n return {\n ...rect,\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height,\n };\n}\n","// @flow\nimport type { ClientRectObject, PositioningStrategy } from '../types';\nimport type { Boundary, RootBoundary } from '../enums';\nimport { viewport } from '../enums';\nimport getViewportRect from './getViewportRect';\nimport getDocumentRect from './getDocumentRect';\nimport listScrollParents from './listScrollParents';\nimport getOffsetParent from './getOffsetParent';\nimport getDocumentElement from './getDocumentElement';\nimport getComputedStyle from './getComputedStyle';\nimport { isElement, isHTMLElement } from './instanceOf';\nimport getBoundingClientRect from './getBoundingClientRect';\nimport getParentNode from './getParentNode';\nimport contains from './contains';\nimport getNodeName from './getNodeName';\nimport rectToClientRect from '../utils/rectToClientRect';\nimport { max, min } from '../utils/math';\n\nfunction getInnerBoundingClientRect(\n element: Element,\n strategy: PositioningStrategy\n) {\n const rect = getBoundingClientRect(element, false, strategy === 'fixed');\n\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n\n return rect;\n}\n\nfunction getClientRectFromMixedType(\n element: Element,\n clippingParent: Element | RootBoundary,\n strategy: PositioningStrategy\n): ClientRectObject {\n return clippingParent === viewport\n ? rectToClientRect(getViewportRect(element, strategy))\n : isElement(clippingParent)\n ? getInnerBoundingClientRect(clippingParent, strategy)\n : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n}\n\n// A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\nfunction getClippingParents(element: Element): Array {\n const clippingParents = listScrollParents(getParentNode(element));\n const canEscapeClipping =\n ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n const clipperElement =\n canEscapeClipping && isHTMLElement(element)\n ? getOffsetParent(element)\n : element;\n\n if (!isElement(clipperElement)) {\n return [];\n }\n\n // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n return clippingParents.filter(\n (clippingParent) =>\n isElement(clippingParent) &&\n contains(clippingParent, clipperElement) &&\n getNodeName(clippingParent) !== 'body'\n );\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping parents\nexport default function getClippingRect(\n element: Element,\n boundary: Boundary,\n rootBoundary: RootBoundary,\n strategy: PositioningStrategy\n): ClientRectObject {\n const mainClippingParents =\n boundary === 'clippingParents'\n ? getClippingParents(element)\n : [].concat(boundary);\n const clippingParents = [...mainClippingParents, rootBoundary];\n const firstClippingParent = clippingParents[0];\n\n const clippingRect = clippingParents.reduce((accRect, clippingParent) => {\n const rect = getClientRectFromMixedType(element, clippingParent, strategy);\n\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n\n return clippingRect;\n}\n","// @flow\nimport getWindow from './getWindow';\nimport getDocumentElement from './getDocumentElement';\nimport getWindowScrollBarX from './getWindowScrollBarX';\nimport isLayoutViewport from './isLayoutViewport';\nimport type { PositioningStrategy } from '../types';\n\nexport default function getViewportRect(\n element: Element,\n strategy: PositioningStrategy\n) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n\n const layoutViewport = isLayoutViewport();\n\n if (layoutViewport || (!layoutViewport && strategy === 'fixed')) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width,\n height,\n x: x + getWindowScrollBarX(element),\n y,\n };\n}\n","// @flow\nimport type { Rect } from '../types';\nimport getDocumentElement from './getDocumentElement';\nimport getComputedStyle from './getComputedStyle';\nimport getWindowScrollBarX from './getWindowScrollBarX';\nimport getWindowScroll from './getWindowScroll';\nimport { max } from '../utils/math';\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\nexport default function getDocumentRect(element: HTMLElement): Rect {\n const html = getDocumentElement(element);\n const winScroll = getWindowScroll(element);\n const body = element.ownerDocument?.body;\n\n const width = max(\n html.scrollWidth,\n html.clientWidth,\n body ? body.scrollWidth : 0,\n body ? body.clientWidth : 0\n );\n const height = max(\n html.scrollHeight,\n html.clientHeight,\n body ? body.scrollHeight : 0,\n body ? body.clientHeight : 0\n );\n\n let x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n const y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return { width, height, x, y };\n}\n","// @flow\nimport { type BasePlacement, type Placement, auto } from '../enums';\n\nexport default function getBasePlacement(\n placement: Placement | typeof auto\n): BasePlacement {\n return (placement.split('-')[0]: any);\n}\n","// @flow\nimport { type Variation, type Placement } from '../enums';\n\nexport default function getVariation(placement: Placement): ?Variation {\n return (placement.split('-')[1]: any);\n}\n","// @flow\nimport type { Placement } from '../enums';\n\nexport default function getMainAxisFromPlacement(\n placement: Placement\n): 'x' | 'y' {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}\n","// @flow\nimport getBasePlacement from './getBasePlacement';\nimport getVariation from './getVariation';\nimport getMainAxisFromPlacement from './getMainAxisFromPlacement';\nimport type {\n Rect,\n PositioningStrategy,\n Offsets,\n ClientRectObject,\n} from '../types';\nimport { top, right, bottom, left, start, end, type Placement } from '../enums';\n\nexport default function computeOffsets({\n reference,\n element,\n placement,\n}: {\n reference: Rect | ClientRectObject,\n element: Rect | ClientRectObject,\n strategy: PositioningStrategy,\n placement?: Placement,\n}): Offsets {\n const basePlacement = placement ? getBasePlacement(placement) : null;\n const variation = placement ? getVariation(placement) : null;\n const commonX = reference.x + reference.width / 2 - element.width / 2;\n const commonY = reference.y + reference.height / 2 - element.height / 2;\n\n let offsets;\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height,\n };\n break;\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height,\n };\n break;\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY,\n };\n break;\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY,\n };\n break;\n default:\n offsets = {\n x: reference.x,\n y: reference.y,\n };\n }\n\n const mainAxis = basePlacement\n ? getMainAxisFromPlacement(basePlacement)\n : null;\n\n if (mainAxis != null) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] =\n offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n case end:\n offsets[mainAxis] =\n offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n default:\n }\n }\n\n return offsets;\n}\n","// @flow\nimport type { SideObject } from '../types';\nimport getFreshSideObject from './getFreshSideObject';\n\nexport default function mergePaddingObject(\n paddingObject: $Shape\n): SideObject {\n return {\n ...getFreshSideObject(),\n ...paddingObject,\n };\n}\n","// @flow\nimport type { SideObject } from '../types';\n\nexport default function getFreshSideObject(): SideObject {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n };\n}\n","// @flow\n\nexport default function expandToHashMap<\n T: number | string | boolean,\n K: string\n>(value: T, keys: Array): { [key: string]: T } {\n return keys.reduce((hashMap, key) => {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}\n","// @flow\nimport type { State, SideObject, Padding, PositioningStrategy } from '../types';\nimport type { Placement, Boundary, RootBoundary, Context } from '../enums';\nimport getClippingRect from '../dom-utils/getClippingRect';\nimport getDocumentElement from '../dom-utils/getDocumentElement';\nimport getBoundingClientRect from '../dom-utils/getBoundingClientRect';\nimport computeOffsets from './computeOffsets';\nimport rectToClientRect from './rectToClientRect';\nimport {\n clippingParents,\n reference,\n popper,\n bottom,\n top,\n right,\n basePlacements,\n viewport,\n} from '../enums';\nimport { isElement } from '../dom-utils/instanceOf';\nimport mergePaddingObject from './mergePaddingObject';\nimport expandToHashMap from './expandToHashMap';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n placement: Placement,\n strategy: PositioningStrategy,\n boundary: Boundary,\n rootBoundary: RootBoundary,\n elementContext: Context,\n altBoundary: boolean,\n padding: Padding,\n};\n\nexport default function detectOverflow(\n state: State,\n options: $Shape = {}\n): SideObject {\n const {\n placement = state.placement,\n strategy = state.strategy,\n boundary = clippingParents,\n rootBoundary = viewport,\n elementContext = popper,\n altBoundary = false,\n padding = 0,\n } = options;\n\n const paddingObject = mergePaddingObject(\n typeof padding !== 'number'\n ? padding\n : expandToHashMap(padding, basePlacements)\n );\n\n const altContext = elementContext === popper ? reference : popper;\n\n const popperRect = state.rects.popper;\n const element = state.elements[altBoundary ? altContext : elementContext];\n\n const clippingClientRect = getClippingRect(\n isElement(element)\n ? element\n : element.contextElement || getDocumentElement(state.elements.popper),\n boundary,\n rootBoundary,\n strategy\n );\n\n const referenceClientRect = getBoundingClientRect(state.elements.reference);\n\n const popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement,\n });\n\n const popperClientRect = rectToClientRect({\n ...popperRect,\n ...popperOffsets,\n });\n\n const elementClientRect =\n elementContext === popper ? popperClientRect : referenceClientRect;\n\n // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n const overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom:\n elementClientRect.bottom -\n clippingClientRect.bottom +\n paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right:\n elementClientRect.right - clippingClientRect.right + paddingObject.right,\n };\n\n const offsetData = state.modifiersData.offset;\n\n // Offsets can be applied only to the popper element\n if (elementContext === popper && offsetData) {\n const offset = offsetData[placement];\n\n Object.keys(overflowOffsets).forEach((key) => {\n const multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n const axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}\n","// @flow\nimport type {\n State,\n OptionsGeneric,\n Modifier,\n Instance,\n VirtualElement,\n} from './types';\nimport getCompositeRect from './dom-utils/getCompositeRect';\nimport getLayoutRect from './dom-utils/getLayoutRect';\nimport listScrollParents from './dom-utils/listScrollParents';\nimport getOffsetParent from './dom-utils/getOffsetParent';\nimport orderModifiers from './utils/orderModifiers';\nimport debounce from './utils/debounce';\nimport mergeByName from './utils/mergeByName';\nimport detectOverflow from './utils/detectOverflow';\nimport { isElement } from './dom-utils/instanceOf';\n\nconst DEFAULT_OPTIONS: OptionsGeneric = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute',\n};\n\ntype PopperGeneratorArgs = {\n defaultModifiers?: Array>,\n defaultOptions?: $Shape>,\n};\n\nfunction areValidElements(...args: Array): boolean {\n return !args.some(\n (element) =>\n !(element && typeof element.getBoundingClientRect === 'function')\n );\n}\n\nexport function popperGenerator(generatorOptions: PopperGeneratorArgs = {}) {\n const { defaultModifiers = [], defaultOptions = DEFAULT_OPTIONS } =\n generatorOptions;\n\n return function createPopper>>(\n reference: Element | VirtualElement,\n popper: HTMLElement,\n options: $Shape> = defaultOptions\n ): Instance {\n let state: $Shape = {\n placement: 'bottom',\n orderedModifiers: [],\n options: { ...DEFAULT_OPTIONS, ...defaultOptions },\n modifiersData: {},\n elements: {\n reference,\n popper,\n },\n attributes: {},\n styles: {},\n };\n\n let effectCleanupFns: Array<() => void> = [];\n let isDestroyed = false;\n\n const instance = {\n state,\n setOptions(setOptionsAction) {\n const options =\n typeof setOptionsAction === 'function'\n ? setOptionsAction(state.options)\n : setOptionsAction;\n\n cleanupModifierEffects();\n\n state.options = {\n // $FlowFixMe[exponential-spread]\n ...defaultOptions,\n ...state.options,\n ...options,\n };\n\n state.scrollParents = {\n reference: isElement(reference)\n ? listScrollParents(reference)\n : reference.contextElement\n ? listScrollParents(reference.contextElement)\n : [],\n popper: listScrollParents(popper),\n };\n\n // Orders the modifiers based on their dependencies and `phase`\n // properties\n const orderedModifiers = orderModifiers(\n mergeByName([...defaultModifiers, ...state.options.modifiers])\n );\n\n // Strip out disabled modifiers\n state.orderedModifiers = orderedModifiers.filter((m) => m.enabled);\n\n runModifierEffects();\n\n return instance.update();\n },\n\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n const { reference, popper } = state.elements;\n\n // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n if (!areValidElements(reference, popper)) {\n return;\n }\n\n // Store the reference and popper rects to be read by modifiers\n state.rects = {\n reference: getCompositeRect(\n reference,\n getOffsetParent(popper),\n state.options.strategy === 'fixed'\n ),\n popper: getLayoutRect(popper),\n };\n\n // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n state.reset = false;\n\n state.placement = state.options.placement;\n\n // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n state.orderedModifiers.forEach(\n (modifier) =>\n (state.modifiersData[modifier.name] = {\n ...modifier.data,\n })\n );\n\n for (let index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n const { fn, options = {}, name } = state.orderedModifiers[index];\n\n if (typeof fn === 'function') {\n state = fn({ state, options, name, instance }) || state;\n }\n }\n },\n\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce<$Shape>(\n () =>\n new Promise<$Shape>((resolve) => {\n instance.forceUpdate();\n resolve(state);\n })\n ),\n\n destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n },\n };\n\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n\n instance.setOptions(options).then((state) => {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n });\n\n // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n function runModifierEffects() {\n state.orderedModifiers.forEach(({ name, options = {}, effect }) => {\n if (typeof effect === 'function') {\n const cleanupFn = effect({ state, name, instance, options });\n const noopFn = () => {};\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach((fn) => fn());\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\n\nexport const createPopper = popperGenerator();\n\n// eslint-disable-next-line import/no-unused-modules\nexport { detectOverflow };\n","// @flow\n\nexport default function debounce(fn: Function): () => Promise {\n let pending;\n return () => {\n if (!pending) {\n pending = new Promise(resolve => {\n Promise.resolve().then(() => {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}\n","// @flow\nimport type { Modifier } from '../types';\n\nexport default function mergeByName(\n modifiers: Array<$Shape>>\n): Array<$Shape>> {\n const merged = modifiers.reduce((merged, current) => {\n const existing = merged[current.name];\n merged[current.name] = existing\n ? {\n ...existing,\n ...current,\n options: { ...existing.options, ...current.options },\n data: { ...existing.data, ...current.data },\n }\n : current;\n return merged;\n }, {});\n\n // IE11 does not support Object.values\n return Object.keys(merged).map(key => merged[key]);\n}\n","// @flow\nimport type { ModifierArguments, Modifier } from '../types';\nimport getWindow from '../dom-utils/getWindow';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n scroll: boolean,\n resize: boolean,\n};\n\nconst passive = { passive: true };\n\nfunction effect({ state, instance, options }: ModifierArguments) {\n const { scroll = true, resize = true } = options;\n\n const window = getWindow(state.elements.popper);\n const scrollParents = [\n ...state.scrollParents.reference,\n ...state.scrollParents.popper,\n ];\n\n if (scroll) {\n scrollParents.forEach(scrollParent => {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return () => {\n if (scroll) {\n scrollParents.forEach(scrollParent => {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type EventListenersModifier = Modifier<'eventListeners', Options>;\nexport default ({\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: () => {},\n effect,\n data: {},\n}: EventListenersModifier);\n","// @flow\nimport type { ModifierArguments, Modifier } from '../types';\nimport computeOffsets from '../utils/computeOffsets';\n\nfunction popperOffsets({ state, name }: ModifierArguments<{||}>) {\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement,\n });\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type PopperOffsetsModifier = Modifier<'popperOffsets', {||}>;\nexport default ({\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {},\n}: PopperOffsetsModifier);\n","// @flow\nimport type {\n PositioningStrategy,\n Offsets,\n Modifier,\n ModifierArguments,\n Rect,\n Window,\n} from '../types';\nimport {\n type BasePlacement,\n type Variation,\n top,\n left,\n right,\n bottom,\n end,\n} from '../enums';\nimport getOffsetParent from '../dom-utils/getOffsetParent';\nimport getWindow from '../dom-utils/getWindow';\nimport getDocumentElement from '../dom-utils/getDocumentElement';\nimport getComputedStyle from '../dom-utils/getComputedStyle';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport getVariation from '../utils/getVariation';\nimport { round } from '../utils/math';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type RoundOffsets = (\n offsets: $Shape<{ x: number, y: number, centerOffset: number }>\n) => Offsets;\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n gpuAcceleration: boolean,\n adaptive: boolean,\n roundOffsets?: boolean | RoundOffsets,\n};\n\nconst unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto',\n};\n\n// Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\nfunction roundOffsetsByDPR({ x, y }, win: Window): Offsets {\n const dpr = win.devicePixelRatio || 1;\n\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0,\n };\n}\n\nexport function mapToStyles({\n popper,\n popperRect,\n placement,\n variation,\n offsets,\n position,\n gpuAcceleration,\n adaptive,\n roundOffsets,\n isFixed,\n}: {\n popper: HTMLElement,\n popperRect: Rect,\n placement: BasePlacement,\n variation: ?Variation,\n offsets: $Shape<{ x: number, y: number, centerOffset: number }>,\n position: PositioningStrategy,\n gpuAcceleration: boolean,\n adaptive: boolean,\n roundOffsets: boolean | RoundOffsets,\n isFixed: boolean,\n}) {\n let { x = 0, y = 0 } = offsets;\n\n ({ x, y } =\n typeof roundOffsets === 'function' ? roundOffsets({ x, y }) : { x, y });\n\n const hasX = offsets.hasOwnProperty('x');\n const hasY = offsets.hasOwnProperty('y');\n\n let sideX: string = left;\n let sideY: string = top;\n\n const win: Window = window;\n\n if (adaptive) {\n let offsetParent = getOffsetParent(popper);\n let heightProp = 'clientHeight';\n let widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (\n getComputedStyle(offsetParent).position !== 'static' &&\n position === 'absolute'\n ) {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n }\n\n // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n offsetParent = (offsetParent: Element);\n\n if (\n placement === top ||\n ((placement === left || placement === right) && variation === end)\n ) {\n sideY = bottom;\n const offsetY =\n isFixed && offsetParent === win && win.visualViewport\n ? win.visualViewport.height\n : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (\n placement === left ||\n ((placement === top || placement === bottom) && variation === end)\n ) {\n sideX = right;\n const offsetX =\n isFixed && offsetParent === win && win.visualViewport\n ? win.visualViewport.width\n : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n const commonStyles = {\n position,\n ...(adaptive && unsetSides),\n };\n\n ({ x, y } =\n roundOffsets === true\n ? roundOffsetsByDPR({ x, y }, getWindow(popper))\n : { x, y });\n\n if (gpuAcceleration) {\n return {\n ...commonStyles,\n [sideY]: hasY ? '0' : '',\n [sideX]: hasX ? '0' : '',\n // Layer acceleration can disable subpixel rendering which causes slightly\n // blurry text on low PPI displays, so we want to use 2D transforms\n // instead\n transform:\n (win.devicePixelRatio || 1) <= 1\n ? `translate(${x}px, ${y}px)`\n : `translate3d(${x}px, ${y}px, 0)`,\n };\n }\n\n return {\n ...commonStyles,\n [sideY]: hasY ? `${y}px` : '',\n [sideX]: hasX ? `${x}px` : '',\n transform: '',\n };\n}\n\nfunction computeStyles({ state, options }: ModifierArguments) {\n const {\n gpuAcceleration = true,\n adaptive = true,\n // defaults to use builtin `roundOffsetsByDPR`\n roundOffsets = true,\n } = options;\n\n const commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration,\n isFixed: state.options.strategy === 'fixed',\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = {\n ...state.styles.popper,\n ...mapToStyles({\n ...commonStyles,\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive,\n roundOffsets,\n }),\n };\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = {\n ...state.styles.arrow,\n ...mapToStyles({\n ...commonStyles,\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets,\n }),\n };\n }\n\n state.attributes.popper = {\n ...state.attributes.popper,\n 'data-popper-placement': state.placement,\n };\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type ComputeStylesModifier = Modifier<'computeStyles', Options>;\nexport default ({\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {},\n}: ComputeStylesModifier);\n","// @flow\nimport type { Modifier, ModifierArguments } from '../types';\nimport getNodeName from '../dom-utils/getNodeName';\nimport { isHTMLElement } from '../dom-utils/instanceOf';\n\n// This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles({ state }: ModifierArguments<{||}>) {\n Object.keys(state.elements).forEach((name) => {\n const style = state.styles[name] || {};\n\n const attributes = state.attributes[name] || {};\n const element = state.elements[name];\n\n // arrow is optional + virtual elements\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n Object.assign(element.style, style);\n\n Object.keys(attributes).forEach((name) => {\n const value = attributes[name];\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect({ state }: ModifierArguments<{||}>) {\n const initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0',\n },\n arrow: {\n position: 'absolute',\n },\n reference: {},\n };\n\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return () => {\n Object.keys(state.elements).forEach((name) => {\n const element = state.elements[name];\n const attributes = state.attributes[name] || {};\n\n const styleProperties = Object.keys(\n state.styles.hasOwnProperty(name)\n ? state.styles[name]\n : initialStyles[name]\n );\n\n // Set all values to an empty string to unset them\n const style = styleProperties.reduce((style, property) => {\n style[property] = '';\n return style;\n }, {});\n\n // arrow is optional + virtual elements\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n\n Object.keys(attributes).forEach((attribute) => {\n element.removeAttribute(attribute);\n });\n });\n };\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type ApplyStylesModifier = Modifier<'applyStyles', {||}>;\nexport default ({\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect,\n requires: ['computeStyles'],\n}: ApplyStylesModifier);\n","// @flow\nimport type { Placement } from '../enums';\nimport type { ModifierArguments, Modifier, Rect, Offsets } from '../types';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport { top, left, right, placements } from '../enums';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type OffsetsFunction = ({\n popper: Rect,\n reference: Rect,\n placement: Placement,\n}) => [?number, ?number];\n\ntype Offset = OffsetsFunction | [?number, ?number];\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n offset: Offset,\n};\n\nexport function distanceAndSkiddingToXY(\n placement: Placement,\n rects: { popper: Rect, reference: Rect },\n offset: Offset\n): Offsets {\n const basePlacement = getBasePlacement(placement);\n const invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n let [skidding, distance] =\n typeof offset === 'function'\n ? offset({\n ...rects,\n placement,\n })\n : offset;\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n\n return [left, right].indexOf(basePlacement) >= 0\n ? { x: distance, y: skidding }\n : { x: skidding, y: distance };\n}\n\nfunction offset({ state, options, name }: ModifierArguments) {\n const { offset = [0, 0] } = options;\n\n const data = placements.reduce((acc, placement) => {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n\n const { x, y } = data[state.placement];\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type OffsetModifier = Modifier<'offset', Options>;\nexport default ({\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset,\n}: OffsetModifier);\n","// @flow\nimport type { Placement } from '../enums';\n\nconst hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n\nexport default function getOppositePlacement(placement: Placement): Placement {\n return (placement.replace(\n /left|right|bottom|top/g,\n matched => hash[matched]\n ): any);\n}\n","// @flow\nimport type { Placement } from '../enums';\n\nconst hash = { start: 'end', end: 'start' };\n\nexport default function getOppositeVariationPlacement(\n placement: Placement\n): Placement {\n return (placement.replace(/start|end/g, matched => hash[matched]): any);\n}\n","// @flow\nimport type { State, Padding } from '../types';\nimport type {\n Placement,\n ComputedPlacement,\n Boundary,\n RootBoundary,\n} from '../enums';\nimport getVariation from './getVariation';\nimport {\n variationPlacements,\n basePlacements,\n placements as allPlacements,\n} from '../enums';\nimport detectOverflow from './detectOverflow';\nimport getBasePlacement from './getBasePlacement';\n\ntype Options = {\n placement: Placement,\n padding: Padding,\n boundary: Boundary,\n rootBoundary: RootBoundary,\n flipVariations: boolean,\n allowedAutoPlacements?: Array,\n};\n\ntype OverflowsMap = { [ComputedPlacement]: number };\n\nexport default function computeAutoPlacement(\n state: $Shape,\n options: Options = {}\n): Array {\n const {\n placement,\n boundary,\n rootBoundary,\n padding,\n flipVariations,\n allowedAutoPlacements = allPlacements,\n } = options;\n\n const variation = getVariation(placement);\n\n const placements = variation\n ? flipVariations\n ? variationPlacements\n : variationPlacements.filter(\n (placement) => getVariation(placement) === variation\n )\n : basePlacements;\n\n let allowedPlacements = placements.filter(\n (placement) => allowedAutoPlacements.indexOf(placement) >= 0\n );\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n }\n\n // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n const overflows: OverflowsMap = allowedPlacements.reduce((acc, placement) => {\n acc[placement] = detectOverflow(state, {\n placement,\n boundary,\n rootBoundary,\n padding,\n })[getBasePlacement(placement)];\n\n return acc;\n }, {});\n\n return Object.keys(overflows).sort((a, b) => overflows[a] - overflows[b]);\n}\n","// @flow\nimport type { Placement, Boundary, RootBoundary } from '../enums';\nimport type { ModifierArguments, Modifier, Padding } from '../types';\nimport getOppositePlacement from '../utils/getOppositePlacement';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport getOppositeVariationPlacement from '../utils/getOppositeVariationPlacement';\nimport detectOverflow from '../utils/detectOverflow';\nimport computeAutoPlacement from '../utils/computeAutoPlacement';\nimport { bottom, top, start, right, left, auto } from '../enums';\nimport getVariation from '../utils/getVariation';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n mainAxis: boolean,\n altAxis: boolean,\n fallbackPlacements: Array,\n padding: Padding,\n boundary: Boundary,\n rootBoundary: RootBoundary,\n altBoundary: boolean,\n flipVariations: boolean,\n allowedAutoPlacements: Array,\n};\n\nfunction getExpandedFallbackPlacements(placement: Placement): Array {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n const oppositePlacement = getOppositePlacement(placement);\n\n return [\n getOppositeVariationPlacement(placement),\n oppositePlacement,\n getOppositeVariationPlacement(oppositePlacement),\n ];\n}\n\nfunction flip({ state, options, name }: ModifierArguments) {\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n const {\n mainAxis: checkMainAxis = true,\n altAxis: checkAltAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n padding,\n boundary,\n rootBoundary,\n altBoundary,\n flipVariations = true,\n allowedAutoPlacements,\n } = options;\n\n const preferredPlacement = state.options.placement;\n const basePlacement = getBasePlacement(preferredPlacement);\n const isBasePlacement = basePlacement === preferredPlacement;\n\n const fallbackPlacements =\n specifiedFallbackPlacements ||\n (isBasePlacement || !flipVariations\n ? [getOppositePlacement(preferredPlacement)]\n : getExpandedFallbackPlacements(preferredPlacement));\n\n const placements = [preferredPlacement, ...fallbackPlacements].reduce(\n (acc, placement) => {\n return acc.concat(\n getBasePlacement(placement) === auto\n ? computeAutoPlacement(state, {\n placement,\n boundary,\n rootBoundary,\n padding,\n flipVariations,\n allowedAutoPlacements,\n })\n : placement\n );\n },\n []\n );\n\n const referenceRect = state.rects.reference;\n const popperRect = state.rects.popper;\n\n const checksMap = new Map();\n let makeFallbackChecks = true;\n let firstFittingPlacement = placements[0];\n\n for (let i = 0; i < placements.length; i++) {\n const placement = placements[i];\n const basePlacement = getBasePlacement(placement);\n const isStartVariation = getVariation(placement) === start;\n const isVertical = [top, bottom].indexOf(basePlacement) >= 0;\n const len = isVertical ? 'width' : 'height';\n\n const overflow = detectOverflow(state, {\n placement,\n boundary,\n rootBoundary,\n altBoundary,\n padding,\n });\n\n let mainVariationSide: any = isVertical\n ? isStartVariation\n ? right\n : left\n : isStartVariation\n ? bottom\n : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n const altVariationSide: any = getOppositePlacement(mainVariationSide);\n\n const checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(\n overflow[mainVariationSide] <= 0,\n overflow[altVariationSide] <= 0\n );\n }\n\n if (checks.every((check) => check)) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n const numberOfChecks = flipVariations ? 3 : 1;\n\n for (let i = numberOfChecks; i > 0; i--) {\n const fittingPlacement = placements.find((placement) => {\n const checks = checksMap.get(placement);\n if (checks) {\n return checks.slice(0, i).every((check) => check);\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n break;\n }\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type FlipModifier = Modifier<'flip', Options>;\nexport default ({\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: { _skip: false },\n}: FlipModifier);\n","// @flow\nimport { max as mathMax, min as mathMin } from './math';\n\nexport function within(min: number, value: number, max: number): number {\n return mathMax(min, mathMin(value, max));\n}\n\nexport function withinMaxClamp(min: number, value: number, max: number) {\n const v = within(min, value, max);\n return v > max ? max : v;\n}\n","// @flow\nimport { top, left, right, bottom, start } from '../enums';\nimport type { Placement, Boundary, RootBoundary } from '../enums';\nimport type { Rect, ModifierArguments, Modifier, Padding } from '../types';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport getMainAxisFromPlacement from '../utils/getMainAxisFromPlacement';\nimport getAltAxis from '../utils/getAltAxis';\nimport { within, withinMaxClamp } from '../utils/within';\nimport getLayoutRect from '../dom-utils/getLayoutRect';\nimport getOffsetParent from '../dom-utils/getOffsetParent';\nimport detectOverflow from '../utils/detectOverflow';\nimport getVariation from '../utils/getVariation';\nimport getFreshSideObject from '../utils/getFreshSideObject';\nimport { min as mathMin, max as mathMax } from '../utils/math';\n\ntype TetherOffset =\n | (({\n popper: Rect,\n reference: Rect,\n placement: Placement,\n }) => number | { mainAxis: number, altAxis: number })\n | number\n | { mainAxis: number, altAxis: number };\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n /* Prevents boundaries overflow on the main axis */\n mainAxis: boolean,\n /* Prevents boundaries overflow on the alternate axis */\n altAxis: boolean,\n /* The area to check the popper is overflowing in */\n boundary: Boundary,\n /* If the popper is not overflowing the main area, fallback to this one */\n rootBoundary: RootBoundary,\n /* Use the reference's \"clippingParents\" boundary context */\n altBoundary: boolean,\n /**\n * Allows the popper to overflow from its boundaries to keep it near its\n * reference element\n */\n tether: boolean,\n /* Offsets when the `tether` option should activate */\n tetherOffset: TetherOffset,\n /* Sets a padding to the provided boundary */\n padding: Padding,\n};\n\nfunction preventOverflow({ state, options, name }: ModifierArguments) {\n const {\n mainAxis: checkMainAxis = true,\n altAxis: checkAltAxis = false,\n boundary,\n rootBoundary,\n altBoundary,\n padding,\n tether = true,\n tetherOffset = 0,\n } = options;\n\n const overflow = detectOverflow(state, {\n boundary,\n rootBoundary,\n padding,\n altBoundary,\n });\n const basePlacement = getBasePlacement(state.placement);\n const variation = getVariation(state.placement);\n const isBasePlacement = !variation;\n const mainAxis = getMainAxisFromPlacement(basePlacement);\n const altAxis = getAltAxis(mainAxis);\n const popperOffsets = state.modifiersData.popperOffsets;\n const referenceRect = state.rects.reference;\n const popperRect = state.rects.popper;\n const tetherOffsetValue =\n typeof tetherOffset === 'function'\n ? tetherOffset({\n ...state.rects,\n placement: state.placement,\n })\n : tetherOffset;\n const normalizedTetherOffsetValue =\n typeof tetherOffsetValue === 'number'\n ? { mainAxis: tetherOffsetValue, altAxis: tetherOffsetValue }\n : { mainAxis: 0, altAxis: 0, ...tetherOffsetValue };\n const offsetModifierState = state.modifiersData.offset\n ? state.modifiersData.offset[state.placement]\n : null;\n\n const data = { x: 0, y: 0 };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n const mainSide = mainAxis === 'y' ? top : left;\n const altSide = mainAxis === 'y' ? bottom : right;\n const len = mainAxis === 'y' ? 'height' : 'width';\n const offset = popperOffsets[mainAxis];\n\n const min = offset + overflow[mainSide];\n const max = offset - overflow[altSide];\n\n const additive = tether ? -popperRect[len] / 2 : 0;\n\n const minLen = variation === start ? referenceRect[len] : popperRect[len];\n const maxLen = variation === start ? -popperRect[len] : -referenceRect[len];\n\n // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n const arrowElement = state.elements.arrow;\n const arrowRect =\n tether && arrowElement\n ? getLayoutRect(arrowElement)\n : { width: 0, height: 0 };\n const arrowPaddingObject = state.modifiersData['arrow#persistent']\n ? state.modifiersData['arrow#persistent'].padding\n : getFreshSideObject();\n const arrowPaddingMin = arrowPaddingObject[mainSide];\n const arrowPaddingMax = arrowPaddingObject[altSide];\n\n // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n const arrowLen = within(0, referenceRect[len], arrowRect[len]);\n\n const minOffset = isBasePlacement\n ? referenceRect[len] / 2 -\n additive -\n arrowLen -\n arrowPaddingMin -\n normalizedTetherOffsetValue.mainAxis\n : minLen -\n arrowLen -\n arrowPaddingMin -\n normalizedTetherOffsetValue.mainAxis;\n const maxOffset = isBasePlacement\n ? -referenceRect[len] / 2 +\n additive +\n arrowLen +\n arrowPaddingMax +\n normalizedTetherOffsetValue.mainAxis\n : maxLen +\n arrowLen +\n arrowPaddingMax +\n normalizedTetherOffsetValue.mainAxis;\n\n const arrowOffsetParent =\n state.elements.arrow && getOffsetParent(state.elements.arrow);\n const clientOffset = arrowOffsetParent\n ? mainAxis === 'y'\n ? arrowOffsetParent.clientTop || 0\n : arrowOffsetParent.clientLeft || 0\n : 0;\n\n const offsetModifierValue = offsetModifierState?.[mainAxis] ?? 0;\n const tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n const tetherMax = offset + maxOffset - offsetModifierValue;\n\n const preventedOffset = within(\n tether ? mathMin(min, tetherMin) : min,\n offset,\n tether ? mathMax(max, tetherMax) : max\n );\n\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n const mainSide = mainAxis === 'x' ? top : left;\n const altSide = mainAxis === 'x' ? bottom : right;\n const offset = popperOffsets[altAxis];\n\n const len = altAxis === 'y' ? 'height' : 'width';\n\n const min = offset + overflow[mainSide];\n const max = offset - overflow[altSide];\n\n const isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n const offsetModifierValue = offsetModifierState?.[altAxis] ?? 0;\n const tetherMin = isOriginSide\n ? min\n : offset -\n referenceRect[len] -\n popperRect[len] -\n offsetModifierValue +\n normalizedTetherOffsetValue.altAxis;\n const tetherMax = isOriginSide\n ? offset +\n referenceRect[len] +\n popperRect[len] -\n offsetModifierValue -\n normalizedTetherOffsetValue.altAxis\n : max;\n\n const preventedOffset =\n tether && isOriginSide\n ? withinMaxClamp(tetherMin, offset, tetherMax)\n : within(tether ? tetherMin : min, offset, tether ? tetherMax : max);\n\n popperOffsets[altAxis] = preventedOffset;\n data[altAxis] = preventedOffset - offset;\n }\n\n state.modifiersData[name] = data;\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type PreventOverflowModifier = Modifier<'preventOverflow', Options>;\nexport default ({\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset'],\n}: PreventOverflowModifier);\n","// @flow\n\nexport default function getAltAxis(axis: 'x' | 'y'): 'x' | 'y' {\n return axis === 'x' ? 'y' : 'x';\n}\n","// @flow\nimport type { Modifier, ModifierArguments, Padding, Rect } from '../types';\nimport type { Placement } from '../enums';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport getLayoutRect from '../dom-utils/getLayoutRect';\nimport contains from '../dom-utils/contains';\nimport getOffsetParent from '../dom-utils/getOffsetParent';\nimport getMainAxisFromPlacement from '../utils/getMainAxisFromPlacement';\nimport { within } from '../utils/within';\nimport mergePaddingObject from '../utils/mergePaddingObject';\nimport expandToHashMap from '../utils/expandToHashMap';\nimport { left, right, basePlacements, top, bottom } from '../enums';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n element: HTMLElement | string | null,\n padding:\n | Padding\n | (({|\n popper: Rect,\n reference: Rect,\n placement: Placement,\n |}) => Padding),\n};\n\nconst toPaddingObject = (padding, state) => {\n padding =\n typeof padding === 'function'\n ? padding({ ...state.rects, placement: state.placement })\n : padding;\n\n return mergePaddingObject(\n typeof padding !== 'number'\n ? padding\n : expandToHashMap(padding, basePlacements)\n );\n};\n\nfunction arrow({ state, name, options }: ModifierArguments) {\n const arrowElement = state.elements.arrow;\n const popperOffsets = state.modifiersData.popperOffsets;\n const basePlacement = getBasePlacement(state.placement);\n const axis = getMainAxisFromPlacement(basePlacement);\n const isVertical = [left, right].indexOf(basePlacement) >= 0;\n const len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n const paddingObject = toPaddingObject(options.padding, state);\n const arrowRect = getLayoutRect(arrowElement);\n const minProp = axis === 'y' ? top : left;\n const maxProp = axis === 'y' ? bottom : right;\n\n const endDiff =\n state.rects.reference[len] +\n state.rects.reference[axis] -\n popperOffsets[axis] -\n state.rects.popper[len];\n const startDiff = popperOffsets[axis] - state.rects.reference[axis];\n\n const arrowOffsetParent = getOffsetParent(arrowElement);\n const clientSize = arrowOffsetParent\n ? axis === 'y'\n ? arrowOffsetParent.clientHeight || 0\n : arrowOffsetParent.clientWidth || 0\n : 0;\n\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n const min = paddingObject[minProp];\n const max = clientSize - arrowRect[len] - paddingObject[maxProp];\n const center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n const offset = within(min, center, max);\n\n // Prevents breaking syntax highlighting...\n const axisProp: string = axis;\n state.modifiersData[name] = {\n [axisProp]: offset,\n centerOffset: offset - center,\n };\n}\n\nfunction effect({ state, options }: ModifierArguments) {\n let { element: arrowElement = '[data-popper-arrow]' } = options;\n\n if (arrowElement == null) {\n return;\n }\n\n // CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n return;\n }\n\n state.elements.arrow = arrowElement;\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type ArrowModifier = Modifier<'arrow', Options>;\nexport default ({\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow'],\n}: ArrowModifier);\n","// @flow\nimport type {\n ModifierArguments,\n Modifier,\n Rect,\n SideObject,\n Offsets,\n} from '../types';\nimport { top, bottom, left, right } from '../enums';\nimport detectOverflow from '../utils/detectOverflow';\n\nfunction getSideOffsets(\n overflow: SideObject,\n rect: Rect,\n preventedOffsets: Offsets = { x: 0, y: 0 }\n): SideObject {\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x,\n };\n}\n\nfunction isAnySideFullyClipped(overflow: SideObject): boolean {\n return [top, right, bottom, left].some((side) => overflow[side] >= 0);\n}\n\nfunction hide({ state, name }: ModifierArguments<{||}>) {\n const referenceRect = state.rects.reference;\n const popperRect = state.rects.popper;\n const preventedOffsets = state.modifiersData.preventOverflow;\n\n const referenceOverflow = detectOverflow(state, {\n elementContext: 'reference',\n });\n const popperAltOverflow = detectOverflow(state, {\n altBoundary: true,\n });\n\n const referenceClippingOffsets = getSideOffsets(\n referenceOverflow,\n referenceRect\n );\n const popperEscapeOffsets = getSideOffsets(\n popperAltOverflow,\n popperRect,\n preventedOffsets\n );\n\n const isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n const hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n\n state.modifiersData[name] = {\n referenceClippingOffsets,\n popperEscapeOffsets,\n isReferenceHidden,\n hasPopperEscaped,\n };\n\n state.attributes.popper = {\n ...state.attributes.popper,\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped,\n };\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type HideModifier = Modifier<'hide', {||}>;\nexport default ({\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide,\n}: HideModifier);\n","// @flow\nimport { popperGenerator, detectOverflow } from './createPopper';\n\nimport eventListeners from './modifiers/eventListeners';\nimport popperOffsets from './modifiers/popperOffsets';\nimport computeStyles from './modifiers/computeStyles';\nimport applyStyles from './modifiers/applyStyles';\n\nexport type * from './types';\n\nconst defaultModifiers = [\n eventListeners,\n popperOffsets,\n computeStyles,\n applyStyles,\n];\n\nconst createPopper = popperGenerator({ defaultModifiers });\n\n// eslint-disable-next-line import/no-unused-modules\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };\n","// @flow\nimport { popperGenerator, detectOverflow } from './createPopper';\n\nimport eventListeners from './modifiers/eventListeners';\nimport popperOffsets from './modifiers/popperOffsets';\nimport computeStyles from './modifiers/computeStyles';\nimport applyStyles from './modifiers/applyStyles';\nimport offset from './modifiers/offset';\nimport flip from './modifiers/flip';\nimport preventOverflow from './modifiers/preventOverflow';\nimport arrow from './modifiers/arrow';\nimport hide from './modifiers/hide';\n\nexport type * from './types';\n\nconst defaultModifiers = [\n eventListeners,\n popperOffsets,\n computeStyles,\n applyStyles,\n offset,\n flip,\n preventOverflow,\n arrow,\n hide,\n];\n\nconst createPopper = popperGenerator({ defaultModifiers });\n\n// eslint-disable-next-line import/no-unused-modules\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };\n// eslint-disable-next-line import/no-unused-modules\nexport { createPopper as createPopperLite } from './popper-lite';\n// eslint-disable-next-line import/no-unused-modules\nexport * from './modifiers';\n"],"names":["getWindow","node","window","toString","ownerDocument","defaultView","isElement","Element","isHTMLElement","HTMLElement","isShadowRoot","ShadowRoot","max","Math","min","round","getUAString","uaData","navigator","userAgentData","brands","Array","isArray","map","item","brand","version","join","userAgent","isLayoutViewport","test","getBoundingClientRect","element","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","offsetWidth","width","offsetHeight","height","visualViewport","addVisualOffsets","x","left","offsetLeft","y","top","offsetTop","right","bottom","getWindowScroll","win","scrollLeft","pageXOffset","scrollTop","pageYOffset","getNodeName","nodeName","toLowerCase","getDocumentElement","document","documentElement","getWindowScrollBarX","getComputedStyle","isScrollParent","overflow","overflowX","overflowY","getCompositeRect","elementOrVirtualElement","offsetParent","isFixed","isOffsetParentAnElement","offsetParentIsScaled","rect","isElementScaled","scroll","offsets","clientLeft","clientTop","getLayoutRect","abs","getParentNode","assignedSlot","parentNode","host","getScrollParent","indexOf","body","listScrollParents","list","scrollParent","isBody","_element$ownerDocumen","target","concat","updatedList","isTableElement","getTrueOffsetParent","position","getOffsetParent","isFirefox","currentNode","css","transform","perspective","contain","willChange","filter","getContainingBlock","auto","basePlacements","start","end","viewport","popper","variationPlacements","reduce","acc","placement","placements","modifierPhases","order","modifiers","Map","visited","Set","result","sort","modifier","add","name","requires","requiresIfExists","forEach","dep","has","depModifier","get","push","set","contains","parent","child","rootNode","getRootNode","next","isSameNode","rectToClientRect","getClientRectFromMixedType","clippingParent","strategy","html","clientWidth","clientHeight","layoutViewport","getViewportRect","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","direction","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","getBasePlacement","split","getVariation","getMainAxisFromPlacement","computeOffsets","reference","basePlacement","variation","commonX","commonY","mainAxis","len","mergePaddingObject","paddingObject","expandToHashMap","value","keys","hashMap","key","detectOverflow","state","options","elementContext","altBoundary","padding","altContext","popperRect","rects","elements","clippingClientRect","contextElement","referenceClientRect","popperOffsets","popperClientRect","elementClientRect","overflowOffsets","offsetData","modifiersData","offset","Object","multiply","axis","DEFAULT_OPTIONS","areValidElements","args","some","popperGenerator","generatorOptions","defaultModifiers","defaultOptions","fn","pending","orderedModifiers","attributes","styles","effectCleanupFns","isDestroyed","instance","setOptions","setOptionsAction","cleanupModifierEffects","scrollParents","merged","phase","orderModifiers","current","existing","data","m","enabled","effect","cleanupFn","noopFn","update","forceUpdate","reset","index","length","Promise","resolve","then","undefined","destroy","onFirstUpdate","passive","resize","addEventListener","removeEventListener","unsetSides","mapToStyles","gpuAcceleration","adaptive","roundOffsets","hasX","hasOwnProperty","hasY","sideX","sideY","heightProp","widthProp","commonStyles","dpr","devicePixelRatio","roundOffsetsByDPR","arrow","style","assign","removeAttribute","setAttribute","initialStyles","margin","property","attribute","invertDistance","skidding","distance","distanceAndSkiddingToXY","hash","getOppositePlacement","replace","matched","getOppositeVariationPlacement","computeAutoPlacement","flipVariations","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","a","b","_skip","checkMainAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","i","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","every","check","fittingPlacement","find","slice","within","mathMax","mathMin","tether","tetherOffset","isBasePlacement","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","mainSide","altSide","additive","minLen","maxLen","arrowElement","arrowRect","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","arrowOffsetParent","clientOffset","offsetModifierValue","tetherMax","preventedOffset","isOriginSide","tetherMin","v","withinMaxClamp","toPaddingObject","minProp","maxProp","endDiff","startDiff","clientSize","centerToReference","center","axisProp","centerOffset","querySelector","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","createPopper","eventListeners","computeStyles","applyStyles","flip","hide"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"popper.min.js","sources":["../../src/dom-utils/getWindow.js","../../src/dom-utils/instanceOf.js","../../src/utils/math.js","../../src/utils/userAgent.js","../../src/dom-utils/isLayoutViewport.js","../../src/dom-utils/getBoundingClientRect.js","../../src/dom-utils/getWindowScroll.js","../../src/dom-utils/getNodeName.js","../../src/dom-utils/getDocumentElement.js","../../src/dom-utils/getWindowScrollBarX.js","../../src/dom-utils/getComputedStyle.js","../../src/dom-utils/isScrollParent.js","../../src/dom-utils/getCompositeRect.js","../../src/dom-utils/getNodeScroll.js","../../src/dom-utils/getHTMLElementScroll.js","../../src/dom-utils/getLayoutRect.js","../../src/dom-utils/getParentNode.js","../../src/dom-utils/getScrollParent.js","../../src/dom-utils/listScrollParents.js","../../src/dom-utils/isTableElement.js","../../src/dom-utils/getOffsetParent.js","../../src/enums.js","../../src/utils/orderModifiers.js","../../src/dom-utils/contains.js","../../src/utils/rectToClientRect.js","../../src/dom-utils/getClippingRect.js","../../src/dom-utils/getViewportRect.js","../../src/dom-utils/getDocumentRect.js","../../src/utils/getBasePlacement.js","../../src/utils/getVariation.js","../../src/utils/getMainAxisFromPlacement.js","../../src/utils/computeOffsets.js","../../src/utils/mergePaddingObject.js","../../src/utils/getFreshSideObject.js","../../src/utils/expandToHashMap.js","../../src/utils/detectOverflow.js","../../src/createPopper.js","../../src/utils/debounce.js","../../src/utils/mergeByName.js","../../src/modifiers/eventListeners.js","../../src/modifiers/popperOffsets.js","../../src/modifiers/computeStyles.js","../../src/modifiers/applyStyles.js","../../src/modifiers/offset.js","../../src/utils/getOppositePlacement.js","../../src/utils/getOppositeVariationPlacement.js","../../src/utils/computeAutoPlacement.js","../../src/modifiers/flip.js","../../src/utils/within.js","../../src/modifiers/preventOverflow.js","../../src/utils/getAltAxis.js","../../src/modifiers/arrow.js","../../src/modifiers/hide.js","../../src/popper-lite.js","../../src/popper.js"],"sourcesContent":["// @flow\nimport type { Window } from '../types';\ndeclare function getWindow(node: Node | Window): Window;\n\nexport default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n const ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}\n","// @flow\nimport getWindow from './getWindow';\n\ndeclare function isElement(node: mixed): boolean %checks(node instanceof\n Element);\nfunction isElement(node) {\n const OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\ndeclare function isHTMLElement(node: mixed): boolean %checks(node instanceof\n HTMLElement);\nfunction isHTMLElement(node) {\n const OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\ndeclare function isShadowRoot(node: mixed): boolean %checks(node instanceof\n ShadowRoot);\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n const OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };\n","// @flow\nexport const max = Math.max;\nexport const min = Math.min;\nexport const round = Math.round;\n","// @flow\ntype Navigator = Navigator & { userAgentData?: NavigatorUAData };\n\ninterface NavigatorUAData {\n brands: Array<{ brand: string, version: string }>;\n mobile: boolean;\n platform: string;\n}\n\nexport default function getUAString(): string {\n const uaData = (navigator: Navigator).userAgentData;\n\n if (uaData?.brands && Array.isArray(uaData.brands)) {\n return uaData.brands\n .map((item) => `${item.brand}/${item.version}`)\n .join(' ');\n }\n\n return navigator.userAgent;\n}\n","// @flow\nimport getUAString from '../utils/userAgent';\n\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}\n","// @flow\nimport type { ClientRectObject, VirtualElement } from '../types';\nimport { isElement, isHTMLElement } from './instanceOf';\nimport { round } from '../utils/math';\nimport getWindow from './getWindow';\nimport isLayoutViewport from './isLayoutViewport';\n\nexport default function getBoundingClientRect(\n element: Element | VirtualElement,\n includeScale: boolean = false,\n isFixedStrategy: boolean = false\n): ClientRectObject {\n const clientRect = element.getBoundingClientRect();\n let scaleX = 1;\n let scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX =\n (element: HTMLElement).offsetWidth > 0\n ? round(clientRect.width) / (element: HTMLElement).offsetWidth || 1\n : 1;\n scaleY =\n (element: HTMLElement).offsetHeight > 0\n ? round(clientRect.height) / (element: HTMLElement).offsetHeight || 1\n : 1;\n }\n\n const { visualViewport } = isElement(element) ? getWindow(element) : window;\n const addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n\n const x =\n (clientRect.left +\n (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) /\n scaleX;\n const y =\n (clientRect.top +\n (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) /\n scaleY;\n const width = clientRect.width / scaleX;\n const height = clientRect.height / scaleY;\n\n return {\n width,\n height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x,\n y,\n };\n}\n","// @flow\nimport getWindow from './getWindow';\nimport type { Window } from '../types';\n\nexport default function getWindowScroll(node: Node | Window) {\n const win = getWindow(node);\n const scrollLeft = win.pageXOffset;\n const scrollTop = win.pageYOffset;\n\n return {\n scrollLeft,\n scrollTop,\n };\n}\n","// @flow\nimport type { Window } from '../types';\n\nexport default function getNodeName(element: ?Node | Window): ?string {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}\n","// @flow\nimport { isElement } from './instanceOf';\nimport type { Window } from '../types';\n\nexport default function getDocumentElement(\n element: Element | Window\n): HTMLElement {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return (\n (isElement(element)\n ? element.ownerDocument\n : // $FlowFixMe[prop-missing]\n element.document) || window.document\n ).documentElement;\n}\n","// @flow\nimport getBoundingClientRect from './getBoundingClientRect';\nimport getDocumentElement from './getDocumentElement';\nimport getWindowScroll from './getWindowScroll';\n\nexport default function getWindowScrollBarX(element: Element): number {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return (\n getBoundingClientRect(getDocumentElement(element)).left +\n getWindowScroll(element).scrollLeft\n );\n}\n","// @flow\nimport getWindow from './getWindow';\n\nexport default function getComputedStyle(\n element: Element\n): CSSStyleDeclaration {\n return getWindow(element).getComputedStyle(element);\n}\n","// @flow\nimport getComputedStyle from './getComputedStyle';\n\nexport default function isScrollParent(element: HTMLElement): boolean {\n // Firefox wants us to check `-x` and `-y` variations as well\n const { overflow, overflowX, overflowY } = getComputedStyle(element);\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}\n","// @flow\nimport type { Rect, VirtualElement, Window } from '../types';\nimport getBoundingClientRect from './getBoundingClientRect';\nimport getNodeScroll from './getNodeScroll';\nimport getNodeName from './getNodeName';\nimport { isHTMLElement } from './instanceOf';\nimport getWindowScrollBarX from './getWindowScrollBarX';\nimport getDocumentElement from './getDocumentElement';\nimport isScrollParent from './isScrollParent';\nimport { round } from '../utils/math';\n\nfunction isElementScaled(element: HTMLElement) {\n const rect = element.getBoundingClientRect();\n const scaleX = round(rect.width) / element.offsetWidth || 1;\n const scaleY = round(rect.height) / element.offsetHeight || 1;\n\n return scaleX !== 1 || scaleY !== 1;\n}\n\n// Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\nexport default function getCompositeRect(\n elementOrVirtualElement: Element | VirtualElement,\n offsetParent: Element | Window,\n isFixed: boolean = false\n): Rect {\n const isOffsetParentAnElement = isHTMLElement(offsetParent);\n const offsetParentIsScaled =\n isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n const documentElement = getDocumentElement(offsetParent);\n const rect = getBoundingClientRect(\n elementOrVirtualElement,\n offsetParentIsScaled,\n isFixed\n );\n\n let scroll = { scrollLeft: 0, scrollTop: 0 };\n let offsets = { x: 0, y: 0 };\n\n if (isOffsetParentAnElement || (!isOffsetParentAnElement && !isFixed)) {\n if (\n getNodeName(offsetParent) !== 'body' ||\n // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)\n ) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height,\n };\n}\n","// @flow\nimport getWindowScroll from './getWindowScroll';\nimport getWindow from './getWindow';\nimport { isHTMLElement } from './instanceOf';\nimport getHTMLElementScroll from './getHTMLElementScroll';\nimport type { Window } from '../types';\n\nexport default function getNodeScroll(node: Node | Window) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}\n","// @flow\n\nexport default function getHTMLElementScroll(element: HTMLElement) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop,\n };\n}\n","// @flow\nimport type { Rect } from '../types';\nimport getBoundingClientRect from './getBoundingClientRect';\n\n// Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\nexport default function getLayoutRect(element: HTMLElement): Rect {\n const clientRect = getBoundingClientRect(element);\n\n // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n let width = element.offsetWidth;\n let height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width,\n height,\n };\n}\n","// @flow\nimport getNodeName from './getNodeName';\nimport getDocumentElement from './getDocumentElement';\nimport { isShadowRoot } from './instanceOf';\n\nexport default function getParentNode(element: Node | ShadowRoot): Node {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (\n // this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || // DOM Element detected\n (isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n );\n}\n","// @flow\nimport getParentNode from './getParentNode';\nimport isScrollParent from './isScrollParent';\nimport getNodeName from './getNodeName';\nimport { isHTMLElement } from './instanceOf';\n\nexport default function getScrollParent(node: Node): HTMLElement {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}\n","// @flow\nimport getScrollParent from './getScrollParent';\nimport getParentNode from './getParentNode';\nimport getWindow from './getWindow';\nimport type { Window, VisualViewport } from '../types';\nimport isScrollParent from './isScrollParent';\n\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\nexport default function listScrollParents(\n element: Node,\n list: Array = []\n): Array {\n const scrollParent = getScrollParent(element);\n const isBody = scrollParent === element.ownerDocument?.body;\n const win = getWindow(scrollParent);\n const target = isBody\n ? [win].concat(\n win.visualViewport || [],\n isScrollParent(scrollParent) ? scrollParent : []\n )\n : scrollParent;\n const updatedList = list.concat(target);\n\n return isBody\n ? updatedList\n : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}\n","// @flow\nimport getNodeName from './getNodeName';\n\nexport default function isTableElement(element: Element): boolean {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}\n","// @flow\nimport getWindow from './getWindow';\nimport getNodeName from './getNodeName';\nimport getComputedStyle from './getComputedStyle';\nimport { isHTMLElement, isShadowRoot } from './instanceOf';\nimport isTableElement from './isTableElement';\nimport getParentNode from './getParentNode';\nimport getUAString from '../utils/userAgent';\n\nfunction getTrueOffsetParent(element: Element): ?Element {\n if (\n !isHTMLElement(element) ||\n // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed'\n ) {\n return null;\n }\n\n return element.offsetParent;\n}\n\n// `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\nfunction getContainingBlock(element: Element) {\n const isFirefox = /firefox/i.test(getUAString());\n const isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n const elementCss = getComputedStyle(element);\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n let currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (\n isHTMLElement(currentNode) &&\n ['html', 'body'].indexOf(getNodeName(currentNode)) < 0\n ) {\n const css = getComputedStyle(currentNode);\n\n // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n if (\n css.transform !== 'none' ||\n css.perspective !== 'none' ||\n css.contain === 'paint' ||\n ['transform', 'perspective'].indexOf(css.willChange) !== -1 ||\n (isFirefox && css.willChange === 'filter') ||\n (isFirefox && css.filter && css.filter !== 'none')\n ) {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n}\n\n// Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\nexport default function getOffsetParent(element: Element) {\n const window = getWindow(element);\n\n let offsetParent = getTrueOffsetParent(element);\n\n while (\n offsetParent &&\n isTableElement(offsetParent) &&\n getComputedStyle(offsetParent).position === 'static'\n ) {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (\n offsetParent &&\n (getNodeName(offsetParent) === 'html' ||\n (getNodeName(offsetParent) === 'body' &&\n getComputedStyle(offsetParent).position === 'static'))\n ) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}\n","// @flow\nexport const top: 'top' = 'top';\nexport const bottom: 'bottom' = 'bottom';\nexport const right: 'right' = 'right';\nexport const left: 'left' = 'left';\nexport const auto: 'auto' = 'auto';\nexport type BasePlacement =\n | typeof top\n | typeof bottom\n | typeof right\n | typeof left;\nexport const basePlacements: Array = [top, bottom, right, left];\n\nexport const start: 'start' = 'start';\nexport const end: 'end' = 'end';\nexport type Variation = typeof start | typeof end;\n\nexport const clippingParents: 'clippingParents' = 'clippingParents';\nexport const viewport: 'viewport' = 'viewport';\nexport type Boundary = Element | Array | typeof clippingParents;\nexport type RootBoundary = typeof viewport | 'document';\n\nexport const popper: 'popper' = 'popper';\nexport const reference: 'reference' = 'reference';\nexport type Context = typeof popper | typeof reference;\n\nexport type VariationPlacement =\n | 'top-start'\n | 'top-end'\n | 'bottom-start'\n | 'bottom-end'\n | 'right-start'\n | 'right-end'\n | 'left-start'\n | 'left-end';\nexport type AutoPlacement = 'auto' | 'auto-start' | 'auto-end';\nexport type ComputedPlacement = VariationPlacement | BasePlacement;\nexport type Placement = AutoPlacement | BasePlacement | VariationPlacement;\n\nexport const variationPlacements: Array = basePlacements.reduce(\n (acc: Array, placement: BasePlacement) =>\n acc.concat([(`${placement}-${start}`: any), (`${placement}-${end}`: any)]),\n []\n);\nexport const placements: Array = [...basePlacements, auto].reduce(\n (\n acc: Array,\n placement: BasePlacement | typeof auto\n ): Array =>\n acc.concat([\n placement,\n (`${placement}-${start}`: any),\n (`${placement}-${end}`: any),\n ]),\n []\n);\n\n// modifiers that need to read the DOM\nexport const beforeRead: 'beforeRead' = 'beforeRead';\nexport const read: 'read' = 'read';\nexport const afterRead: 'afterRead' = 'afterRead';\n// pure-logic modifiers\nexport const beforeMain: 'beforeMain' = 'beforeMain';\nexport const main: 'main' = 'main';\nexport const afterMain: 'afterMain' = 'afterMain';\n// modifier with the purpose to write to the DOM (or write into a framework state)\nexport const beforeWrite: 'beforeWrite' = 'beforeWrite';\nexport const write: 'write' = 'write';\nexport const afterWrite: 'afterWrite' = 'afterWrite';\nexport const modifierPhases: Array = [\n beforeRead,\n read,\n afterRead,\n beforeMain,\n main,\n afterMain,\n beforeWrite,\n write,\n afterWrite,\n];\n\nexport type ModifierPhases =\n | typeof beforeRead\n | typeof read\n | typeof afterRead\n | typeof beforeMain\n | typeof main\n | typeof afterMain\n | typeof beforeWrite\n | typeof write\n | typeof afterWrite;\n","// @flow\nimport type { Modifier } from '../types';\nimport { modifierPhases } from '../enums';\n\n// source: https://stackoverflow.com/questions/49875255\nfunction order(modifiers) {\n const map = new Map();\n const visited = new Set();\n const result = [];\n\n modifiers.forEach(modifier => {\n map.set(modifier.name, modifier);\n });\n\n // On visiting object, check for its dependencies and visit them recursively\n function sort(modifier: Modifier) {\n visited.add(modifier.name);\n\n const requires = [\n ...(modifier.requires || []),\n ...(modifier.requiresIfExists || []),\n ];\n\n requires.forEach(dep => {\n if (!visited.has(dep)) {\n const depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n\n result.push(modifier);\n }\n\n modifiers.forEach(modifier => {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n\n return result;\n}\n\nexport default function orderModifiers(\n modifiers: Array>\n): Array> {\n // order based on dependencies\n const orderedModifiers = order(modifiers);\n\n // order based on phase\n return modifierPhases.reduce((acc, phase) => {\n return acc.concat(\n orderedModifiers.filter(modifier => modifier.phase === phase)\n );\n }, []);\n}\n","// @flow\nimport { isShadowRoot } from './instanceOf';\n\nexport default function contains(parent: Element, child: Element) {\n const rootNode = child.getRootNode && child.getRootNode();\n\n // First, attempt with faster native method\n if (parent.contains(child)) {\n return true;\n }\n // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n let next = child;\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n }\n // $FlowFixMe[prop-missing]: need a better way to handle this...\n next = next.parentNode || next.host;\n } while (next);\n }\n\n // Give up, the result is false\n return false;\n}\n","// @flow\nimport type { Rect, ClientRectObject } from '../types';\n\nexport default function rectToClientRect(rect: Rect): ClientRectObject {\n return {\n ...rect,\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height,\n };\n}\n","// @flow\nimport type { ClientRectObject, PositioningStrategy } from '../types';\nimport type { Boundary, RootBoundary } from '../enums';\nimport { viewport } from '../enums';\nimport getViewportRect from './getViewportRect';\nimport getDocumentRect from './getDocumentRect';\nimport listScrollParents from './listScrollParents';\nimport getOffsetParent from './getOffsetParent';\nimport getDocumentElement from './getDocumentElement';\nimport getComputedStyle from './getComputedStyle';\nimport { isElement, isHTMLElement } from './instanceOf';\nimport getBoundingClientRect from './getBoundingClientRect';\nimport getParentNode from './getParentNode';\nimport contains from './contains';\nimport getNodeName from './getNodeName';\nimport rectToClientRect from '../utils/rectToClientRect';\nimport { max, min } from '../utils/math';\n\nfunction getInnerBoundingClientRect(\n element: Element,\n strategy: PositioningStrategy\n) {\n const rect = getBoundingClientRect(element, false, strategy === 'fixed');\n\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n\n return rect;\n}\n\nfunction getClientRectFromMixedType(\n element: Element,\n clippingParent: Element | RootBoundary,\n strategy: PositioningStrategy\n): ClientRectObject {\n return clippingParent === viewport\n ? rectToClientRect(getViewportRect(element, strategy))\n : isElement(clippingParent)\n ? getInnerBoundingClientRect(clippingParent, strategy)\n : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n}\n\n// A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\nfunction getClippingParents(element: Element): Array {\n const clippingParents = listScrollParents(getParentNode(element));\n const canEscapeClipping =\n ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n const clipperElement =\n canEscapeClipping && isHTMLElement(element)\n ? getOffsetParent(element)\n : element;\n\n if (!isElement(clipperElement)) {\n return [];\n }\n\n // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n return clippingParents.filter(\n (clippingParent) =>\n isElement(clippingParent) &&\n contains(clippingParent, clipperElement) &&\n getNodeName(clippingParent) !== 'body'\n );\n}\n\n// Gets the maximum area that the element is visible in due to any number of\n// clipping parents\nexport default function getClippingRect(\n element: Element,\n boundary: Boundary,\n rootBoundary: RootBoundary,\n strategy: PositioningStrategy\n): ClientRectObject {\n const mainClippingParents =\n boundary === 'clippingParents'\n ? getClippingParents(element)\n : [].concat(boundary);\n const clippingParents = [...mainClippingParents, rootBoundary];\n const firstClippingParent = clippingParents[0];\n\n const clippingRect = clippingParents.reduce((accRect, clippingParent) => {\n const rect = getClientRectFromMixedType(element, clippingParent, strategy);\n\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n\n return clippingRect;\n}\n","// @flow\nimport getWindow from './getWindow';\nimport getDocumentElement from './getDocumentElement';\nimport getWindowScrollBarX from './getWindowScrollBarX';\nimport isLayoutViewport from './isLayoutViewport';\nimport type { PositioningStrategy } from '../types';\n\nexport default function getViewportRect(\n element: Element,\n strategy: PositioningStrategy\n) {\n const win = getWindow(element);\n const html = getDocumentElement(element);\n const visualViewport = win.visualViewport;\n\n let width = html.clientWidth;\n let height = html.clientHeight;\n let x = 0;\n let y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n\n const layoutViewport = isLayoutViewport();\n\n if (layoutViewport || (!layoutViewport && strategy === 'fixed')) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width,\n height,\n x: x + getWindowScrollBarX(element),\n y,\n };\n}\n","// @flow\nimport type { Rect } from '../types';\nimport getDocumentElement from './getDocumentElement';\nimport getComputedStyle from './getComputedStyle';\nimport getWindowScrollBarX from './getWindowScrollBarX';\nimport getWindowScroll from './getWindowScroll';\nimport { max } from '../utils/math';\n\n// Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\nexport default function getDocumentRect(element: HTMLElement): Rect {\n const html = getDocumentElement(element);\n const winScroll = getWindowScroll(element);\n const body = element.ownerDocument?.body;\n\n const width = max(\n html.scrollWidth,\n html.clientWidth,\n body ? body.scrollWidth : 0,\n body ? body.clientWidth : 0\n );\n const height = max(\n html.scrollHeight,\n html.clientHeight,\n body ? body.scrollHeight : 0,\n body ? body.clientHeight : 0\n );\n\n let x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n const y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return { width, height, x, y };\n}\n","// @flow\nimport { type BasePlacement, type Placement, auto } from '../enums';\n\nexport default function getBasePlacement(\n placement: Placement | typeof auto\n): BasePlacement {\n return (placement.split('-')[0]: any);\n}\n","// @flow\nimport { type Variation, type Placement } from '../enums';\n\nexport default function getVariation(placement: Placement): ?Variation {\n return (placement.split('-')[1]: any);\n}\n","// @flow\nimport type { Placement } from '../enums';\n\nexport default function getMainAxisFromPlacement(\n placement: Placement\n): 'x' | 'y' {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}\n","// @flow\nimport getBasePlacement from './getBasePlacement';\nimport getVariation from './getVariation';\nimport getMainAxisFromPlacement from './getMainAxisFromPlacement';\nimport type {\n Rect,\n PositioningStrategy,\n Offsets,\n ClientRectObject,\n} from '../types';\nimport { top, right, bottom, left, start, end, type Placement } from '../enums';\n\nexport default function computeOffsets({\n reference,\n element,\n placement,\n}: {\n reference: Rect | ClientRectObject,\n element: Rect | ClientRectObject,\n strategy: PositioningStrategy,\n placement?: Placement,\n}): Offsets {\n const basePlacement = placement ? getBasePlacement(placement) : null;\n const variation = placement ? getVariation(placement) : null;\n const commonX = reference.x + reference.width / 2 - element.width / 2;\n const commonY = reference.y + reference.height / 2 - element.height / 2;\n\n let offsets;\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height,\n };\n break;\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height,\n };\n break;\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY,\n };\n break;\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY,\n };\n break;\n default:\n offsets = {\n x: reference.x,\n y: reference.y,\n };\n }\n\n const mainAxis = basePlacement\n ? getMainAxisFromPlacement(basePlacement)\n : null;\n\n if (mainAxis != null) {\n const len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] =\n offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n case end:\n offsets[mainAxis] =\n offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n default:\n }\n }\n\n return offsets;\n}\n","// @flow\nimport type { SideObject } from '../types';\nimport getFreshSideObject from './getFreshSideObject';\n\nexport default function mergePaddingObject(\n paddingObject: $Shape\n): SideObject {\n return {\n ...getFreshSideObject(),\n ...paddingObject,\n };\n}\n","// @flow\nimport type { SideObject } from '../types';\n\nexport default function getFreshSideObject(): SideObject {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n };\n}\n","// @flow\n\nexport default function expandToHashMap<\n T: number | string | boolean,\n K: string\n>(value: T, keys: Array): { [key: string]: T } {\n return keys.reduce((hashMap, key) => {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}\n","// @flow\nimport type { State, SideObject, Padding, PositioningStrategy } from '../types';\nimport type { Placement, Boundary, RootBoundary, Context } from '../enums';\nimport getClippingRect from '../dom-utils/getClippingRect';\nimport getDocumentElement from '../dom-utils/getDocumentElement';\nimport getBoundingClientRect from '../dom-utils/getBoundingClientRect';\nimport computeOffsets from './computeOffsets';\nimport rectToClientRect from './rectToClientRect';\nimport {\n clippingParents,\n reference,\n popper,\n bottom,\n top,\n right,\n basePlacements,\n viewport,\n} from '../enums';\nimport { isElement } from '../dom-utils/instanceOf';\nimport mergePaddingObject from './mergePaddingObject';\nimport expandToHashMap from './expandToHashMap';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n placement: Placement,\n strategy: PositioningStrategy,\n boundary: Boundary,\n rootBoundary: RootBoundary,\n elementContext: Context,\n altBoundary: boolean,\n padding: Padding,\n};\n\nexport default function detectOverflow(\n state: State,\n options: $Shape = {}\n): SideObject {\n const {\n placement = state.placement,\n strategy = state.strategy,\n boundary = clippingParents,\n rootBoundary = viewport,\n elementContext = popper,\n altBoundary = false,\n padding = 0,\n } = options;\n\n const paddingObject = mergePaddingObject(\n typeof padding !== 'number'\n ? padding\n : expandToHashMap(padding, basePlacements)\n );\n\n const altContext = elementContext === popper ? reference : popper;\n\n const popperRect = state.rects.popper;\n const element = state.elements[altBoundary ? altContext : elementContext];\n\n const clippingClientRect = getClippingRect(\n isElement(element)\n ? element\n : element.contextElement || getDocumentElement(state.elements.popper),\n boundary,\n rootBoundary,\n strategy\n );\n\n const referenceClientRect = getBoundingClientRect(state.elements.reference);\n\n const popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement,\n });\n\n const popperClientRect = rectToClientRect({\n ...popperRect,\n ...popperOffsets,\n });\n\n const elementClientRect =\n elementContext === popper ? popperClientRect : referenceClientRect;\n\n // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n const overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom:\n elementClientRect.bottom -\n clippingClientRect.bottom +\n paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right:\n elementClientRect.right - clippingClientRect.right + paddingObject.right,\n };\n\n const offsetData = state.modifiersData.offset;\n\n // Offsets can be applied only to the popper element\n if (elementContext === popper && offsetData) {\n const offset = offsetData[placement];\n\n Object.keys(overflowOffsets).forEach((key) => {\n const multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n const axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}\n","// @flow\nimport type {\n State,\n OptionsGeneric,\n Modifier,\n Instance,\n VirtualElement,\n} from './types';\nimport getCompositeRect from './dom-utils/getCompositeRect';\nimport getLayoutRect from './dom-utils/getLayoutRect';\nimport listScrollParents from './dom-utils/listScrollParents';\nimport getOffsetParent from './dom-utils/getOffsetParent';\nimport orderModifiers from './utils/orderModifiers';\nimport debounce from './utils/debounce';\nimport mergeByName from './utils/mergeByName';\nimport detectOverflow from './utils/detectOverflow';\nimport { isElement } from './dom-utils/instanceOf';\n\nconst DEFAULT_OPTIONS: OptionsGeneric = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute',\n};\n\ntype PopperGeneratorArgs = {\n defaultModifiers?: Array>,\n defaultOptions?: $Shape>,\n};\n\nfunction areValidElements(...args: Array): boolean {\n return !args.some(\n (element) =>\n !(element && typeof element.getBoundingClientRect === 'function')\n );\n}\n\nexport function popperGenerator(generatorOptions: PopperGeneratorArgs = {}) {\n const { defaultModifiers = [], defaultOptions = DEFAULT_OPTIONS } =\n generatorOptions;\n\n return function createPopper>>(\n reference: Element | VirtualElement,\n popper: HTMLElement,\n options: $Shape> = defaultOptions\n ): Instance {\n let state: $Shape = {\n placement: 'bottom',\n orderedModifiers: [],\n options: { ...DEFAULT_OPTIONS, ...defaultOptions },\n modifiersData: {},\n elements: {\n reference,\n popper,\n },\n attributes: {},\n styles: {},\n };\n\n let effectCleanupFns: Array<() => void> = [];\n let isDestroyed = false;\n\n const instance = {\n state,\n setOptions(setOptionsAction) {\n const options =\n typeof setOptionsAction === 'function'\n ? setOptionsAction(state.options)\n : setOptionsAction;\n\n cleanupModifierEffects();\n\n state.options = {\n // $FlowFixMe[exponential-spread]\n ...defaultOptions,\n ...state.options,\n ...options,\n };\n\n state.scrollParents = {\n reference: isElement(reference)\n ? listScrollParents(reference)\n : reference.contextElement\n ? listScrollParents(reference.contextElement)\n : [],\n popper: listScrollParents(popper),\n };\n\n // Orders the modifiers based on their dependencies and `phase`\n // properties\n const orderedModifiers = orderModifiers(\n mergeByName([...defaultModifiers, ...state.options.modifiers])\n );\n\n // Strip out disabled modifiers\n state.orderedModifiers = orderedModifiers.filter((m) => m.enabled);\n\n runModifierEffects();\n\n return instance.update();\n },\n\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n const { reference, popper } = state.elements;\n\n // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n if (!areValidElements(reference, popper)) {\n return;\n }\n\n // Store the reference and popper rects to be read by modifiers\n state.rects = {\n reference: getCompositeRect(\n reference,\n getOffsetParent(popper),\n state.options.strategy === 'fixed'\n ),\n popper: getLayoutRect(popper),\n };\n\n // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n state.reset = false;\n\n state.placement = state.options.placement;\n\n // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n state.orderedModifiers.forEach(\n (modifier) =>\n (state.modifiersData[modifier.name] = {\n ...modifier.data,\n })\n );\n\n for (let index = 0; index < state.orderedModifiers.length; index++) {\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n const { fn, options = {}, name } = state.orderedModifiers[index];\n\n if (typeof fn === 'function') {\n state = fn({ state, options, name, instance }) || state;\n }\n }\n },\n\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce<$Shape>(\n () =>\n new Promise<$Shape>((resolve) => {\n instance.forceUpdate();\n resolve(state);\n })\n ),\n\n destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n },\n };\n\n if (!areValidElements(reference, popper)) {\n return instance;\n }\n\n instance.setOptions(options).then((state) => {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n });\n\n // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n function runModifierEffects() {\n state.orderedModifiers.forEach(({ name, options = {}, effect }) => {\n if (typeof effect === 'function') {\n const cleanupFn = effect({ state, name, instance, options });\n const noopFn = () => {};\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach((fn) => fn());\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\n\nexport const createPopper = popperGenerator();\n\n// eslint-disable-next-line import/no-unused-modules\nexport { detectOverflow };\n","// @flow\n\nexport default function debounce(fn: Function): () => Promise {\n let pending;\n return () => {\n if (!pending) {\n pending = new Promise(resolve => {\n Promise.resolve().then(() => {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}\n","// @flow\nimport type { Modifier } from '../types';\n\nexport default function mergeByName(\n modifiers: Array<$Shape>>\n): Array<$Shape>> {\n const merged = modifiers.reduce((merged, current) => {\n const existing = merged[current.name];\n merged[current.name] = existing\n ? {\n ...existing,\n ...current,\n options: { ...existing.options, ...current.options },\n data: { ...existing.data, ...current.data },\n }\n : current;\n return merged;\n }, {});\n\n // IE11 does not support Object.values\n return Object.keys(merged).map(key => merged[key]);\n}\n","// @flow\nimport type { ModifierArguments, Modifier } from '../types';\nimport getWindow from '../dom-utils/getWindow';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n scroll: boolean,\n resize: boolean,\n};\n\nconst passive = { passive: true };\n\nfunction effect({ state, instance, options }: ModifierArguments) {\n const { scroll = true, resize = true } = options;\n\n const window = getWindow(state.elements.popper);\n const scrollParents = [\n ...state.scrollParents.reference,\n ...state.scrollParents.popper,\n ];\n\n if (scroll) {\n scrollParents.forEach(scrollParent => {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return () => {\n if (scroll) {\n scrollParents.forEach(scrollParent => {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type EventListenersModifier = Modifier<'eventListeners', Options>;\nexport default ({\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: () => {},\n effect,\n data: {},\n}: EventListenersModifier);\n","// @flow\nimport type { ModifierArguments, Modifier } from '../types';\nimport computeOffsets from '../utils/computeOffsets';\n\nfunction popperOffsets({ state, name }: ModifierArguments<{||}>) {\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement,\n });\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type PopperOffsetsModifier = Modifier<'popperOffsets', {||}>;\nexport default ({\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {},\n}: PopperOffsetsModifier);\n","// @flow\nimport type {\n PositioningStrategy,\n Offsets,\n Modifier,\n ModifierArguments,\n Rect,\n Window,\n} from '../types';\nimport {\n type BasePlacement,\n type Variation,\n top,\n left,\n right,\n bottom,\n end,\n} from '../enums';\nimport getOffsetParent from '../dom-utils/getOffsetParent';\nimport getWindow from '../dom-utils/getWindow';\nimport getDocumentElement from '../dom-utils/getDocumentElement';\nimport getComputedStyle from '../dom-utils/getComputedStyle';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport getVariation from '../utils/getVariation';\nimport { round } from '../utils/math';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type RoundOffsets = (\n offsets: $Shape<{ x: number, y: number, centerOffset: number }>\n) => Offsets;\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n gpuAcceleration: boolean,\n adaptive: boolean,\n roundOffsets?: boolean | RoundOffsets,\n};\n\nconst unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto',\n};\n\n// Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\nfunction roundOffsetsByDPR({ x, y }, win: Window): Offsets {\n const dpr = win.devicePixelRatio || 1;\n\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0,\n };\n}\n\nexport function mapToStyles({\n popper,\n popperRect,\n placement,\n variation,\n offsets,\n position,\n gpuAcceleration,\n adaptive,\n roundOffsets,\n isFixed,\n}: {\n popper: HTMLElement,\n popperRect: Rect,\n placement: BasePlacement,\n variation: ?Variation,\n offsets: $Shape<{ x: number, y: number, centerOffset: number }>,\n position: PositioningStrategy,\n gpuAcceleration: boolean,\n adaptive: boolean,\n roundOffsets: boolean | RoundOffsets,\n isFixed: boolean,\n}) {\n let { x = 0, y = 0 } = offsets;\n\n ({ x, y } =\n typeof roundOffsets === 'function' ? roundOffsets({ x, y }) : { x, y });\n\n const hasX = offsets.hasOwnProperty('x');\n const hasY = offsets.hasOwnProperty('y');\n\n let sideX: string = left;\n let sideY: string = top;\n\n const win: Window = window;\n\n if (adaptive) {\n let offsetParent = getOffsetParent(popper);\n let heightProp = 'clientHeight';\n let widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (\n getComputedStyle(offsetParent).position !== 'static' &&\n position === 'absolute'\n ) {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n }\n\n // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n offsetParent = (offsetParent: Element);\n\n if (\n placement === top ||\n ((placement === left || placement === right) && variation === end)\n ) {\n sideY = bottom;\n const offsetY =\n isFixed && offsetParent === win && win.visualViewport\n ? win.visualViewport.height\n : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (\n placement === left ||\n ((placement === top || placement === bottom) && variation === end)\n ) {\n sideX = right;\n const offsetX =\n isFixed && offsetParent === win && win.visualViewport\n ? win.visualViewport.width\n : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n const commonStyles = {\n position,\n ...(adaptive && unsetSides),\n };\n\n ({ x, y } =\n roundOffsets === true\n ? roundOffsetsByDPR({ x, y }, getWindow(popper))\n : { x, y });\n\n if (gpuAcceleration) {\n return {\n ...commonStyles,\n [sideY]: hasY ? '0' : '',\n [sideX]: hasX ? '0' : '',\n // Layer acceleration can disable subpixel rendering which causes slightly\n // blurry text on low PPI displays, so we want to use 2D transforms\n // instead\n transform:\n (win.devicePixelRatio || 1) <= 1\n ? `translate(${x}px, ${y}px)`\n : `translate3d(${x}px, ${y}px, 0)`,\n };\n }\n\n return {\n ...commonStyles,\n [sideY]: hasY ? `${y}px` : '',\n [sideX]: hasX ? `${x}px` : '',\n transform: '',\n };\n}\n\nfunction computeStyles({ state, options }: ModifierArguments) {\n const {\n gpuAcceleration = true,\n adaptive = true,\n // defaults to use builtin `roundOffsetsByDPR`\n roundOffsets = true,\n } = options;\n\n const commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration,\n isFixed: state.options.strategy === 'fixed',\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = {\n ...state.styles.popper,\n ...mapToStyles({\n ...commonStyles,\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive,\n roundOffsets,\n }),\n };\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = {\n ...state.styles.arrow,\n ...mapToStyles({\n ...commonStyles,\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets,\n }),\n };\n }\n\n state.attributes.popper = {\n ...state.attributes.popper,\n 'data-popper-placement': state.placement,\n };\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type ComputeStylesModifier = Modifier<'computeStyles', Options>;\nexport default ({\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {},\n}: ComputeStylesModifier);\n","// @flow\nimport type { Modifier, ModifierArguments } from '../types';\nimport getNodeName from '../dom-utils/getNodeName';\nimport { isHTMLElement } from '../dom-utils/instanceOf';\n\n// This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles({ state }: ModifierArguments<{||}>) {\n Object.keys(state.elements).forEach((name) => {\n const style = state.styles[name] || {};\n\n const attributes = state.attributes[name] || {};\n const element = state.elements[name];\n\n // arrow is optional + virtual elements\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n Object.assign(element.style, style);\n\n Object.keys(attributes).forEach((name) => {\n const value = attributes[name];\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect({ state }: ModifierArguments<{||}>) {\n const initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0',\n },\n arrow: {\n position: 'absolute',\n },\n reference: {},\n };\n\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return () => {\n Object.keys(state.elements).forEach((name) => {\n const element = state.elements[name];\n const attributes = state.attributes[name] || {};\n\n const styleProperties = Object.keys(\n state.styles.hasOwnProperty(name)\n ? state.styles[name]\n : initialStyles[name]\n );\n\n // Set all values to an empty string to unset them\n const style = styleProperties.reduce((style, property) => {\n style[property] = '';\n return style;\n }, {});\n\n // arrow is optional + virtual elements\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n\n Object.keys(attributes).forEach((attribute) => {\n element.removeAttribute(attribute);\n });\n });\n };\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type ApplyStylesModifier = Modifier<'applyStyles', {||}>;\nexport default ({\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect,\n requires: ['computeStyles'],\n}: ApplyStylesModifier);\n","// @flow\nimport type { Placement } from '../enums';\nimport type { ModifierArguments, Modifier, Rect, Offsets } from '../types';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport { top, left, right, placements } from '../enums';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type OffsetsFunction = ({\n popper: Rect,\n reference: Rect,\n placement: Placement,\n}) => [?number, ?number];\n\ntype Offset = OffsetsFunction | [?number, ?number];\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n offset: Offset,\n};\n\nexport function distanceAndSkiddingToXY(\n placement: Placement,\n rects: { popper: Rect, reference: Rect },\n offset: Offset\n): Offsets {\n const basePlacement = getBasePlacement(placement);\n const invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n let [skidding, distance] =\n typeof offset === 'function'\n ? offset({\n ...rects,\n placement,\n })\n : offset;\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n\n return [left, right].indexOf(basePlacement) >= 0\n ? { x: distance, y: skidding }\n : { x: skidding, y: distance };\n}\n\nfunction offset({ state, options, name }: ModifierArguments) {\n const { offset = [0, 0] } = options;\n\n const data = placements.reduce((acc, placement) => {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n\n const { x, y } = data[state.placement];\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type OffsetModifier = Modifier<'offset', Options>;\nexport default ({\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset,\n}: OffsetModifier);\n","// @flow\nimport type { Placement } from '../enums';\n\nconst hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n\nexport default function getOppositePlacement(placement: Placement): Placement {\n return (placement.replace(\n /left|right|bottom|top/g,\n matched => hash[matched]\n ): any);\n}\n","// @flow\nimport type { Placement } from '../enums';\n\nconst hash = { start: 'end', end: 'start' };\n\nexport default function getOppositeVariationPlacement(\n placement: Placement\n): Placement {\n return (placement.replace(/start|end/g, matched => hash[matched]): any);\n}\n","// @flow\nimport type { State, Padding } from '../types';\nimport type {\n Placement,\n ComputedPlacement,\n Boundary,\n RootBoundary,\n} from '../enums';\nimport getVariation from './getVariation';\nimport {\n variationPlacements,\n basePlacements,\n placements as allPlacements,\n} from '../enums';\nimport detectOverflow from './detectOverflow';\nimport getBasePlacement from './getBasePlacement';\n\ntype Options = {\n placement: Placement,\n padding: Padding,\n boundary: Boundary,\n rootBoundary: RootBoundary,\n flipVariations: boolean,\n allowedAutoPlacements?: Array,\n};\n\ntype OverflowsMap = { [ComputedPlacement]: number };\n\nexport default function computeAutoPlacement(\n state: $Shape,\n options: Options = {}\n): Array {\n const {\n placement,\n boundary,\n rootBoundary,\n padding,\n flipVariations,\n allowedAutoPlacements = allPlacements,\n } = options;\n\n const variation = getVariation(placement);\n\n const placements = variation\n ? flipVariations\n ? variationPlacements\n : variationPlacements.filter(\n (placement) => getVariation(placement) === variation\n )\n : basePlacements;\n\n let allowedPlacements = placements.filter(\n (placement) => allowedAutoPlacements.indexOf(placement) >= 0\n );\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n }\n\n // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n const overflows: OverflowsMap = allowedPlacements.reduce((acc, placement) => {\n acc[placement] = detectOverflow(state, {\n placement,\n boundary,\n rootBoundary,\n padding,\n })[getBasePlacement(placement)];\n\n return acc;\n }, {});\n\n return Object.keys(overflows).sort((a, b) => overflows[a] - overflows[b]);\n}\n","// @flow\nimport type { Placement, Boundary, RootBoundary } from '../enums';\nimport type { ModifierArguments, Modifier, Padding } from '../types';\nimport getOppositePlacement from '../utils/getOppositePlacement';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport getOppositeVariationPlacement from '../utils/getOppositeVariationPlacement';\nimport detectOverflow from '../utils/detectOverflow';\nimport computeAutoPlacement from '../utils/computeAutoPlacement';\nimport { bottom, top, start, right, left, auto } from '../enums';\nimport getVariation from '../utils/getVariation';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n mainAxis: boolean,\n altAxis: boolean,\n fallbackPlacements: Array,\n padding: Padding,\n boundary: Boundary,\n rootBoundary: RootBoundary,\n altBoundary: boolean,\n flipVariations: boolean,\n allowedAutoPlacements: Array,\n};\n\nfunction getExpandedFallbackPlacements(placement: Placement): Array {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n const oppositePlacement = getOppositePlacement(placement);\n\n return [\n getOppositeVariationPlacement(placement),\n oppositePlacement,\n getOppositeVariationPlacement(oppositePlacement),\n ];\n}\n\nfunction flip({ state, options, name }: ModifierArguments) {\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n const {\n mainAxis: checkMainAxis = true,\n altAxis: checkAltAxis = true,\n fallbackPlacements: specifiedFallbackPlacements,\n padding,\n boundary,\n rootBoundary,\n altBoundary,\n flipVariations = true,\n allowedAutoPlacements,\n } = options;\n\n const preferredPlacement = state.options.placement;\n const basePlacement = getBasePlacement(preferredPlacement);\n const isBasePlacement = basePlacement === preferredPlacement;\n\n const fallbackPlacements =\n specifiedFallbackPlacements ||\n (isBasePlacement || !flipVariations\n ? [getOppositePlacement(preferredPlacement)]\n : getExpandedFallbackPlacements(preferredPlacement));\n\n const placements = [preferredPlacement, ...fallbackPlacements].reduce(\n (acc, placement) => {\n return acc.concat(\n getBasePlacement(placement) === auto\n ? computeAutoPlacement(state, {\n placement,\n boundary,\n rootBoundary,\n padding,\n flipVariations,\n allowedAutoPlacements,\n })\n : placement\n );\n },\n []\n );\n\n const referenceRect = state.rects.reference;\n const popperRect = state.rects.popper;\n\n const checksMap = new Map();\n let makeFallbackChecks = true;\n let firstFittingPlacement = placements[0];\n\n for (let i = 0; i < placements.length; i++) {\n const placement = placements[i];\n const basePlacement = getBasePlacement(placement);\n const isStartVariation = getVariation(placement) === start;\n const isVertical = [top, bottom].indexOf(basePlacement) >= 0;\n const len = isVertical ? 'width' : 'height';\n\n const overflow = detectOverflow(state, {\n placement,\n boundary,\n rootBoundary,\n altBoundary,\n padding,\n });\n\n let mainVariationSide: any = isVertical\n ? isStartVariation\n ? right\n : left\n : isStartVariation\n ? bottom\n : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n const altVariationSide: any = getOppositePlacement(mainVariationSide);\n\n const checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(\n overflow[mainVariationSide] <= 0,\n overflow[altVariationSide] <= 0\n );\n }\n\n if (checks.every((check) => check)) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n const numberOfChecks = flipVariations ? 3 : 1;\n\n for (let i = numberOfChecks; i > 0; i--) {\n const fittingPlacement = placements.find((placement) => {\n const checks = checksMap.get(placement);\n if (checks) {\n return checks.slice(0, i).every((check) => check);\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n break;\n }\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type FlipModifier = Modifier<'flip', Options>;\nexport default ({\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: { _skip: false },\n}: FlipModifier);\n","// @flow\nimport { max as mathMax, min as mathMin } from './math';\n\nexport function within(min: number, value: number, max: number): number {\n return mathMax(min, mathMin(value, max));\n}\n\nexport function withinMaxClamp(min: number, value: number, max: number) {\n const v = within(min, value, max);\n return v > max ? max : v;\n}\n","// @flow\nimport { top, left, right, bottom, start } from '../enums';\nimport type { Placement, Boundary, RootBoundary } from '../enums';\nimport type { Rect, ModifierArguments, Modifier, Padding } from '../types';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport getMainAxisFromPlacement from '../utils/getMainAxisFromPlacement';\nimport getAltAxis from '../utils/getAltAxis';\nimport { within, withinMaxClamp } from '../utils/within';\nimport getLayoutRect from '../dom-utils/getLayoutRect';\nimport getOffsetParent from '../dom-utils/getOffsetParent';\nimport detectOverflow from '../utils/detectOverflow';\nimport getVariation from '../utils/getVariation';\nimport getFreshSideObject from '../utils/getFreshSideObject';\nimport { min as mathMin, max as mathMax } from '../utils/math';\n\ntype TetherOffset =\n | (({\n popper: Rect,\n reference: Rect,\n placement: Placement,\n }) => number | { mainAxis: number, altAxis: number })\n | number\n | { mainAxis: number, altAxis: number };\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n /* Prevents boundaries overflow on the main axis */\n mainAxis: boolean,\n /* Prevents boundaries overflow on the alternate axis */\n altAxis: boolean,\n /* The area to check the popper is overflowing in */\n boundary: Boundary,\n /* If the popper is not overflowing the main area, fallback to this one */\n rootBoundary: RootBoundary,\n /* Use the reference's \"clippingParents\" boundary context */\n altBoundary: boolean,\n /**\n * Allows the popper to overflow from its boundaries to keep it near its\n * reference element\n */\n tether: boolean,\n /* Offsets when the `tether` option should activate */\n tetherOffset: TetherOffset,\n /* Sets a padding to the provided boundary */\n padding: Padding,\n};\n\nfunction preventOverflow({ state, options, name }: ModifierArguments) {\n const {\n mainAxis: checkMainAxis = true,\n altAxis: checkAltAxis = false,\n boundary,\n rootBoundary,\n altBoundary,\n padding,\n tether = true,\n tetherOffset = 0,\n } = options;\n\n const overflow = detectOverflow(state, {\n boundary,\n rootBoundary,\n padding,\n altBoundary,\n });\n const basePlacement = getBasePlacement(state.placement);\n const variation = getVariation(state.placement);\n const isBasePlacement = !variation;\n const mainAxis = getMainAxisFromPlacement(basePlacement);\n const altAxis = getAltAxis(mainAxis);\n const popperOffsets = state.modifiersData.popperOffsets;\n const referenceRect = state.rects.reference;\n const popperRect = state.rects.popper;\n const tetherOffsetValue =\n typeof tetherOffset === 'function'\n ? tetherOffset({\n ...state.rects,\n placement: state.placement,\n })\n : tetherOffset;\n const normalizedTetherOffsetValue =\n typeof tetherOffsetValue === 'number'\n ? { mainAxis: tetherOffsetValue, altAxis: tetherOffsetValue }\n : { mainAxis: 0, altAxis: 0, ...tetherOffsetValue };\n const offsetModifierState = state.modifiersData.offset\n ? state.modifiersData.offset[state.placement]\n : null;\n\n const data = { x: 0, y: 0 };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n const mainSide = mainAxis === 'y' ? top : left;\n const altSide = mainAxis === 'y' ? bottom : right;\n const len = mainAxis === 'y' ? 'height' : 'width';\n const offset = popperOffsets[mainAxis];\n\n const min = offset + overflow[mainSide];\n const max = offset - overflow[altSide];\n\n const additive = tether ? -popperRect[len] / 2 : 0;\n\n const minLen = variation === start ? referenceRect[len] : popperRect[len];\n const maxLen = variation === start ? -popperRect[len] : -referenceRect[len];\n\n // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n const arrowElement = state.elements.arrow;\n const arrowRect =\n tether && arrowElement\n ? getLayoutRect(arrowElement)\n : { width: 0, height: 0 };\n const arrowPaddingObject = state.modifiersData['arrow#persistent']\n ? state.modifiersData['arrow#persistent'].padding\n : getFreshSideObject();\n const arrowPaddingMin = arrowPaddingObject[mainSide];\n const arrowPaddingMax = arrowPaddingObject[altSide];\n\n // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n const arrowLen = within(0, referenceRect[len], arrowRect[len]);\n\n const minOffset = isBasePlacement\n ? referenceRect[len] / 2 -\n additive -\n arrowLen -\n arrowPaddingMin -\n normalizedTetherOffsetValue.mainAxis\n : minLen -\n arrowLen -\n arrowPaddingMin -\n normalizedTetherOffsetValue.mainAxis;\n const maxOffset = isBasePlacement\n ? -referenceRect[len] / 2 +\n additive +\n arrowLen +\n arrowPaddingMax +\n normalizedTetherOffsetValue.mainAxis\n : maxLen +\n arrowLen +\n arrowPaddingMax +\n normalizedTetherOffsetValue.mainAxis;\n\n const arrowOffsetParent =\n state.elements.arrow && getOffsetParent(state.elements.arrow);\n const clientOffset = arrowOffsetParent\n ? mainAxis === 'y'\n ? arrowOffsetParent.clientTop || 0\n : arrowOffsetParent.clientLeft || 0\n : 0;\n\n const offsetModifierValue = offsetModifierState?.[mainAxis] ?? 0;\n const tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n const tetherMax = offset + maxOffset - offsetModifierValue;\n\n const preventedOffset = within(\n tether ? mathMin(min, tetherMin) : min,\n offset,\n tether ? mathMax(max, tetherMax) : max\n );\n\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n const mainSide = mainAxis === 'x' ? top : left;\n const altSide = mainAxis === 'x' ? bottom : right;\n const offset = popperOffsets[altAxis];\n\n const len = altAxis === 'y' ? 'height' : 'width';\n\n const min = offset + overflow[mainSide];\n const max = offset - overflow[altSide];\n\n const isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n const offsetModifierValue = offsetModifierState?.[altAxis] ?? 0;\n const tetherMin = isOriginSide\n ? min\n : offset -\n referenceRect[len] -\n popperRect[len] -\n offsetModifierValue +\n normalizedTetherOffsetValue.altAxis;\n const tetherMax = isOriginSide\n ? offset +\n referenceRect[len] +\n popperRect[len] -\n offsetModifierValue -\n normalizedTetherOffsetValue.altAxis\n : max;\n\n const preventedOffset =\n tether && isOriginSide\n ? withinMaxClamp(tetherMin, offset, tetherMax)\n : within(tether ? tetherMin : min, offset, tether ? tetherMax : max);\n\n popperOffsets[altAxis] = preventedOffset;\n data[altAxis] = preventedOffset - offset;\n }\n\n state.modifiersData[name] = data;\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type PreventOverflowModifier = Modifier<'preventOverflow', Options>;\nexport default ({\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset'],\n}: PreventOverflowModifier);\n","// @flow\n\nexport default function getAltAxis(axis: 'x' | 'y'): 'x' | 'y' {\n return axis === 'x' ? 'y' : 'x';\n}\n","// @flow\nimport type { Modifier, ModifierArguments, Padding, Rect } from '../types';\nimport type { Placement } from '../enums';\nimport getBasePlacement from '../utils/getBasePlacement';\nimport getLayoutRect from '../dom-utils/getLayoutRect';\nimport contains from '../dom-utils/contains';\nimport getOffsetParent from '../dom-utils/getOffsetParent';\nimport getMainAxisFromPlacement from '../utils/getMainAxisFromPlacement';\nimport { within } from '../utils/within';\nimport mergePaddingObject from '../utils/mergePaddingObject';\nimport expandToHashMap from '../utils/expandToHashMap';\nimport { left, right, basePlacements, top, bottom } from '../enums';\n\n// eslint-disable-next-line import/no-unused-modules\nexport type Options = {\n element: HTMLElement | string | null,\n padding:\n | Padding\n | (({|\n popper: Rect,\n reference: Rect,\n placement: Placement,\n |}) => Padding),\n};\n\nconst toPaddingObject = (padding, state) => {\n padding =\n typeof padding === 'function'\n ? padding({ ...state.rects, placement: state.placement })\n : padding;\n\n return mergePaddingObject(\n typeof padding !== 'number'\n ? padding\n : expandToHashMap(padding, basePlacements)\n );\n};\n\nfunction arrow({ state, name, options }: ModifierArguments) {\n const arrowElement = state.elements.arrow;\n const popperOffsets = state.modifiersData.popperOffsets;\n const basePlacement = getBasePlacement(state.placement);\n const axis = getMainAxisFromPlacement(basePlacement);\n const isVertical = [left, right].indexOf(basePlacement) >= 0;\n const len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n const paddingObject = toPaddingObject(options.padding, state);\n const arrowRect = getLayoutRect(arrowElement);\n const minProp = axis === 'y' ? top : left;\n const maxProp = axis === 'y' ? bottom : right;\n\n const endDiff =\n state.rects.reference[len] +\n state.rects.reference[axis] -\n popperOffsets[axis] -\n state.rects.popper[len];\n const startDiff = popperOffsets[axis] - state.rects.reference[axis];\n\n const arrowOffsetParent = getOffsetParent(arrowElement);\n const clientSize = arrowOffsetParent\n ? axis === 'y'\n ? arrowOffsetParent.clientHeight || 0\n : arrowOffsetParent.clientWidth || 0\n : 0;\n\n const centerToReference = endDiff / 2 - startDiff / 2;\n\n // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n const min = paddingObject[minProp];\n const max = clientSize - arrowRect[len] - paddingObject[maxProp];\n const center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n const offset = within(min, center, max);\n\n // Prevents breaking syntax highlighting...\n const axisProp: string = axis;\n state.modifiersData[name] = {\n [axisProp]: offset,\n centerOffset: offset - center,\n };\n}\n\nfunction effect({ state, options }: ModifierArguments) {\n let { element: arrowElement = '[data-popper-arrow]' } = options;\n\n if (arrowElement == null) {\n return;\n }\n\n // CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n return;\n }\n\n state.elements.arrow = arrowElement;\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type ArrowModifier = Modifier<'arrow', Options>;\nexport default ({\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow'],\n}: ArrowModifier);\n","// @flow\nimport type {\n ModifierArguments,\n Modifier,\n Rect,\n SideObject,\n Offsets,\n} from '../types';\nimport { top, bottom, left, right } from '../enums';\nimport detectOverflow from '../utils/detectOverflow';\n\nfunction getSideOffsets(\n overflow: SideObject,\n rect: Rect,\n preventedOffsets: Offsets = { x: 0, y: 0 }\n): SideObject {\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x,\n };\n}\n\nfunction isAnySideFullyClipped(overflow: SideObject): boolean {\n return [top, right, bottom, left].some((side) => overflow[side] >= 0);\n}\n\nfunction hide({ state, name }: ModifierArguments<{||}>) {\n const referenceRect = state.rects.reference;\n const popperRect = state.rects.popper;\n const preventedOffsets = state.modifiersData.preventOverflow;\n\n const referenceOverflow = detectOverflow(state, {\n elementContext: 'reference',\n });\n const popperAltOverflow = detectOverflow(state, {\n altBoundary: true,\n });\n\n const referenceClippingOffsets = getSideOffsets(\n referenceOverflow,\n referenceRect\n );\n const popperEscapeOffsets = getSideOffsets(\n popperAltOverflow,\n popperRect,\n preventedOffsets\n );\n\n const isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n const hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n\n state.modifiersData[name] = {\n referenceClippingOffsets,\n popperEscapeOffsets,\n isReferenceHidden,\n hasPopperEscaped,\n };\n\n state.attributes.popper = {\n ...state.attributes.popper,\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped,\n };\n}\n\n// eslint-disable-next-line import/no-unused-modules\nexport type HideModifier = Modifier<'hide', {||}>;\nexport default ({\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide,\n}: HideModifier);\n","// @flow\nimport { popperGenerator, detectOverflow } from './createPopper';\n\nimport eventListeners from './modifiers/eventListeners';\nimport popperOffsets from './modifiers/popperOffsets';\nimport computeStyles from './modifiers/computeStyles';\nimport applyStyles from './modifiers/applyStyles';\n\nexport type * from './types';\n\nconst defaultModifiers = [\n eventListeners,\n popperOffsets,\n computeStyles,\n applyStyles,\n];\n\nconst createPopper = popperGenerator({ defaultModifiers });\n\n// eslint-disable-next-line import/no-unused-modules\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };\n","// @flow\nimport { popperGenerator, detectOverflow } from './createPopper';\n\nimport eventListeners from './modifiers/eventListeners';\nimport popperOffsets from './modifiers/popperOffsets';\nimport computeStyles from './modifiers/computeStyles';\nimport applyStyles from './modifiers/applyStyles';\nimport offset from './modifiers/offset';\nimport flip from './modifiers/flip';\nimport preventOverflow from './modifiers/preventOverflow';\nimport arrow from './modifiers/arrow';\nimport hide from './modifiers/hide';\n\nexport type * from './types';\n\nconst defaultModifiers = [\n eventListeners,\n popperOffsets,\n computeStyles,\n applyStyles,\n offset,\n flip,\n preventOverflow,\n arrow,\n hide,\n];\n\nconst createPopper = popperGenerator({ defaultModifiers });\n\n// eslint-disable-next-line import/no-unused-modules\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };\n// eslint-disable-next-line import/no-unused-modules\nexport { createPopper as createPopperLite } from './popper-lite';\n// eslint-disable-next-line import/no-unused-modules\nexport * from './modifiers';\n"],"names":["getWindow","node","window","toString","ownerDocument","defaultView","isElement","Element","isHTMLElement","HTMLElement","isShadowRoot","ShadowRoot","max","Math","min","round","getUAString","uaData","navigator","userAgentData","brands","Array","isArray","map","item","brand","version","join","userAgent","isLayoutViewport","test","getBoundingClientRect","element","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","offsetWidth","width","offsetHeight","height","visualViewport","addVisualOffsets","x","left","offsetLeft","y","top","offsetTop","right","bottom","getWindowScroll","win","scrollLeft","pageXOffset","scrollTop","pageYOffset","getNodeName","nodeName","toLowerCase","getDocumentElement","document","documentElement","getWindowScrollBarX","getComputedStyle","isScrollParent","overflow","overflowX","overflowY","getCompositeRect","elementOrVirtualElement","offsetParent","isFixed","isOffsetParentAnElement","offsetParentIsScaled","rect","isElementScaled","scroll","offsets","clientLeft","clientTop","getLayoutRect","abs","getParentNode","assignedSlot","parentNode","host","getScrollParent","indexOf","body","listScrollParents","list","scrollParent","isBody","_element$ownerDocumen","target","concat","updatedList","isTableElement","getTrueOffsetParent","position","getOffsetParent","isFirefox","currentNode","css","transform","perspective","contain","willChange","filter","getContainingBlock","auto","basePlacements","start","end","viewport","popper","variationPlacements","reduce","acc","placement","placements","modifierPhases","order","modifiers","Map","visited","Set","result","sort","modifier","add","name","requires","requiresIfExists","forEach","dep","has","depModifier","get","push","set","contains","parent","child","rootNode","getRootNode","next","isSameNode","rectToClientRect","getClientRectFromMixedType","clippingParent","strategy","html","clientWidth","clientHeight","layoutViewport","getViewportRect","getInnerBoundingClientRect","winScroll","scrollWidth","scrollHeight","direction","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","getBasePlacement","split","getVariation","getMainAxisFromPlacement","computeOffsets","reference","basePlacement","variation","commonX","commonY","mainAxis","len","mergePaddingObject","paddingObject","expandToHashMap","value","keys","hashMap","key","detectOverflow","state","options","elementContext","altBoundary","padding","altContext","popperRect","rects","elements","clippingClientRect","contextElement","referenceClientRect","popperOffsets","popperClientRect","elementClientRect","overflowOffsets","offsetData","modifiersData","offset","Object","multiply","axis","DEFAULT_OPTIONS","areValidElements","args","some","popperGenerator","generatorOptions","defaultModifiers","defaultOptions","fn","pending","orderedModifiers","attributes","styles","effectCleanupFns","isDestroyed","instance","setOptions","setOptionsAction","cleanupModifierEffects","scrollParents","merged","phase","orderModifiers","current","existing","data","m","enabled","effect","cleanupFn","noopFn","update","forceUpdate","reset","index","length","Promise","resolve","then","undefined","destroy","onFirstUpdate","passive","resize","addEventListener","removeEventListener","unsetSides","mapToStyles","gpuAcceleration","adaptive","roundOffsets","hasX","hasOwnProperty","hasY","sideX","sideY","heightProp","widthProp","commonStyles","dpr","devicePixelRatio","roundOffsetsByDPR","arrow","style","assign","removeAttribute","setAttribute","initialStyles","margin","property","attribute","invertDistance","skidding","distance","distanceAndSkiddingToXY","hash","getOppositePlacement","replace","matched","getOppositeVariationPlacement","computeAutoPlacement","flipVariations","allowedAutoPlacements","allPlacements","allowedPlacements","overflows","a","b","_skip","checkMainAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","i","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","every","check","fittingPlacement","find","slice","within","mathMax","mathMin","tether","tetherOffset","isBasePlacement","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","mainSide","altSide","additive","minLen","maxLen","arrowElement","arrowRect","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","arrowOffsetParent","clientOffset","offsetModifierValue","tetherMax","preventedOffset","isOriginSide","tetherMin","v","withinMaxClamp","toPaddingObject","minProp","maxProp","endDiff","startDiff","clientSize","centerToReference","center","axisProp","centerOffset","querySelector","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","createPopper","eventListeners","computeStyles","applyStyles","flip","hide"],"mappings":"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"} diff --git a/src/agenda_culturel/static/location_field/js/form.js b/src/agenda_culturel/static/location_field/js/form.js index 85f9cc3..b6b48c5 100644 --- a/src/agenda_culturel/static/location_field/js/form.js +++ b/src/agenda_culturel/static/location_field/js/form.js @@ -111,7 +111,7 @@ var SequentialLoader = function() { var mapOptions = self._getMapOptions(), map = self._getMap(mapOptions); - var marker = self._getMarker(map, mapOptions.center); + var marker = self._getMarker(map, mapOptions.center); // fix issue w/ marker not appearing if (self.options.provider == 'google' && self.options.fixMarker) @@ -469,7 +469,7 @@ var SequentialLoader = function() { else el.keyup(onchange); }); - + if (this.options.inputField.val() === '') { var values = basedFields.map(function() { var value = $(this).val(); diff --git a/src/agenda_culturel/static/pico/_functions.scss b/src/agenda_culturel/static/pico/_functions.scss index 160870c..eb4e323 100644 --- a/src/agenda_culturel/static/pico/_functions.scss +++ b/src/agenda_culturel/static/pico/_functions.scss @@ -1,4 +1,4 @@ // Output color in RGB format @function to-rgb($color) { @return unquote("rgb(#{red($color)}, #{green($color)}, #{blue($color)})"); -} \ No newline at end of file +} diff --git a/src/agenda_culturel/static/pico/_variables.scss b/src/agenda_culturel/static/pico/_variables.scss index e2f653e..df9a726 100644 --- a/src/agenda_culturel/static/pico/_variables.scss +++ b/src/agenda_culturel/static/pico/_variables.scss @@ -10,7 +10,7 @@ $enable-semantic-container: false !default; // Enable .container and .container-fluid $enable-class-container: true !default; -// Enable a centered viewport for
,
,
{% csrf_token %} - +
- +
{% include "agenda_culturel/single-event/event-single-inc.html" with event=event onlyedit=1 permalink=1 h=2 %} @@ -62,15 +62,15 @@ {% endif %} {% endwith %} - +
- +
- +

Édition des méta-informations

{% if event.moderated_date %} -

Cet événement a déjà été modéré {% if event.moderation_by_user %}par {{ event.moderation_by_user.username }} {% endif %}le {{ event.moderated_date }}. +

Cet événement a déjà été modéré {% if event.moderation_by_user %}par {{ event.moderation_by_user.username }} {% endif %}le {{ event.moderated_date }}. Vous pouvez bien sûr modifier de nouveau ces méta-informations en utilisant le formulaire ci-après.

@@ -133,4 +133,4 @@ -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/event_import.html b/src/agenda_culturel/templates/agenda_culturel/event_import.html index a034020..06d8866 100644 --- a/src/agenda_culturel/templates/agenda_culturel/event_import.html +++ b/src/agenda_culturel/templates/agenda_culturel/event_import.html @@ -22,16 +22,16 @@ {% include "agenda_culturel/static_content.html" with name="import_proxy" url_path=local_url %}
-

On peut importer automatiquement un événement depuis d'autres sites internet (principalement depuis Facebook pour +

On peut importer automatiquement un événement depuis d'autres sites internet (principalement depuis Facebook pour l'instant), à partir de l'adresse (url) de la page de l'événement.

Importer un événement depuis son url Importer des événements depuis leurs urls -

Si l'événement n'est pas disponible en ligne, ou si l'import ne fonctionne pas, on peut +

Si l'événement n'est pas disponible en ligne, ou si l'import ne fonctionne pas, on peut ajouter un événement en utilisant un formulaire complet.

Remplir le formulaire d'événement
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/event_next_error_message.html b/src/agenda_culturel/templates/agenda_culturel/event_next_error_message.html index e6574e6..f95e98c 100644 --- a/src/agenda_culturel/templates/agenda_culturel/event_next_error_message.html +++ b/src/agenda_culturel/templates/agenda_culturel/event_next_error_message.html @@ -16,7 +16,7 @@

Erreur pendant la recherche d'événement suivant

{% if object %} -

Nous n'avons pas été capable de trouver un événement à modérer après +

Nous n'avons pas été capable de trouver un événement à modérer après l'événement {{ object.title }}. Peut-être est-ce le dernier événement avant la fin du monde ?

diff --git a/src/agenda_culturel/templates/agenda_culturel/filter-inc.html b/src/agenda_culturel/templates/agenda_culturel/filter-inc.html index c4eebc5..a532aeb 100644 --- a/src/agenda_culturel/templates/agenda_culturel/filter-inc.html +++ b/src/agenda_culturel/templates/agenda_culturel/filter-inc.html @@ -36,7 +36,7 @@ {% if filter.is_resetable %} {% picto_from_name "x-circle" %} {% endif %} - +
@@ -95,8 +95,8 @@ const position = document.querySelector('#id_position'); const choices_position = new Choices(position, - { - shouldSort: false, + { + shouldSort: false, } ); diff --git a/src/agenda_culturel/templates/agenda_culturel/fix_duplicate.html b/src/agenda_culturel/templates/agenda_culturel/fix_duplicate.html index b8cd8e8..a957eb8 100644 --- a/src/agenda_culturel/templates/agenda_culturel/fix_duplicate.html +++ b/src/agenda_culturel/templates/agenda_culturel/fix_duplicate.html @@ -23,8 +23,8 @@ Les éléments qui diffèrent ont été dupliqués et mis en évidence.

{% endif %} -

Choisissez dans la liste ci-dessous l'action que vous voulez réaliser. À noter que - s'il y a plus de deux événements, toutes les possibilités ne sont pas disponibles, et +

Choisissez dans la liste ci-dessous l'action que vous voulez réaliser. À noter que + s'il y a plus de deux événements, toutes les possibilités ne sont pas disponibles, et il vous faudra peut-être réaliser certaines opérations à la main.

{% csrf_token %} @@ -42,4 +42,3 @@ {% include "agenda_culturel/duplicate-info-inc.html" with object=object %} {% endblock %} - diff --git a/src/agenda_culturel/templates/agenda_culturel/forms/div_group.html b/src/agenda_culturel/templates/agenda_culturel/forms/div_group.html index 43d7257..bf2afc9 100644 --- a/src/agenda_culturel/templates/agenda_culturel/forms/div_group.html +++ b/src/agenda_culturel/templates/agenda_culturel/forms/div_group.html @@ -7,9 +7,9 @@
{% if group.maskable %} @@ -64,4 +64,4 @@ } }); }) - \ No newline at end of file + diff --git a/src/agenda_culturel/templates/agenda_culturel/import.html b/src/agenda_culturel/templates/agenda_culturel/import.html index a107ea2..e4f1944 100644 --- a/src/agenda_culturel/templates/agenda_culturel/import.html +++ b/src/agenda_culturel/templates/agenda_culturel/import.html @@ -27,7 +27,7 @@

Si tu as plein d'événements à ajouter, tu peux les ajouter par lots.

-

Si l'import automatique ne marche pas, ou si l'événement n'est pas en ligne, tu peux +

Si l'import automatique ne marche pas, ou si l'événement n'est pas en ligne, tu peux tout de même ajouter l'événement en le décrivant sur la page d'ajout d'événement.

diff --git a/src/agenda_culturel/templates/agenda_culturel/import_set.html b/src/agenda_culturel/templates/agenda_culturel/import_set.html index 1173bbf..45504df 100644 --- a/src/agenda_culturel/templates/agenda_culturel/import_set.html +++ b/src/agenda_culturel/templates/agenda_culturel/import_set.html @@ -19,7 +19,7 @@ {% include "agenda_culturel/static_content.html" with name="import_set" url_path=local_url %} -

Si l'import automatique ne marche pas, ou si l'événement n'est pas en ligne, vous pouvez +

Si l'import automatique ne marche pas, ou si l'événement n'est pas en ligne, vous pouvez tout de même ajouter l'événement en le décrivant sur la page d'ajout d'événement.

diff --git a/src/agenda_culturel/templates/agenda_culturel/imports.html b/src/agenda_culturel/templates/agenda_culturel/imports.html index c8d0730..82bcb9c 100644 --- a/src/agenda_culturel/templates/agenda_culturel/imports.html +++ b/src/agenda_culturel/templates/agenda_culturel/imports.html @@ -37,4 +37,4 @@ {% include "agenda_culturel/side-nav.html" with current="imports" %}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/merge_duplicate.html b/src/agenda_culturel/templates/agenda_culturel/merge_duplicate.html index 2bcdffc..5ee0d04 100644 --- a/src/agenda_culturel/templates/agenda_culturel/merge_duplicate.html +++ b/src/agenda_culturel/templates/agenda_culturel/merge_duplicate.html @@ -28,4 +28,3 @@ {% endblock %} - diff --git a/src/agenda_culturel/templates/agenda_culturel/message_confirm_delete.html b/src/agenda_culturel/templates/agenda_culturel/message_confirm_delete.html index 4a7b087..798a24a 100644 --- a/src/agenda_culturel/templates/agenda_culturel/message_confirm_delete.html +++ b/src/agenda_culturel/templates/agenda_culturel/message_confirm_delete.html @@ -13,7 +13,7 @@
{% csrf_token %}

Êtes-vous sûr·e de vouloir supprimer le message « {{ object.subject }} » de {{ object.name }} ({{ object.id }}) ?

{{ form }} - +
Annuler @@ -23,4 +23,4 @@ -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/message_create_form.html b/src/agenda_culturel/templates/agenda_culturel/message_create_form.html index d3acd2b..b3603bc 100644 --- a/src/agenda_culturel/templates/agenda_culturel/message_create_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/message_create_form.html @@ -24,7 +24,7 @@ Contact{% endif %}{% endblock %}{% endblock %}

{% if form.event %}Contact au sujet de l'événement « {{ form.event.title }} »{% else %} Contact{% endif %}

- + {% if not form.event %}
{% url 'contact' as local_url %} @@ -48,4 +48,4 @@ Contact{% endif %}{% endblock %}{% endblock %}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/message_moderation_form.html b/src/agenda_culturel/templates/agenda_culturel/message_moderation_form.html index f174443..799e274 100644 --- a/src/agenda_culturel/templates/agenda_culturel/message_moderation_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/message_moderation_form.html @@ -26,7 +26,7 @@ - +

Message « {{ object.subject }} »

  • Date : {{ object.date.date }} à {{ object.date.time }}
  • @@ -42,7 +42,7 @@
    {% if object.message_type == "from_contributor" or object.message_type == "from_contrib_no_msg" %}

    Ce message a été envoyé par une personne lors - de l'ajout d'un événement. + de l'ajout d'un événement. {% if object.closed %} En décochant fermé, vous modifiez manuellement son statut, et cela pourra entraîner l'envoi d'un message de notification lors de la modification future de l'événement associé.{% else %} @@ -60,4 +60,4 @@ {% include "agenda_culturel/side-nav.html" with current="messages" %}

-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/messages.html b/src/agenda_culturel/templates/agenda_culturel/messages.html index f27710a..95476b2 100644 --- a/src/agenda_culturel/templates/agenda_culturel/messages.html +++ b/src/agenda_culturel/templates/agenda_culturel/messages.html @@ -71,4 +71,4 @@ {% endif %}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/organisation_confirm_delete.html b/src/agenda_culturel/templates/agenda_culturel/organisation_confirm_delete.html index 235a479..ecd6090 100644 --- a/src/agenda_culturel/templates/agenda_culturel/organisation_confirm_delete.html +++ b/src/agenda_culturel/templates/agenda_culturel/organisation_confirm_delete.html @@ -16,10 +16,10 @@

Êtes-vous sûr·e de vouloir supprimer l'organisateur « {{ object.name }} ({{ object.pk }}) » ?

{{ form }} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/organisation_detail.html b/src/agenda_culturel/templates/agenda_culturel/organisation_detail.html index 1ca233e..1181a8b 100644 --- a/src/agenda_culturel/templates/agenda_culturel/organisation_detail.html +++ b/src/agenda_culturel/templates/agenda_culturel/organisation_detail.html @@ -24,7 +24,7 @@ -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/organisation_form.html b/src/agenda_culturel/templates/agenda_culturel/organisation_form.html index c358c5b..92a85c0 100644 --- a/src/agenda_culturel/templates/agenda_culturel/organisation_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/organisation_form.html @@ -40,4 +40,4 @@ const choices_places = new Choices(places, ); -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/organisation_list.html b/src/agenda_culturel/templates/agenda_culturel/organisation_list.html index 16f3f37..f9a0aac 100644 --- a/src/agenda_culturel/templates/agenda_culturel/organisation_list.html +++ b/src/agenda_culturel/templates/agenda_culturel/organisation_list.html @@ -50,7 +50,7 @@ {% endif %} {% endif %} - +
{% if organisation.organised_events.all|length > 1 %}

voir les {{ organisation.organised_events.all|length }} événements {% picto_from_name "chevron-right" %}

@@ -73,4 +73,4 @@ -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/page-activity.html b/src/agenda_culturel/templates/agenda_culturel/page-activity.html index 1ef5a23..83d0fda 100644 --- a/src/agenda_culturel/templates/agenda_culturel/page-activity.html +++ b/src/agenda_culturel/templates/agenda_culturel/page-activity.html @@ -36,4 +36,4 @@ {% include "agenda_culturel/side-nav.html" with current="activite" %}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/page-event.html b/src/agenda_culturel/templates/agenda_culturel/page-event.html index 3f564c5..205dc07 100644 --- a/src/agenda_culturel/templates/agenda_culturel/page-event.html +++ b/src/agenda_culturel/templates/agenda_culturel/page-event.html @@ -47,9 +47,9 @@
{{ step.timestamp }}
-
Message{% if not step.data.closed %} (ouvert){% endif %}{% if step.data.related_event and event != step.data.related_event %} sur - une autre version{% endif %} : - {{ step.data.subject|truncatechars:20 }} +
Message{% if not step.data.closed %} (ouvert){% endif %}{% if step.data.related_event and event != step.data.related_event %} sur + une autre version{% endif %} : + {{ step.data.subject|truncatechars:20 }} {% if step.data.user %} par {{ step.data.user }}{% else %}{% if step.data.name %} par {% if step.data.name %}{{ step.data.name }}{% if step.data.email %} ({{ step.data.email }}){% endif %}{% else %} {{ step.data.email }}{% endif %}{% endif %}{% endif %}
{{ step.data.message|safe }}
{% if step.data.comments %} @@ -93,14 +93,14 @@ {% endif %} {% endwith %} - + {% if event.other_versions and not event.other_versions.fixed %} {% with poss_dup=event.get_other_versions|only_allowed:user.is_authenticated %} {% if poss_dup|length > 0 %}

Possibles doublons

-

L'événement affiché pourrait être dupliqué sur l'agenda, et consultable dans +

L'événement affiché pourrait être dupliqué sur l'agenda, et consultable dans {% if poss_dup.count == 1 %} une autre version {% else %} @@ -143,4 +143,4 @@

-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/page-month.html b/src/agenda_culturel/templates/agenda_culturel/page-month.html index 7d5e226..2b2df6b 100644 --- a/src/agenda_culturel/templates/agenda_culturel/page-month.html +++ b/src/agenda_culturel/templates/agenda_culturel/page-month.html @@ -26,7 +26,7 @@ {% block when_parameters %}{{ filter.get_url }}{% endblock %} {% block content %} - + {% with cache_timeout=user.is_authenticated|yesno:"30,6000" %} {% cache cache_timeout month user.is_authenticated calendar.firstdate category filter.get_url %} @@ -52,9 +52,9 @@ {% if calendar.lastdate|not_before_first %}
{% if category %} - suivant + suivant {% else %} - suivant + suivant {% endif %} {% picto_from_name "chevron-right" %} @@ -90,7 +90,7 @@ {% with day.date|date:"Y-m-d" as daytag %} {% with "date-"|add:daytag as daytag %} - +
{% if day.is_today %} - + {% load static %} @@ -24,7 +24,7 @@ - + {% if debug %} {% else %} @@ -56,7 +56,7 @@ @@ -110,7 +110,7 @@ {% block content %}{% endblock %} - +
@@ -171,7 +171,7 @@ default: {} } - + - \ No newline at end of file + diff --git a/src/agenda_culturel/templates/agenda_culturel/paginator.html b/src/agenda_culturel/templates/agenda_culturel/paginator.html index c5ce92e..045913d 100644 --- a/src/agenda_culturel/templates/agenda_culturel/paginator.html +++ b/src/agenda_culturel/templates/agenda_culturel/paginator.html @@ -10,4 +10,4 @@ Page {{ paginator_filter.number }} sur {{ paginator_filter.paginator.num_pages } {% if paginator_filter.has_next %} suivant dernier » -{% endif %} \ No newline at end of file +{% endif %} diff --git a/src/agenda_culturel/templates/agenda_culturel/paginator_filter.html b/src/agenda_culturel/templates/agenda_culturel/paginator_filter.html index b560fed..056a9d8 100644 --- a/src/agenda_culturel/templates/agenda_culturel/paginator_filter.html +++ b/src/agenda_culturel/templates/agenda_culturel/paginator_filter.html @@ -17,4 +17,3 @@ {% else %} Page 1 sur 1 {% endif %} - diff --git a/src/agenda_culturel/templates/agenda_culturel/place_confirm_delete.html b/src/agenda_culturel/templates/agenda_culturel/place_confirm_delete.html index cb52f21..478a58c 100644 --- a/src/agenda_culturel/templates/agenda_culturel/place_confirm_delete.html +++ b/src/agenda_culturel/templates/agenda_culturel/place_confirm_delete.html @@ -12,7 +12,7 @@ {% with nb_events=object.nb_events %} {% if nb_events > 0 %} -

Attention : {{ nb_events }} événement{{ nb_events|pluralize }} +

Attention : {{ nb_events }} événement{{ nb_events|pluralize }} {% if nb_events > 1 %}sont enregistrés{% else %}est enregistré{% endif %} dans ce lieu. Après suppression du lieu, les événements sont toujours présents, mais perdent leur localisation exacte.

@@ -24,10 +24,10 @@ {{ form }} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/place_detail.html b/src/agenda_culturel/templates/agenda_culturel/place_detail.html index 29c9adc..be672f3 100644 --- a/src/agenda_culturel/templates/agenda_culturel/place_detail.html +++ b/src/agenda_culturel/templates/agenda_culturel/place_detail.html @@ -25,7 +25,7 @@
{% if perms.agenda_culturel.change_place %} - < Tous les lieux + < Tous les lieux {% endif %} {% if perms.agenda_culturel.change_place %}
@@ -127,7 +127,7 @@ {% endif %} {% endif %} - +
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/place_form.html b/src/agenda_culturel/templates/agenda_culturel/place_form.html index 4140a60..3e7e751 100644 --- a/src/agenda_culturel/templates/agenda_culturel/place_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/place_form.html @@ -55,4 +55,4 @@ {% endif %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/place_list.html b/src/agenda_culturel/templates/agenda_culturel/place_list.html index f541fd8..ad40681 100644 --- a/src/agenda_culturel/templates/agenda_culturel/place_list.html +++ b/src/agenda_culturel/templates/agenda_culturel/place_list.html @@ -37,7 +37,7 @@
{% with cache_timeout=user.is_authenticated|yesno:"300,6000" %} {% cache cache_timeout place_lists user.is_authenticated %} - + {% if object_list %} {% for place in object_list %}

{{ place.name }}{% picto_from_name "map" %}

@@ -75,7 +75,7 @@ markerArray.push(L.marker([{{ place.location|tocoords }}]).bindPopup('{{ place.name }}
{% if place.address %}{{ place.address }}, {% endif %}{{ place.city }}')) markers.addLayer(markerArray[markerArray.length - 1]); window.mMapping[{{ place.id }}] = markerArray[markerArray.length - 1]; - window.jQuery('a#open-map-{{ place.id }}').click(function(){ + window.jQuery('a#open-map-{{ place.id }}').click(function(){ window.mMapping[{{ place.id }}].openPopup(); map.panTo(window.mMapping[{{ place.id }}].getLatLng()); }); @@ -86,4 +86,4 @@ map.fitBounds(markers.getBounds()); -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/place_list_admin.html b/src/agenda_culturel/templates/agenda_culturel/place_list_admin.html index f8fffdc..582a485 100644 --- a/src/agenda_culturel/templates/agenda_culturel/place_list_admin.html +++ b/src/agenda_culturel/templates/agenda_culturel/place_list_admin.html @@ -51,7 +51,7 @@

Aucun événement n'est enregistré dans ce lieu

{% endif %} - + {% endfor %} {% else %} @@ -67,4 +67,4 @@ {% include "agenda_culturel/side-nav.html" with current="places" %}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/place_unknown_form.html b/src/agenda_culturel/templates/agenda_culturel/place_unknown_form.html index 6de73e3..77827bd 100644 --- a/src/agenda_culturel/templates/agenda_culturel/place_unknown_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/place_unknown_form.html @@ -61,4 +61,4 @@ -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/place_unknown_list.html b/src/agenda_culturel/templates/agenda_culturel/place_unknown_list.html index c4009cb..d3fbfe9 100644 --- a/src/agenda_culturel/templates/agenda_culturel/place_unknown_list.html +++ b/src/agenda_culturel/templates/agenda_culturel/place_unknown_list.html @@ -52,4 +52,4 @@ {% include "agenda_culturel/side-nav.html" with current="unknown_places" %}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/recent-activity-inc.html b/src/agenda_culturel/templates/agenda_culturel/recent-activity-inc.html index 8fb4782..d0f4599 100644 --- a/src/agenda_culturel/templates/agenda_culturel/recent-activity-inc.html +++ b/src/agenda_culturel/templates/agenda_culturel/recent-activity-inc.html @@ -36,4 +36,4 @@
-{% endif %} \ No newline at end of file +{% endif %} diff --git a/src/agenda_culturel/templates/agenda_culturel/recent.html b/src/agenda_culturel/templates/agenda_culturel/recent.html index 8f9f01c..c71b5b0 100644 --- a/src/agenda_culturel/templates/agenda_culturel/recent.html +++ b/src/agenda_culturel/templates/agenda_culturel/recent.html @@ -51,4 +51,4 @@ {% include "agenda_culturel/side-nav.html" with current="recent" %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/recurrentimport_confirm_delete.html b/src/agenda_culturel/templates/agenda_culturel/recurrentimport_confirm_delete.html index 6c6696b..b6d269f 100644 --- a/src/agenda_culturel/templates/agenda_culturel/recurrentimport_confirm_delete.html +++ b/src/agenda_culturel/templates/agenda_culturel/recurrentimport_confirm_delete.html @@ -13,9 +13,9 @@

Êtes-vous sûr·e de vouloir supprimer l'import récurrent « {{ object.name }} ({{ object.pk }}) » correspondant à la source {{ object.source }} ?

{{ form }} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/recurrentimport_form.html b/src/agenda_culturel/templates/agenda_culturel/recurrentimport_form.html index 6deebaa..9e12b9f 100644 --- a/src/agenda_culturel/templates/agenda_culturel/recurrentimport_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/recurrentimport_form.html @@ -22,7 +22,7 @@
{% csrf_token %} {{ form.as_p }}
@@ -59,4 +59,4 @@ ); -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/rimports-info-inc.html b/src/agenda_culturel/templates/agenda_culturel/rimports-info-inc.html index 8e2f9c7..e62386d 100644 --- a/src/agenda_culturel/templates/agenda_culturel/rimports-info-inc.html +++ b/src/agenda_culturel/templates/agenda_culturel/rimports-info-inc.html @@ -3,21 +3,21 @@ {% else %} tous : {{ nb_all }} {% endif %} -{% if nb_failed > 0 or all == 1 %}— +{% if nb_failed > 0 or all == 1 %}— {% if not status or status != "failed" %} échoués : {{ nb_failed }} {% else %} échoués : {{ nb_failed }} {% endif %} {% endif %} -{% if nb_canceled > 0 or all == 1 %}— +{% if nb_canceled > 0 or all == 1 %}— {% if not status or status != "canceled" %} annulés : {{ nb_canceled }} {% else %} annulés : {{ nb_canceled }} {% endif %} {% endif %} -{% if nb_running > 0 or all == 1 %}— +{% if nb_running > 0 or all == 1 %}— {% if not status or status != "running" %} en cours : {{ nb_running }} {% else %} diff --git a/src/agenda_culturel/templates/agenda_culturel/rimports.html b/src/agenda_culturel/templates/agenda_culturel/rimports.html index bc3dc74..89e980a 100644 --- a/src/agenda_culturel/templates/agenda_culturel/rimports.html +++ b/src/agenda_culturel/templates/agenda_culturel/rimports.html @@ -111,6 +111,6 @@ ); - -{% endblock %} \ No newline at end of file + +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/run_all_fb_rimports_confirm.html b/src/agenda_culturel/templates/agenda_culturel/run_all_fb_rimports_confirm.html index 80ee197..963de70 100644 --- a/src/agenda_culturel/templates/agenda_culturel/run_all_fb_rimports_confirm.html +++ b/src/agenda_culturel/templates/agenda_culturel/run_all_fb_rimports_confirm.html @@ -15,14 +15,14 @@
{% csrf_token %}

Êtes-vous sûr·e de vouloir lancer tous les imports récurrent depuis facebook ?

{{ form }} - +
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/run_all_rimports_confirm.html b/src/agenda_culturel/templates/agenda_culturel/run_all_rimports_confirm.html index 5de6e9f..55c114e 100644 --- a/src/agenda_culturel/templates/agenda_culturel/run_all_rimports_confirm.html +++ b/src/agenda_culturel/templates/agenda_culturel/run_all_rimports_confirm.html @@ -15,14 +15,14 @@
{% csrf_token %}

Êtes-vous sûr·e de vouloir lancer tous les imports récurrent ?

{{ form }} - +
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/run_canceled_rimports_confirm.html b/src/agenda_culturel/templates/agenda_culturel/run_canceled_rimports_confirm.html index d6e30b0..cae796f 100644 --- a/src/agenda_culturel/templates/agenda_culturel/run_canceled_rimports_confirm.html +++ b/src/agenda_culturel/templates/agenda_culturel/run_canceled_rimports_confirm.html @@ -15,14 +15,14 @@
{% csrf_token %}

Êtes-vous sûr·e de vouloir lancer tous les imports récurrent ayant été annulés lors du dernier import ?

{{ form }} - +
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/run_failed_rimports_confirm.html b/src/agenda_culturel/templates/agenda_culturel/run_failed_rimports_confirm.html index 1a192bd..45f2015 100644 --- a/src/agenda_culturel/templates/agenda_culturel/run_failed_rimports_confirm.html +++ b/src/agenda_culturel/templates/agenda_culturel/run_failed_rimports_confirm.html @@ -15,14 +15,14 @@
{% csrf_token %}

Êtes-vous sûr·e de vouloir lancer tous les imports récurrent ayant échoué lors du dernier import ?

{{ form }} - +
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/run_orphan_imports_confirm.html b/src/agenda_culturel/templates/agenda_culturel/run_orphan_imports_confirm.html index 125411c..4816654 100644 --- a/src/agenda_culturel/templates/agenda_culturel/run_orphan_imports_confirm.html +++ b/src/agenda_culturel/templates/agenda_culturel/run_orphan_imports_confirm.html @@ -14,7 +14,7 @@ Souhaitez-vous les mettre à jour ?

{{ form }} - +
Annuler @@ -24,4 +24,4 @@ -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/run_rimport_confirm.html b/src/agenda_culturel/templates/agenda_culturel/run_rimport_confirm.html index 3c0993a..e16c31d 100644 --- a/src/agenda_culturel/templates/agenda_culturel/run_rimport_confirm.html +++ b/src/agenda_culturel/templates/agenda_culturel/run_rimport_confirm.html @@ -15,14 +15,14 @@
{% csrf_token %}

Êtes-vous sûr·e de vouloir lancer l'import récurrent « {{ object.name }} ({{ object.pk }}) » correspondant à la source {{ object.source }} ?

{{ form }} - +
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/search.html b/src/agenda_culturel/templates/agenda_culturel/search.html index 9d4bbb6..f244e30 100644 --- a/src/agenda_culturel/templates/agenda_culturel/search.html +++ b/src/agenda_culturel/templates/agenda_culturel/search.html @@ -40,7 +40,7 @@ {% if categories.count > 1 %} Retrouvez les événements correspondant aux catégories {% else %} - Retrouvez les événements correspondant à la catégorie + Retrouvez les événements correspondant à la catégorie {% endif %} {% for c in categories %} {{ c | small_cat_no_contrast }} @@ -102,7 +102,7 @@

{{ paginator_filter.paginator.count }} événement{{paginator_filter.object_list.count | pluralize }} correspond{{paginator_filter.object_list.count | pluralize:"ent" }} à la recherche.

- {% for obj in paginator_filter %} + {% for obj in paginator_filter %} {% include "agenda_culturel/single-event/event-in-flat-list-inc.html" with event=obj %} {% endfor %}
@@ -113,4 +113,4 @@ {% endif %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/set_duplicate.html b/src/agenda_culturel/templates/agenda_culturel/set_duplicate.html index c8c5635..db036e4 100644 --- a/src/agenda_culturel/templates/agenda_culturel/set_duplicate.html +++ b/src/agenda_culturel/templates/agenda_culturel/set_duplicate.html @@ -27,4 +27,3 @@ {% include "agenda_culturel/single-event/event-single-inc.html" with event=event %} {% endblock %} - diff --git a/src/agenda_culturel/templates/agenda_culturel/side-nav.html b/src/agenda_culturel/templates/agenda_culturel/side-nav.html index 378cb0f..12bded6 100644 --- a/src/agenda_culturel/templates/agenda_culturel/side-nav.html +++ b/src/agenda_culturel/templates/agenda_culturel/side-nav.html @@ -43,7 +43,7 @@ {% if perms.agenda_culturel.view_batchimportation or perms.agenda_culturel.view_recurrentimport or perms.agenda_culturel.view_categorisationrule%}

Traitements automatiques

{% endif %} - \ No newline at end of file + diff --git a/src/agenda_culturel/templates/agenda_culturel/single-event/event-in-unknown-place-list-inc.html b/src/agenda_culturel/templates/agenda_culturel/single-event/event-in-unknown-place-list-inc.html index 3ade596..89c0132 100644 --- a/src/agenda_culturel/templates/agenda_culturel/single-event/event-in-unknown-place-list-inc.html +++ b/src/agenda_culturel/templates/agenda_culturel/single-event/event-in-unknown-place-list-inc.html @@ -11,7 +11,7 @@ -

{{ event.category | small_cat_recurrent:event.has_recurrences }} +

{{ event.category | small_cat_recurrent:event.has_recurrences }} {{ event|picto_status }} {{ event.title }} @@ -31,7 +31,7 @@

{% picto_from_name "calendar" %} {% if event.end_day and event.end_day != event.start_day %}du{% else %}le{% endif %} - {{ event.start_day|date|frdate }} + {{ event.start_day|date|frdate }} {% if event.start_time %} {% if not event.end_day or event.end_day == event.start_day %}{% if event.end_time %}de{% else %}à{% endif %}{% endif %} {{ event.start_time }} {% endif %} @@ -44,7 +44,7 @@ {% picto_from_name "repeat" %} {% for r in event.recurrences.rrules %} - {{ r.to_text }}{% if not forloop.first %}, {% endif %}{% endfor %}, depuis le + {{ r.to_text }}{% if not forloop.first %}, {% endif %}{% endfor %}, depuis le {% if event.recurrences.dtstart.date %} {{ event.recurrences.dtstart.date }} {% else %} @@ -52,7 +52,7 @@ {% endif %}

{% endif %} - {% if event.tags and event.tags|length > 0 %} + {% if event.tags and event.tags|length > 0 %}

{% picto_from_name "tag" %} {% for tag in event.sorted_tags %} @@ -68,4 +68,4 @@

{% include "agenda_culturel/event-date-info-inc.html" %} -
\ No newline at end of file + diff --git a/src/agenda_culturel/templates/agenda_culturel/single-event/event-single-inc.html b/src/agenda_culturel/templates/agenda_culturel/single-event/event-single-inc.html index b93a27a..8f71169 100644 --- a/src/agenda_culturel/templates/agenda_culturel/single-event/event-single-inc.html +++ b/src/agenda_culturel/templates/agenda_culturel/single-event/event-single-inc.html @@ -14,7 +14,7 @@ {% if event.other_versions.representative %} {% if event.pure_import %}Cette version de l'événement est fidèle à la source, mais l'événement existe en{% else %} Cette version de l'événement existe en - {% endif %} + {% endif %} en plusieurs versions.
{% if event == event.other_versions.get_one_event %} Tu consultes la version mise en avant. @@ -46,7 +46,7 @@

{% picto_from_name "calendar" %} {% if event.end_day and event.end_day != event.start_day %}du{% else %}le{% endif %} - {{ event.start_day|date|frdate }} + {{ event.start_day|date|frdate }} {% if event.start_time %} {% if not event.end_day or event.end_day == event.start_day %}{% if event.end_time %}de{% else %}à{% endif %}{% endif %} {{ event.start_time }} {% endif %} @@ -55,8 +55,8 @@ {% endif %} {% if event.end_time %} {% if not event.end_day|date|frdate or event.end_day == event.start_day %}jusqu'à{% endif %} {{ event.end_time }}{% endif %}

- - + + {% if event.exact_location %}

{% picto_from_name "map-pin" %} {{ event.exact_location.name }}, {{ event.exact_location.city }}

@@ -112,7 +112,7 @@ {{ event.description |linebreaks | robust_urlize }} - +
@@ -122,7 +122,7 @@ {% endfor %}

- + {% include "agenda_culturel/event-sources-inc.html" %} {% if event.exact_location and event.location %} @@ -137,14 +137,14 @@ {% for r in event.recurrences.rrules %} {{ r.to_text }}{% if not forloop.first %}, {% endif %}{% endfor %}, depuis le {{ event.recurrences.dtstart.date }} - {% if event.recurrences.exdates|length > 0 %}, sauf + {% if event.recurrences.exdates|length > 0 %}, sauf le{{ recurrences.exdates|length|pluralize }} {% for e in event.recurrences.exdates %}{% if not forloop.first %}{% if forloop.last %} et {% else %}, {% endif %}{% endif %} {{ e.date }}{% endfor %} {% endif %}

{% endif %} - + {% include "agenda_culturel/event-date-info-inc.html" %}
{% if not nobuttons %} @@ -161,7 +161,7 @@ {% else %} modifier {% picto_from_name "edit-3" %} {% endif %} - + {% else %} exporter ical {% picto_from_name "calendar" %} {% if perms.agenda_culturel.change_event and not noedit %} @@ -172,4 +172,3 @@ {% endif %}
- diff --git a/src/agenda_culturel/templates/agenda_culturel/staticcontent_form.html b/src/agenda_culturel/templates/agenda_culturel/staticcontent_form.html index 93a6f4b..73a54ab 100644 --- a/src/agenda_culturel/templates/agenda_culturel/staticcontent_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/staticcontent_form.html @@ -13,4 +13,4 @@ {{ form.media }} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/statistics.html b/src/agenda_culturel/templates/agenda_culturel/statistics.html index 0006eaa..f526752 100644 --- a/src/agenda_culturel/templates/agenda_culturel/statistics.html +++ b/src/agenda_culturel/templates/agenda_culturel/statistics.html @@ -72,9 +72,9 @@ // set options var options = { - date: { + date: { locale: 'fr', - start: new Date("{{ first_by_startday.isoformat }}"), + start: new Date("{{ first_by_startday.isoformat }}"), highlight: new Date() }, domain: { @@ -122,7 +122,6 @@ const url = "{% url 'day_view' 0 0 0 %}".replace("/0/", "/" + d.getFullYear() + "/").replace("/0/", "/" + (d.getMonth() + 1) + "/").replace("/0/", "/" + d.getDate() + "/"); window.location = url; }); - + {% endblock %} - diff --git a/src/agenda_culturel/templates/agenda_culturel/tag.html b/src/agenda_culturel/templates/agenda_culturel/tag.html index 9426768..3974c23 100644 --- a/src/agenda_culturel/templates/agenda_culturel/tag.html +++ b/src/agenda_culturel/templates/agenda_culturel/tag.html @@ -19,8 +19,8 @@ {% block content %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/tag_confirm_delete.html b/src/agenda_culturel/templates/agenda_culturel/tag_confirm_delete.html index 0f73ff9..0132a29 100644 --- a/src/agenda_culturel/templates/agenda_culturel/tag_confirm_delete.html +++ b/src/agenda_culturel/templates/agenda_culturel/tag_confirm_delete.html @@ -13,9 +13,9 @@

Êtes-vous sûr·e de vouloir supprimer les informations de l'étiquette « {{ object.name }} ({{ object.pk }}) » correspondant à la source {{ object.source }} ?

{{ form }} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/tag_confirm_delete_by_name.html b/src/agenda_culturel/templates/agenda_culturel/tag_confirm_delete_by_name.html index 2dd2d39..09b34f3 100644 --- a/src/agenda_culturel/templates/agenda_culturel/tag_confirm_delete_by_name.html +++ b/src/agenda_culturel/templates/agenda_culturel/tag_confirm_delete_by_name.html @@ -15,13 +15,13 @@
{% csrf_token %}

Êtes-vous sûr·e de vouloir supprimer l'étiquette « {{ tag }} » ?

{% if nb > 0 %} -

Remarquez qu'elle est associée à {{ nb }} événement{{ nb|pluralize }}, qui +

Remarquez qu'elle est associée à {{ nb }} événement{{ nb|pluralize }}, qui {% if nb > 1 %} seront bien sûr conservés, mais perdront cette étiquette. {% else %} sera bien sûr conservé, mais perdra cette étiquette. {% endif %}

{% endif %} {% if nbi > 0 %} -

Remarquez qu'elle est associée à {{ nbi }} import{{ nbs|pluralize }} récurrent{{ nbs|pluralize }}, qui +

Remarquez qu'elle est associée à {{ nbi }} import{{ nbs|pluralize }} récurrent{{ nbs|pluralize }}, qui {% if nbi > 1 %} seront bien sûr conservés, mais perdront cette étiquette. {% else %} sera bien sûr conservé, mais perdra cette étiquette. {% endif %}

@@ -32,10 +32,10 @@ {% endif %} {{ form }}
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/tag_form.html b/src/agenda_culturel/templates/agenda_culturel/tag_form.html index beec7c2..4fe4906 100644 --- a/src/agenda_culturel/templates/agenda_culturel/tag_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/tag_form.html @@ -26,4 +26,4 @@ -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/tag_rename_form.html b/src/agenda_culturel/templates/agenda_culturel/tag_rename_form.html index 6741e5d..1b9abe7 100644 --- a/src/agenda_culturel/templates/agenda_culturel/tag_rename_form.html +++ b/src/agenda_culturel/templates/agenda_culturel/tag_rename_form.html @@ -25,10 +25,10 @@ {{ form.media }} {{ form.as_p }} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/tags.html b/src/agenda_culturel/templates/agenda_culturel/tags.html index 61d5a95..bc8ec0d 100644 --- a/src/agenda_culturel/templates/agenda_culturel/tags.html +++ b/src/agenda_culturel/templates/agenda_culturel/tags.html @@ -39,9 +39,9 @@ {% if tag.obj %} {% if not tag.obj.description|html_vide %}{{ tag.obj.description|safe }}{% endif %} {% if tag.obj.principal or tag.obj.in_included_suggestions or tag.obj.in_excluded_suggestions %} -

Cette étiquette - {% if tag.obj.principal %}est mise en avant parmi les étiquettes principales{% endif %}{% if tag.obj.principal and tag.obj.in_included_suggestions %}, - {% endif %}{% if tag.obj.in_included_suggestions %}fait partie des étiquettes suggérées à inclure{% endif %}{% if tag.obj.in_excluded_suggestions %}{% if tag.obj.in_included_suggestions or tag.obj.principal %} et +

Cette étiquette + {% if tag.obj.principal %}est mise en avant parmi les étiquettes principales{% endif %}{% if tag.obj.principal and tag.obj.in_included_suggestions %}, + {% endif %}{% if tag.obj.in_included_suggestions %}fait partie des étiquettes suggérées à inclure{% endif %}{% if tag.obj.in_excluded_suggestions %}{% if tag.obj.in_included_suggestions or tag.obj.principal %} et {% endif %}{% endif %}{% if tag.obj.in_excluded_suggestions %}fait partie des étiquettes suggérées à exclure{% endif %}.

{% endif %} @@ -59,4 +59,4 @@ {% endcache %} {% endwith %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/agenda_culturel/update_duplicate.html b/src/agenda_culturel/templates/agenda_culturel/update_duplicate.html index 293fd8a..38135d4 100644 --- a/src/agenda_culturel/templates/agenda_culturel/update_duplicate.html +++ b/src/agenda_culturel/templates/agenda_culturel/update_duplicate.html @@ -29,4 +29,3 @@ {% endblock %} - diff --git a/src/agenda_culturel/templates/agenda_culturel/widgets/widget-tags.html b/src/agenda_culturel/templates/agenda_culturel/widgets/widget-tags.html index ddfa555..2cdfa70 100644 --- a/src/agenda_culturel/templates/agenda_culturel/widgets/widget-tags.html +++ b/src/agenda_culturel/templates/agenda_culturel/widgets/widget-tags.html @@ -19,4 +19,4 @@
-{% endspaceless %} \ No newline at end of file +{% endspaceless %} diff --git a/src/agenda_culturel/templates/agenda_culturel/widgets/widget-urls.html b/src/agenda_culturel/templates/agenda_culturel/widgets/widget-urls.html index 7579ba9..ca9c742 100644 --- a/src/agenda_culturel/templates/agenda_culturel/widgets/widget-urls.html +++ b/src/agenda_culturel/templates/agenda_culturel/widgets/widget-urls.html @@ -19,4 +19,4 @@
-{% endspaceless %} \ No newline at end of file +{% endspaceless %} diff --git a/src/agenda_culturel/templates/page-erreur.html b/src/agenda_culturel/templates/page-erreur.html index d8228e5..2f12fc0 100644 --- a/src/agenda_culturel/templates/page-erreur.html +++ b/src/agenda_culturel/templates/page-erreur.html @@ -20,13 +20,13 @@

Y'a un pépin (erreur {{ error }})

-

On a rencontré un pépin en cherchant la page que tu as demandée ! N'hésites pas à nous signaler +

On a rencontré un pépin en cherchant la page que tu as demandée ! N'hésites pas à nous signaler tout ça si tu penses qu'il y a un bug dans la compote.

quelques pommes et leur pépins
- - - - {% endblock %} \ No newline at end of file + + + + {% endblock %} diff --git a/src/agenda_culturel/templates/registration/login.html b/src/agenda_culturel/templates/registration/login.html index 272ef31..f42758d 100644 --- a/src/agenda_culturel/templates/registration/login.html +++ b/src/agenda_culturel/templates/registration/login.html @@ -39,4 +39,4 @@

Mot de passe oublié ? Réinitialiser son mot de passe

-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/registration/password_reset_complete.html b/src/agenda_culturel/templates/registration/password_reset_complete.html index 192d51b..f163c3c 100644 --- a/src/agenda_culturel/templates/registration/password_reset_complete.html +++ b/src/agenda_culturel/templates/registration/password_reset_complete.html @@ -9,6 +9,6 @@

Nouveau mot de passe enregistré

Votre mot de passe a été modifié. Vous pouvez maintenant continuer et vous connecter.

Connexion

- + -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/registration/password_reset_confirm.html b/src/agenda_culturel/templates/registration/password_reset_confirm.html index 16f569e..cbbb152 100644 --- a/src/agenda_culturel/templates/registration/password_reset_confirm.html +++ b/src/agenda_culturel/templates/registration/password_reset_confirm.html @@ -38,9 +38,9 @@

Réinitialisation de mot de passe échoué

-

Le lien de réinitialisation de mot de passe était invalide, - possiblement parce qu'il a déjà été utilisé.

+

Le lien de réinitialisation de mot de passe était invalide, + possiblement parce qu'il a déjà été utilisé.

Veuillez demander une nouvelle réinitialisation.

{% endif %} -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/registration/password_reset_done.html b/src/agenda_culturel/templates/registration/password_reset_done.html index 4c8d9bd..31817ba 100644 --- a/src/agenda_culturel/templates/registration/password_reset_done.html +++ b/src/agenda_culturel/templates/registration/password_reset_done.html @@ -8,9 +8,9 @@

Succès de la réinitialisation du mot de passe

-

Nous venons de vous envoyer un courrier électronique avec les instructions pour modifier +

Nous venons de vous envoyer un courrier électronique avec les instructions pour modifier votre mot de passe. Vous devriez le recevoir très vite !

-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templates/registration/password_reset_form.html b/src/agenda_culturel/templates/registration/password_reset_form.html index e5351b2..0ce350b 100644 --- a/src/agenda_culturel/templates/registration/password_reset_form.html +++ b/src/agenda_culturel/templates/registration/password_reset_form.html @@ -17,4 +17,4 @@

{{ form.email }}

-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/src/agenda_culturel/templatetags/cat_extra.py b/src/agenda_culturel/templatetags/cat_extra.py index 0fe4e86..210909e 100644 --- a/src/agenda_culturel/templatetags/cat_extra.py +++ b/src/agenda_culturel/templatetags/cat_extra.py @@ -1,12 +1,13 @@ +import colorsys +import logging + from django import template -from django.utils.safestring import mark_safe from django.core.cache import cache +from django.utils.safestring import mark_safe from agenda_culturel.models import Category -import colorsys -from .utils_extra import picto_from_name -import logging +from .utils_extra import picto_from_name logger = logging.getLogger(__name__) @@ -82,7 +83,10 @@ def css_categories(): for c in Category.objects.all() ] cats.append( - {"color": Category.default_color, "css_class": Category.default_css_class} + { + "color": Category.default_color, + "css_class": Category.default_css_class, + } ) for c in cats: diff --git a/src/agenda_culturel/templatetags/duplicated_extra.py b/src/agenda_culturel/templatetags/duplicated_extra.py index 8f73f39..1efaeb1 100644 --- a/src/agenda_culturel/templatetags/duplicated_extra.py +++ b/src/agenda_culturel/templatetags/duplicated_extra.py @@ -1,8 +1,7 @@ from django import template -from django.utils.safestring import mark_safe -from django.urls import reverse_lazy from django.template.defaultfilters import pluralize - +from django.urls import reverse_lazy +from django.utils.safestring import mark_safe from agenda_culturel.models import DuplicatedEvents @@ -13,7 +12,6 @@ register = template.Library() @register.simple_tag def show_badge_duplicated(placement="top"): - nb_duplicated = DuplicatedEvents.not_fixed_qs().count() if nb_duplicated != 0: diff --git a/src/agenda_culturel/templatetags/event_extra.py b/src/agenda_culturel/templatetags/event_extra.py index 178341c..2357c35 100644 --- a/src/agenda_culturel/templatetags/event_extra.py +++ b/src/agenda_culturel/templatetags/event_extra.py @@ -1,10 +1,11 @@ -from django import template -from django.utils.safestring import mark_safe -from django.urls import reverse_lazy -from django.template.defaultfilters import pluralize, linebreaks, urlize -from django.db.models import Q, F import re -from datetime import timedelta, datetime +from datetime import datetime, timedelta + +from django import template +from django.db.models import F, Q +from django.template.defaultfilters import linebreaks, pluralize, urlize +from django.urls import reverse_lazy +from django.utils.safestring import mark_safe from agenda_culturel.models import Event diff --git a/src/agenda_culturel/templatetags/locations_extra.py b/src/agenda_culturel/templatetags/locations_extra.py index 0d160b6..4d735ca 100644 --- a/src/agenda_culturel/templatetags/locations_extra.py +++ b/src/agenda_culturel/templatetags/locations_extra.py @@ -1,9 +1,10 @@ from django import template from django.utils.safestring import mark_safe -from .utils_extra import picto_from_name from agenda_culturel.models import ReferenceLocation +from .utils_extra import picto_from_name + register = template.Library() diff --git a/src/agenda_culturel/templatetags/messages_extra.py b/src/agenda_culturel/templatetags/messages_extra.py index ee89e36..b19aeff 100644 --- a/src/agenda_culturel/templatetags/messages_extra.py +++ b/src/agenda_culturel/templatetags/messages_extra.py @@ -1,8 +1,7 @@ from django import template -from django.utils.safestring import mark_safe -from django.urls import reverse_lazy from django.template.defaultfilters import pluralize - +from django.urls import reverse_lazy +from django.utils.safestring import mark_safe from agenda_culturel.models import Message diff --git a/src/agenda_culturel/templatetags/rimports_extra.py b/src/agenda_culturel/templatetags/rimports_extra.py index b198312..6a3b586 100644 --- a/src/agenda_culturel/templatetags/rimports_extra.py +++ b/src/agenda_culturel/templatetags/rimports_extra.py @@ -1,14 +1,14 @@ +import logging + from django import template -from django.utils.safestring import mark_safe -from django.urls import reverse_lazy +from django.db.models import Count, OuterRef, Subquery from django.template.defaultfilters import pluralize -from django.db.models import OuterRef, Subquery, Count +from django.urls import reverse_lazy +from django.utils.safestring import mark_safe - -from agenda_culturel.models import RecurrentImport, BatchImportation +from agenda_culturel.models import BatchImportation, RecurrentImport from .utils_extra import picto_from_name -import logging register = template.Library() diff --git a/src/agenda_culturel/templatetags/tag_extra.py b/src/agenda_culturel/templatetags/tag_extra.py index 5ba573c..0026390 100644 --- a/src/agenda_culturel/templatetags/tag_extra.py +++ b/src/agenda_culturel/templatetags/tag_extra.py @@ -1,7 +1,9 @@ from django import template -from django.utils.safestring import mark_safe from django.urls import reverse_lazy +from django.utils.safestring import mark_safe + from agenda_culturel.models import Tag + from .cat_extra import circle_cat register = template.Library() diff --git a/src/agenda_culturel/templatetags/utils_extra.py b/src/agenda_culturel/templatetags/utils_extra.py index 07fcd3a..8013509 100644 --- a/src/agenda_culturel/templatetags/utils_extra.py +++ b/src/agenda_culturel/templatetags/utils_extra.py @@ -1,15 +1,15 @@ -from django import template -from django.utils.safestring import mark_safe -from django.template.defaultfilters import stringfilter - -from urllib.parse import urlparse -from datetime import timedelta, date, datetime -from dateutil.relativedelta import relativedelta -from django.urls import reverse_lazy -from django.templatetags.static import static +from datetime import date, datetime, timedelta from string import ascii_uppercase as auc -from django.utils.html import strip_tags +from urllib.parse import urlparse + import emoji +from dateutil.relativedelta import relativedelta +from django import template +from django.template.defaultfilters import stringfilter +from django.templatetags.static import static +from django.urls import reverse_lazy +from django.utils.html import strip_tags +from django.utils.safestring import mark_safe register = template.Library() diff --git a/src/agenda_culturel/urls.py b/src/agenda_culturel/urls.py index 57beacc..e2f4d82 100644 --- a/src/agenda_culturel/urls.py +++ b/src/agenda_culturel/urls.py @@ -1,21 +1,109 @@ from django.conf import settings from django.conf.urls.static import static from django.contrib import admin -from django.contrib.staticfiles.urls import staticfiles_urlpatterns -from django.urls import path, include, re_path -from django.views.i18n import JavaScriptCatalog -from django.contrib.sitemaps.views import sitemap from django.contrib.sitemaps import GenericSitemap +from django.contrib.sitemaps.views import sitemap +from django.contrib.staticfiles.urls import staticfiles_urlpatterns +from django.urls import include, path, re_path +from django.views.decorators.cache import cache_page +from django.views.i18n import JavaScriptCatalog + from .sitemaps import ( - StaticViewSitemap, HomeCategorySitemap, MonthCategorySitemap, - WeekCategorySitemap, + StaticViewSitemap, UpcomingCategorySitemap, + WeekCategorySitemap, +) +from .models import Event, Place, Organisation, Category +from .views import ( + home, + week_view, + month_view, + day_view, + upcoming_events, + export_ical, + view_tag, + view_tag_past, + TagUpdateView, + recent, + administration, + activite, + OrganisationDeleteView, + OrganisationCreateView, + OrganisationDetailView, + OrganisationDetailViewPast, + OrganisationListView, + OrganisationUpdateView, + PlaceDeleteView, + PlaceDetailView, + PlaceDetailViewPast, + PlaceUpdateView, + PlaceListView, + PlaceListAdminView, + UnknownPlaceAddView, + UnknownPlacesListView, + fix_duplicate, + fix_unknown_places, + clear_cache, + export_event_ical, + MessageDeleteView, + imports, + add_import, + update_orphan_events, + cancel_import, + run_all_fb_rimports, + run_all_rimports, + tag_list, + TagDeleteView, + rename_tag, + delete_tag, + TagCreateView, + EventDetailView, + EventUpdateView, + EventModerateView, + moderate_event_next, + RecurrentImportCreateView, + RecurrentImportDeleteView, + RecurrentImportUpdateView, + run_rimport, + categorisation_rules, + duplicates, + DuplicatedEventsDetailView, + StaticContentCreateView, + StaticContentUpdateView, + about, + thank_you, + MessageCreateView, + merge_duplicate, + EventCreateView, + event_search, + event_search_full, + recurrent_imports, + delete_cm_spam, + page_not_found, + internal_server_error, + PlaceCreateView, + PlaceFromEventCreateView, + moderate_from_date, + update_from_source, + change_status_event, + EventDeleteView, + set_duplicate, + import_event_proxy, + import_from_url, + import_from_urls, + mentions_legales, + view_messages, + MessageUpdateView, + statistics, + view_rimport, + update_duplicate_event, + CategorisationRuleCreateView, + CategorisationRuleDeleteView, + CategorisationRuleUpdateView, + apply_categorisation_rules, ) -from django.views.decorators.cache import cache_page - -from .views import * event_dict = { "queryset": Event.objects.all(), @@ -48,11 +136,15 @@ urlpatterns = [ path("", home, name="home"), path("cat:/", home, name="home_category"), path( - "cat:/semaine///", week_view, name="week_view_category" + "cat:/semaine///", + week_view, + name="week_view_category", ), path("cat:/cette-semaine/", week_view, name="cette_semaine_category"), path( - "cat:/mois///", month_view, name="month_view_category" + "cat:/mois///", + month_view, + name="month_view_category", ), path( "cat:/jour////", @@ -87,7 +179,11 @@ urlpatterns = [ path("tag//past", view_tag_past, name="view_tag_past"), path("tags/", tag_list, name="view_all_tags"), path("tag//edit", TagUpdateView.as_view(), name="edit_tag"), - path("tag//delete", TagDeleteView.as_view(), name="delete_object_tag"), + path( + "tag//delete", + TagDeleteView.as_view(), + name="delete_object_tag", + ), path("tag//rename", rename_tag, name="rename_tag"), path("tag//delete", delete_tag, name="delete_tag"), path("tags/add", TagCreateView.as_view(), name="add_tag"), @@ -101,14 +197,20 @@ urlpatterns = [ ), path("event//", EventDetailView.as_view(), name="edit_event_pk"), path("event//edit", EventUpdateView.as_view(), name="edit_event"), - path("event//moderate", EventModerateView.as_view(), name="moderate_event"), + path( + "event//moderate", + EventModerateView.as_view(), + name="moderate_event", + ), path( "event//moderate/after/", EventModerateView.as_view(), name="moderate_event_step", ), path( - "event//moderate-next", moderate_event_next, name="moderate_event_next" + "event//moderate-next", + moderate_event_next, + name="moderate_event_next", ), path("moderate", EventModerateView.as_view(), name="moderate"), path( @@ -121,9 +223,15 @@ urlpatterns = [ EventUpdateView.as_view(), name="simple_clone_edit", ), - path("event//clone/edit", EventUpdateView.as_view(), name="clone_edit"), path( - "event//message", MessageCreateView.as_view(), name="message_for_event" + "event//clone/edit", + EventUpdateView.as_view(), + name="clone_edit", + ), + path( + "event//message", + MessageCreateView.as_view(), + name="message_for_event", ), path( "event//update-from-source", @@ -179,16 +287,24 @@ urlpatterns = [ ), path("imports/", imports, name="imports"), path("imports/add", add_import, name="add_import"), - path("imports/orphans/run", update_orphan_events, name="update_orphan_events"), + path( + "imports/orphans/run", + update_orphan_events, + name="update_orphan_events", + ), path("imports//cancel", cancel_import, name="cancel_import"), path("rimports/", recurrent_imports, name="recurrent_imports"), path("rimports/run", run_all_rimports, name="run_all_rimports"), path("rimports/fb/run", run_all_fb_rimports, name="run_all_fb_rimports"), path( - "rimports/status/", recurrent_imports, name="recurrent_imports_status" + "rimports/status/", + recurrent_imports, + name="recurrent_imports_status", ), path( - "rimports/status//run", run_all_rimports, name="run_all_rimports_status" + "rimports/status//run", + run_all_rimports, + name="run_all_rimports_status", ), path("rimports/add", RecurrentImportCreateView.as_view(), name="add_rimport"), path("rimports//view", view_rimport, name="view_rimport"), @@ -204,7 +320,11 @@ urlpatterns = [ ), path("rimports//run", run_rimport, name="run_rimport"), path("catrules/", categorisation_rules, name="categorisation_rules"), - path("catrules/add", CategorisationRuleCreateView.as_view(), name="add_catrule"), + path( + "catrules/add", + CategorisationRuleCreateView.as_view(), + name="add_catrule", + ), path( "catrules//edit", CategorisationRuleUpdateView.as_view(), @@ -266,9 +386,21 @@ urlpatterns = [ OrganisationDeleteView.as_view(), name="delete_organisation", ), - path("organismes/", OrganisationListView.as_view(), name="view_organisations"), - path("organisme/add", OrganisationCreateView.as_view(), name="add_organisation"), - path("place//past", PlaceDetailViewPast.as_view(), name="view_place_past"), + path( + "organismes/", + OrganisationListView.as_view(), + name="view_organisations", + ), + path( + "organisme/add", + OrganisationCreateView.as_view(), + name="add_organisation", + ), + path( + "place//past", + PlaceDetailViewPast.as_view(), + name="view_place_past", + ), path("place/", PlaceDetailView.as_view(), name="view_place"), path( "place/-/past", @@ -276,7 +408,9 @@ urlpatterns = [ name="view_place_past_fullname", ), path( - "place/-", PlaceDetailView.as_view(), name="view_place_fullname" + "place/-", + PlaceDetailView.as_view(), + name="view_place_fullname", ), path("place//edit", PlaceUpdateView.as_view(), name="edit_place"), path("place//delete", PlaceDeleteView.as_view(), name="delete_place"), @@ -293,7 +427,11 @@ urlpatterns = [ UnknownPlacesListView.as_view(), name="view_unknown_places", ), - path("events/unknown-places/fix", fix_unknown_places, name="fix_unknown_places"), + path( + "events/unknown-places/fix", + fix_unknown_places, + name="fix_unknown_places", + ), path( "event//addplace", UnknownPlaceAddView.as_view(), @@ -330,7 +468,9 @@ js_info_dict = { # jsi18n can be anything you like here urlpatterns += [ path( - "jsi18n.js", JavaScriptCatalog.as_view(packages=["recurrence"]), name="jsi18n" + "jsi18n.js", + JavaScriptCatalog.as_view(packages=["recurrence"]), + name="jsi18n", ), ] diff --git a/src/agenda_culturel/utils.py b/src/agenda_culturel/utils.py index 2bbf26d..078da44 100644 --- a/src/agenda_culturel/utils.py +++ b/src/agenda_culturel/utils.py @@ -1,10 +1,10 @@ -from agenda_culturel.models import ReferenceLocation import re import unicodedata +from agenda_culturel.models import ReferenceLocation + class PlaceGuesser: - def __init__(self): self.__citynames = list( ReferenceLocation.objects.values_list("name__lower__unaccent", "name") diff --git a/src/agenda_culturel/views.py b/src/agenda_culturel/views.py index 26e872d..5455b8f 100644 --- a/src/agenda_culturel/views.py +++ b/src/agenda_culturel/views.py @@ -1,108 +1,106 @@ -from django.shortcuts import render, get_object_or_404 -from django.views.generic import ListView, DetailView -from django.views.generic.edit import CreateView, UpdateView, DeleteView, ModelFormMixin +import calendar as _calendar +import hashlib +import logging +from datetime import date, timedelta + +import emoji +from django.contrib import messages +from django.contrib.auth.decorators import login_required, permission_required from django.contrib.auth.mixins import ( LoginRequiredMixin, - UserPassesTestMixin, PermissionRequiredMixin, + UserPassesTestMixin, ) -from django.http import Http404 -from django.utils.safestring import mark_safe -from django.utils.decorators import method_decorator -from honeypot.decorators import check_honeypot -from .utils import PlaceGuesser -import hashlib +from django.contrib.messages.views import SuccessMessageMixin from django.core.cache import cache from django.core.mail import mail_admins -import calendar as _calendar - - -from django.http import HttpResponseRedirect, HttpResponse, HttpResponseForbidden -from django.urls import reverse -import emoji - -from .forms import ( - EventForm, - EventFormWithContact, - BatchImportationForm, - FixDuplicates, - SelectEventInList, - MergeDuplicates, - RecurrentImportForm, - CategorisationRuleImportForm, - CategorisationForm, - EventAddPlaceForm, - PlaceForm, - EventModerateForm, - TagForm, - TagRenameForm, - MessageForm, - MessageEventForm, - URLSubmissionFormWithContact, - URLSubmissionFormSet, - SimpleContactForm, +from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator +from django.db.models import Count, F, Func, OuterRef, Q, Subquery +from django.http import ( + Http404, + HttpResponse, + HttpResponseForbidden, + HttpResponseRedirect, ) +from django.shortcuts import get_object_or_404, render +from django.urls import reverse, reverse_lazy +from django.utils.decorators import method_decorator +from django.utils.html import escape +from django.utils.safestring import mark_safe +from django.utils.timezone import datetime +from django.utils.translation import gettext_lazy as _ +from django.views.generic import DetailView, ListView +from django.views.generic.edit import ( + CreateView, + DeleteView, + ModelFormMixin, + UpdateView, +) +from honeypot.decorators import check_honeypot +from .calendar import CalendarDay, CalendarList, CalendarMonth, CalendarWeek +from .celery import app as celery_app +from .celery import ( + import_events_from_json, + import_events_from_url, + import_events_from_urls, + run_all_recurrent_imports, + run_all_recurrent_imports_canceled, + run_all_recurrent_imports_failed, + run_recurrent_import, + update_orphan_pure_import_events, +) from .filters import ( + DuplicatedEventsFilter, EventFilter, EventFilterAdmin, MessagesFilterAdmin, - SimpleSearchEventFilter, - SearchEventFilter, - DuplicatedEventsFilter, RecurrentImportFilter, + SearchEventFilter, + SimpleSearchEventFilter, ) - -from .models import ( - Event, - Category, - Tag, - StaticContent, - Message, - BatchImportation, - DuplicatedEvents, - RecurrentImport, - CategorisationRule, - remove_accents, - Place, - Organisation, +from .forms import ( + BatchImportationForm, + CategorisationForm, + CategorisationRuleImportForm, + EventAddPlaceForm, + EventForm, + EventFormWithContact, + EventModerateForm, + FixDuplicates, + MergeDuplicates, + MessageEventForm, + MessageForm, + PlaceForm, + RecurrentImportForm, + SelectEventInList, + SimpleContactForm, + TagForm, + TagRenameForm, + URLSubmissionFormSet, + URLSubmissionFormWithContact, ) -from django.utils.html import escape -from datetime import date, timedelta -from django.utils.timezone import datetime -from django.db.models import Q, Subquery, OuterRef, Count, F, Func - -from django.urls import reverse_lazy -from django.utils.translation import gettext_lazy as _ -from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger -from django.contrib.auth.decorators import login_required, permission_required - -from django.contrib import messages -from django.contrib.messages.views import SuccessMessageMixin - -from .calendar import CalendarMonth, CalendarWeek, CalendarDay, CalendarList - from .import_tasks.extractor import Extractor - -from .celery import ( - app as celery_app, - import_events_from_json, - run_recurrent_import, - run_all_recurrent_imports, - run_all_recurrent_imports_failed, - run_all_recurrent_imports_canceled, - import_events_from_url, - import_events_from_urls, - update_orphan_pure_import_events, +from .models import ( + BatchImportation, + CategorisationRule, + Category, + DuplicatedEvents, + Event, + Message, + Organisation, + Place, + RecurrentImport, + StaticContent, + Tag, + remove_accents, ) - -import logging +from .utils import PlaceGuesser logger = logging.getLogger(__name__) class PaginatorFilter(Paginator): - def __init__(self, filter, nb, request): self.request = request self.filter = filter @@ -133,7 +131,9 @@ class PaginatorFilter(Paginator): try: page.url_previous_page = PaginatorFilter.update_param( - self.request.get_full_path(), "page", page.previous_page_number() + self.request.get_full_path(), + "page", + page.previous_page_number(), ) except EmptyPage: page.url_previous_page = self.request.get_full_path() @@ -360,7 +360,10 @@ def upcoming_events(request, year=None, month=None, day=None, neighsize=1, cat=N return HttpResponseRedirect(filter.get_new_url()) cal = CalendarList( - day + timedelta(days=-neighsize), day + timedelta(days=neighsize), filter, True + day + timedelta(days=-neighsize), + day + timedelta(days=neighsize), + filter, + True, ) context = { @@ -389,7 +392,10 @@ class StaticContentCreateView(LoginRequiredMixin, CreateView): class StaticContentUpdateView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, UpdateView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + UpdateView, ): model = StaticContent permission_required = "agenda_culturel.change_staticcontent" @@ -410,7 +416,11 @@ def update_from_source(request, pk): ) else: import_events_from_url.delay( - url, None, None, True, user_id=request.user.pk if request.user else None + url, + None, + None, + True, + user_id=request.user.pk if request.user else None, ) messages.success( request, @@ -421,7 +431,10 @@ def update_from_source(request, pk): class EventUpdateView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, UpdateView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + UpdateView, ): model = Event permission_required = "agenda_culturel.change_event" @@ -490,7 +503,10 @@ class EventUpdateView( class EventModerateView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, UpdateView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + UpdateView, ): model = Event permission_required = "agenda_culturel.change_event" @@ -593,7 +609,6 @@ class EventModerateView( @login_required(login_url="/accounts/login/") @permission_required("agenda_culturel.change_event") def error_next_event(request, pk): - obj = Event.objects.filter(pk=pk).first() return render( @@ -633,7 +648,10 @@ def moderate_from_date(request, y, m, d): class EventDeleteView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, DeleteView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + DeleteView, ): model = Event permission_required = "agenda_culturel.delete_event" @@ -765,7 +783,6 @@ class EventCreateView(SuccessMessageMixin, CreateView): ) def form_valid(self, form): - if form.cleaned_data["simple_cloning"]: form.instance.set_skip_duplicate_check() @@ -809,7 +826,6 @@ class EventCreateView(SuccessMessageMixin, CreateView): # A class to evaluate the URL according to the existing events and the authentification # level of the user class URLEventEvaluation: - def __init__(self, form, is_authenticated): self.form = form self.is_authenticated = is_authenticated @@ -871,7 +887,6 @@ class URLEventEvaluation: def import_from_urls(request): - if request.method == "POST": formset = URLSubmissionFormSet(request.POST, request.FILES) @@ -946,7 +961,6 @@ def import_from_urls(request): def import_from_url(request): - form = URLSubmissionFormWithContact(is_authenticated=request.user.is_authenticated) initial = { @@ -973,8 +987,7 @@ def import_from_url(request): request, mark_safe( _( - "{} has not been submitted since it" - "s already known: {}." + "{} has not been submitted since its already known: {}." ).format(uc.url, uc.get_link()) ), ) @@ -991,7 +1004,8 @@ def import_from_url(request): else: messages.info( - request, _("Integrating {} into our import process.").format(uc.url) + request, + _("Integrating {} into our import process.").format(uc.url), ) import_events_from_url.delay( uc.url, @@ -1125,7 +1139,10 @@ class MessageDeleteView(SuccessMessageMixin, DeleteView): class MessageUpdateView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, UpdateView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + UpdateView, ): model = Message permission_required = "agenda_culturel.change_message" @@ -1308,7 +1325,6 @@ def view_messages(request): @login_required(login_url="/accounts/login/") @permission_required("agenda_culturel.view_message") def delete_cm_spam(request): - if request.method == "POST": Message.objects.filter(spam=True).delete() @@ -1322,7 +1338,11 @@ def delete_cm_spam(request): return render( request, "agenda_culturel/delete_spams_confirm.html", - {"nb_total": nb_total, "nb_spams": nb_spams, "cancel_url": cancel_url}, + { + "nb_total": nb_total, + "nb_spams": nb_spams, + "cancel_url": cancel_url, + }, ) @@ -1366,7 +1386,10 @@ def event_search(request, full=False): .distinct() ) tags = [ - (t, emoji.demojize(remove_accents(t).lower(), delimiters=("000", ""))) + ( + t, + emoji.demojize(remove_accents(t).lower(), delimiters=("000", "")), + ) for t in tags ] tags = [t for t in tags if s_q == t[1]] @@ -1459,13 +1482,19 @@ def imports(request): return render( request, "agenda_culturel/imports.html", - {"paginator_filter": response, "nb_in_orphan_import": nb_in_orphan_import}, + { + "paginator_filter": response, + "nb_in_orphan_import": nb_in_orphan_import, + }, ) @login_required(login_url="/accounts/login/") @permission_required( - ["agenda_culturel.add_batchimportation", "agenda_culturel.run_batchimportation"] + [ + "agenda_culturel.add_batchimportation", + "agenda_culturel.run_batchimportation", + ] ) def add_import(request): form = BatchImportationForm() @@ -1484,7 +1513,10 @@ def add_import(request): @login_required(login_url="/accounts/login/") @permission_required( - ["agenda_culturel.view_batchimportation", "agenda_culturel.run_batchimportation"] + [ + "agenda_culturel.view_batchimportation", + "agenda_culturel.run_batchimportation", + ] ) def cancel_import(request, pk): import_process = get_object_or_404(BatchImportation, pk=pk) @@ -1508,7 +1540,10 @@ def cancel_import(request, pk): @login_required(login_url="/accounts/login/") @permission_required( - ["agenda_culturel.view_batchimportation", "agenda_culturel.run_batchimportation"] + [ + "agenda_culturel.view_batchimportation", + "agenda_culturel.run_batchimportation", + ] ) def update_orphan_events(request): if request.method == "POST": @@ -1518,7 +1553,6 @@ def update_orphan_events(request): messages.success(request, _("The orphan event update has been launched.")) return HttpResponseRedirect(reverse_lazy("imports")) else: - today = date.today() srcs = RecurrentImport.objects.all().values_list("source") @@ -1548,7 +1582,6 @@ def update_orphan_events(request): @login_required(login_url="/accounts/login/") @permission_required("agenda_culturel.view_recurrentimport") def recurrent_imports(request, status=None): - newest = BatchImportation.objects.filter(recurrentImport=OuterRef("pk")).order_by( "-created_date" ) @@ -1605,7 +1638,10 @@ class RecurrentImportCreateView( class RecurrentImportUpdateView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, UpdateView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + UpdateView, ): model = RecurrentImport permission_required = "agenda_culturel.change_recurrentimport" @@ -1614,7 +1650,10 @@ class RecurrentImportUpdateView( class RecurrentImportDeleteView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, DeleteView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + DeleteView, ): model = RecurrentImport permission_required = "agenda_culturel.delete_recurrentimport" @@ -1624,7 +1663,10 @@ class RecurrentImportDeleteView( @login_required(login_url="/accounts/login/") @permission_required( - ["agenda_culturel.view_recurrentimport", "agenda_culturel.view_batchimportation"] + [ + "agenda_culturel.view_recurrentimport", + "agenda_culturel.view_batchimportation", + ] ) def view_rimport(request, pk): obj = get_object_or_404(RecurrentImport, pk=pk) @@ -1650,7 +1692,10 @@ def view_rimport(request, pk): @login_required(login_url="/accounts/login/") @permission_required( - ["agenda_culturel.view_recurrentimport", "agenda_culturel.run_recurrentimport"] + [ + "agenda_culturel.view_recurrentimport", + "agenda_culturel.run_recurrentimport", + ] ) def run_rimport(request, pk): rimport = get_object_or_404(RecurrentImport, pk=pk) @@ -1663,13 +1708,18 @@ def run_rimport(request, pk): return HttpResponseRedirect(reverse_lazy("view_rimport", args=[pk])) else: return render( - request, "agenda_culturel/run_rimport_confirm.html", {"object": rimport} + request, + "agenda_culturel/run_rimport_confirm.html", + {"object": rimport}, ) @login_required(login_url="/accounts/login/") @permission_required( - ["agenda_culturel.view_recurrentimport", "agenda_culturel.run_recurrentimport"] + [ + "agenda_culturel.view_recurrentimport", + "agenda_culturel.run_recurrentimport", + ] ) def run_all_rimports(request, status=None): if request.method == "POST": @@ -1694,7 +1744,10 @@ def run_all_rimports(request, status=None): @login_required(login_url="/accounts/login/") @permission_required( - ["agenda_culturel.view_recurrentimport", "agenda_culturel.run_recurrentimport"] + [ + "agenda_culturel.view_recurrentimport", + "agenda_culturel.run_recurrentimport", + ] ) def run_all_fb_rimports(request, status=None): if request.method == "POST": @@ -1729,7 +1782,6 @@ def update_duplicate_event(request, pk, epk): if request.method == "POST": form = MergeDuplicates(request.POST, duplicates=edup) if form.is_valid(): - for f in edup.get_items_comparison(): if not f["similar"]: selected = form.get_selected_events(f["key"]) @@ -1749,7 +1801,11 @@ def update_duplicate_event(request, pk, epk): if f["key"] == "organisers": event.organisers.set(selected.organisers.all()) else: - setattr(event, f["key"], getattr(selected, f["key"])) + setattr( + event, + f["key"], + getattr(selected, f["key"]), + ) if f["key"] == "image": setattr( event, @@ -1766,7 +1822,11 @@ def update_duplicate_event(request, pk, epk): return render( request, "agenda_culturel/update_duplicate.html", - context={"form": form, "object": edup, "event_id": edup.get_event_index(event)}, + context={ + "form": form, + "object": edup, + "event_id": edup.get_event_index(event), + }, ) @@ -1884,7 +1944,8 @@ def fix_duplicate(request, pk): else: edup.fix(selected) messages.success( - request, _("The selected event has been set as representative") + request, + _("The selected event has been set as representative"), ) return HttpResponseRedirect(edup.get_absolute_url()) elif form.is_action_remove(): @@ -1977,7 +2038,11 @@ def duplicates(request): return render( request, "agenda_culturel/duplicates.html", - {"filter": filter, "paginator_filter": response, "paginator": paginator}, + { + "filter": filter, + "paginator_filter": response, + "paginator": paginator, + }, ) @@ -2064,7 +2129,10 @@ class CategorisationRuleCreateView( class CategorisationRuleUpdateView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, UpdateView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + UpdateView, ): model = CategorisationRule permission_required = "agenda_culturel.change_categorisationrule" @@ -2074,7 +2142,10 @@ class CategorisationRuleUpdateView( class CategorisationRuleDeleteView( - SuccessMessageMixin, PermissionRequiredMixin, LoginRequiredMixin, DeleteView + SuccessMessageMixin, + PermissionRequiredMixin, + LoginRequiredMixin, + DeleteView, ): model = CategorisationRule permission_required = "agenda_culturel.delete_categorisationrule" @@ -2242,7 +2313,6 @@ class PlaceDetailView(ListView): class PlaceDetailViewPast(PlaceDetailView): - def get_queryset(self): self.place = get_object_or_404(Place, pk=self.kwargs["pk"]) self.past = True @@ -2278,7 +2348,8 @@ class UpdatePlaces: if self.nb_applied > 1: messages.success( - self.request, _("{} events have been updated.").format(self.nb_applied) + self.request, + _("{} events have been updated.").format(self.nb_applied), ) elif self.nb_applied == 1: messages.success(self.request, _("1 event has been updated.")) @@ -2366,11 +2437,13 @@ class UnknownPlaceAddView(PermissionRequiredMixin, SuccessMessageMixin, UpdateVi if form.cleaned_data.get("place"): messages.success( - self.request, _("The selected place has been assigned to the event.") + self.request, + _("The selected place has been assigned to the event."), ) if form.cleaned_data.get("add_alias"): messages.success( - self.request, _("A new alias has been added to the selected place.") + self.request, + _("A new alias has been added to the selected place."), ) nb_applied = form.cleaned_data.get("place").associate_matching_events() @@ -2396,7 +2469,6 @@ class UnknownPlaceAddView(PermissionRequiredMixin, SuccessMessageMixin, UpdateVi class PlaceFromEventCreateView(PlaceCreateView): - def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context["event"] = self.event @@ -2470,7 +2542,6 @@ class OrganisationDetailView(ListView): class OrganisationDetailViewPast(OrganisationDetailView): - def get_queryset(self): self.organisation = ( Organisation.objects.filter(pk=self.kwargs["pk"]) @@ -2595,7 +2666,6 @@ def view_tag(request, t, past=False): def statistics(request): - stats = {} first = {} last = {} @@ -2776,7 +2846,6 @@ def delete_tag(request, t): respage = reverse_lazy("view_all_tags") if request.method == "POST": - # remove tag from events events = Event.objects.filter(tags__contains=[t]) for e in events: @@ -2809,7 +2878,13 @@ def delete_tag(request, t): return render( request, "agenda_culturel/tag_confirm_delete_by_name.html", - {"tag": t, "nb": nb, "nbi": nbi, "cancel_url": cancel_url, "obj": obj}, + { + "tag": t, + "nb": nb, + "nbi": nbi, + "cancel_url": cancel_url, + "obj": obj, + }, ) diff --git a/src/requirements.dev.txt b/src/requirements.dev.txt index ebf2bba..dddb1e8 100644 --- a/src/requirements.dev.txt +++ b/src/requirements.dev.txt @@ -3,6 +3,6 @@ pytest==7.3.1 pytest-django==4.5.2 pytest-sugar==0.9.7 coverage[toml]==7.2.5 -black==23.3.0 -ruff==0.0.265 -pre-commit==4.1.0 \ No newline at end of file +black==25.1.0 +ruff==0.9.9 +pre-commit==4.1.0 diff --git a/src/requirements.txt b/src/requirements.txt index 69f8965..a3fbcd6 100644 --- a/src/requirements.txt +++ b/src/requirements.txt @@ -49,4 +49,4 @@ django-debug-toolbar-template-profiler==2.1.0 requests==2.32.3 django-cleanup==9.0.0 django-unused-media==0.2.2 -django-resized==1.0.3 \ No newline at end of file +django-resized==1.0.3 diff --git a/src/scripts/communes.json b/src/scripts/communes.json index 8ec8063..64a39af 100644 --- a/src/scripts/communes.json +++ b/src/scripts/communes.json @@ -3258,4 +3258,4 @@ "lat": 45.92787609417295 } } -] \ No newline at end of file +] diff --git a/src/scripts/create_fake_events.py b/src/scripts/create_fake_events.py index b78c52a..f9ca8a8 100644 --- a/src/scripts/create_fake_events.py +++ b/src/scripts/create_fake_events.py @@ -1,8 +1,10 @@ -from djipsum.faker import FakerModel -from agenda_culturel.models import Event import random from datetime import datetime, timedelta +from djipsum.faker import FakerModel + +from agenda_culturel.models import Event + def run(): tags = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua." diff --git a/src/scripts/profiling.py b/src/scripts/profiling.py index 137b9ed..c6823fc 100644 --- a/src/scripts/profiling.py +++ b/src/scripts/profiling.py @@ -1,7 +1,8 @@ -from django.test import RequestFactory +import cProfile + import django.urls from django.contrib.auth.models import AnonymousUser -import cProfile +from django.test import RequestFactory # inspiré de https://enix.io/fr/blog/django-performance-profiler/