@mailwoman/corpus 9.2.0 → 9.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +22 -22
- package/data/PROVENANCE.md +7 -7
- package/lib/adapters/ban/adapter.ts +190 -0
- package/lib/adapters/ban/street-decompose.ts +66 -0
- package/lib/adapters/fcc-bdc/adapter.ts +174 -0
- package/lib/adapters/geonames/adapter.ts +199 -0
- package/lib/adapters/geonames-postal/adapter.ts +122 -0
- package/lib/adapters/gnaf/adapter.ts +149 -0
- package/lib/adapters/gnaf/assemble.ts +225 -0
- package/lib/adapters/index.ts +153 -0
- package/lib/adapters/openaddresses/adapter.ts +251 -0
- package/lib/adapters/overture/adapter.ts +162 -0
- package/lib/adapters/state-hi-schools/adapter.ts +170 -0
- package/lib/adapters/state-hi-schools/workbook.ts +35 -0
- package/lib/adapters/synth-po-box/adapter.ts +204 -0
- package/lib/adapters/tiger/adapter.ts +252 -0
- package/lib/adapters/tiger/street-decompose.ts +83 -0
- package/lib/adapters/usgov-hrsa-fqhc/adapter.ts +167 -0
- package/lib/adapters/usgov-imls-pls/adapter.ts +143 -0
- package/lib/adapters/usgov-irs-bmf/adapter.ts +151 -0
- package/lib/adapters/usgov-nad/adapter.ts +334 -0
- package/lib/adapters/usgov-nppes/adapter.ts +151 -0
- package/lib/adapters/usgov-samhsa-treatment-locator/adapter.ts +193 -0
- package/lib/adapters/utils/index.ts +307 -0
- package/lib/adapters/wof-admin-jp/adapter.ts +214 -0
- package/lib/adapters/wof-admin-json/adapter.ts +231 -0
- package/lib/adapters/wof-json-rows.ts +129 -0
- package/lib/adapters/wof-postalcode-json/adapter.ts +176 -0
- package/lib/build.ts +378 -0
- package/lib/env.ts +50 -0
- package/lib/index.ts +13 -0
- package/lib/recipes/anchor-absorption.ts +101 -0
- package/lib/recipes/bare-country.ts +95 -0
- package/lib/recipes/boundary-stress.ts +102 -0
- package/lib/recipes/cn-organizational-units.ts +199 -0
- package/lib/recipes/country-balanced.ts +510 -0
- package/lib/recipes/cz-pcfirst-preposition.ts +112 -0
- package/lib/recipes/fr-admin-split.ts +243 -0
- package/lib/recipes/fr-bare-street.ts +171 -0
- package/lib/recipes/fr-fragment.ts +334 -0
- package/lib/recipes/fr-lieudit.ts +301 -0
- package/lib/recipes/fr-order.ts +246 -0
- package/lib/recipes/german.ts +360 -0
- package/lib/recipes/house-venue.ts +93 -0
- package/lib/recipes/index.ts +97 -0
- package/lib/recipes/intersection.ts +619 -0
- package/lib/recipes/locale.ts +600 -0
- package/lib/recipes/nl-postcode.ts +117 -0
- package/lib/recipes/no-fragment.ts +213 -0
- package/lib/recipes/no-street-led.ts +135 -0
- package/lib/recipes/no-street.ts +91 -0
- package/lib/recipes/po-box-cedex.ts +976 -0
- package/lib/recipes/po-box.ts +124 -0
- package/lib/recipes/reviewed-postcode-tail.ts +190 -0
- package/lib/recipes/scaffold.ts +468 -0
- package/lib/recipes/si-bare-village.ts +99 -0
- package/lib/recipes/street-affix.ts +805 -0
- package/lib/recipes/street-bare.ts +102 -0
- package/lib/recipes/street.ts +83 -0
- package/lib/recipes/sub-venue-sources.ts +878 -0
- package/lib/recipes/sub-venue.ts +998 -0
- package/lib/recipes/trailing-region.ts +178 -0
- package/lib/recipes/unit.ts +304 -0
- package/lib/runner.ts +312 -0
- package/lib/synthesizers/anchor-absorption.ts +288 -0
- package/lib/synthesizers/boundary-stress.ts +532 -0
- package/lib/synthesizers/german.ts +260 -0
- package/lib/synthesizers/house-venue.ts +308 -0
- package/lib/synthesizers/intersection.ts +233 -0
- package/lib/synthesizers/no-street.ts +327 -0
- package/lib/synthesizers/po-box.ts +323 -0
- package/lib/synthesizers/street.ts +269 -0
- package/lib/synthesizers/utils.ts +993 -0
- package/lib/test-kit/corpus-recipe.ts +86 -0
- package/lib/test-kit/index.ts +100 -0
- package/lib/tools/align-slice.ts +68 -0
- package/lib/tools/audit.ts +403 -0
- package/lib/tools/corpus-stats.ts +136 -0
- package/lib/tools/fetch/acra-sg.ts +174 -0
- package/lib/tools/fetch/ban.ts +289 -0
- package/lib/tools/fetch/download.ts +477 -0
- package/lib/tools/fetch/gcis-tw.ts +175 -0
- package/lib/tools/fetch/geonames-dump.ts +257 -0
- package/lib/tools/fetch/geonames-postal.ts +180 -0
- package/lib/tools/fetch/houjin-jp.ts +135 -0
- package/lib/tools/fetch/hrsa.ts +59 -0
- package/lib/tools/fetch/imls-pls.ts +149 -0
- package/lib/tools/fetch/index.ts +174 -0
- package/lib/tools/fetch/juso-kr.ts +165 -0
- package/lib/tools/fetch/localdata-kr.ts +194 -0
- package/lib/tools/fetch/nad.ts +341 -0
- package/lib/tools/fetch/nppes.ts +165 -0
- package/lib/tools/fetch/openaddresses.ts +347 -0
- package/lib/tools/fetch/ourairports.ts +170 -0
- package/lib/tools/fetch/ppd.ts +121 -0
- package/lib/tools/fetch/state-hi-schools.ts +161 -0
- package/lib/tools/fetch/state-sources.ts +146 -0
- package/lib/tools/fetch/tiger-full.ts +308 -0
- package/lib/tools/fetch/wikidata-subvenue.ts +384 -0
- package/lib/tools/golden-expand.ts +574 -0
- package/lib/tools/golden-promote.ts +337 -0
- package/lib/tools/golden-relabel-street.ts +686 -0
- package/lib/tools/index.ts +28 -0
- package/lib/tools/ingest-csv.ts +378 -0
- package/lib/tools/jsonl-to-parquet.ts +207 -0
- package/lib/tools/lint-slice-vocab.ts +388 -0
- package/lib/tools/lint-slice.ts +496 -0
- package/lib/tools/overlay-manifest.ts +148 -0
- package/lib/tools/overture-subvenue.ts +209 -0
- package/lib/tools/postcode-triples.ts +363 -0
- package/lib/tools/slice-kryptonite.ts +137 -0
- package/lib/tools/slice-translit.ts +218 -0
- package/lib/tools/sub-venue/harvest.ts +234 -0
- package/lib/tools/sub-venue/head-nouns.ts +245 -0
- package/lib/tools/sub-venue/surfaces.ts +95 -0
- package/lib/tools/sub-venue/table.ts +281 -0
- package/lib/tools/sub-venue/wikidata.ts +85 -0
- package/lib/tools/sub-venue-lexicon.ts +429 -0
- package/lib/tools/sub-venue-promotions.ts +330 -0
- package/lib/types.ts +247 -0
- package/lib/utils/align.ts +330 -0
- package/lib/utils/golden.ts +189 -0
- package/lib/utils/index.ts +14 -0
- package/lib/utils/parquet.ts +582 -0
- package/lib/utils/slice-stats.ts +95 -0
- package/lib/utils/split.ts +279 -0
- package/lib/utils/tokenize.ts +120 -0
- package/lib/utils/wof-json.ts +247 -0
- package/out/adapters/ban/adapter.d.ts.map +1 -0
- package/out/adapters/ban/adapter.js +149 -0
- package/out/adapters/ban/adapter.js.map +1 -0
- package/out/adapters/ban/street-decompose.d.ts.map +1 -0
- package/out/adapters/ban/street-decompose.js +51 -0
- package/out/adapters/ban/street-decompose.js.map +1 -0
- package/out/adapters/fcc-bdc/adapter.d.ts.map +1 -0
- package/out/adapters/fcc-bdc/adapter.js +144 -0
- package/out/adapters/fcc-bdc/adapter.js.map +1 -0
- package/out/adapters/geonames/adapter.d.ts.map +1 -0
- package/out/adapters/geonames/adapter.js +176 -0
- package/out/adapters/geonames/adapter.js.map +1 -0
- package/out/adapters/geonames-postal/adapter.d.ts +54 -0
- package/out/adapters/geonames-postal/adapter.d.ts.map +1 -0
- package/out/adapters/geonames-postal/adapter.js +107 -0
- package/out/adapters/geonames-postal/adapter.js.map +1 -0
- package/out/adapters/gnaf/adapter.d.ts +49 -0
- package/out/adapters/gnaf/adapter.d.ts.map +1 -0
- package/out/adapters/gnaf/adapter.js +124 -0
- package/out/adapters/gnaf/adapter.js.map +1 -0
- package/out/adapters/gnaf/assemble.d.ts +65 -0
- package/out/adapters/gnaf/assemble.d.ts.map +1 -0
- package/out/adapters/gnaf/assemble.js +154 -0
- package/out/adapters/gnaf/assemble.js.map +1 -0
- package/out/adapters/index.d.ts +51 -0
- package/out/adapters/index.d.ts.map +1 -0
- package/out/adapters/index.js +95 -0
- package/out/adapters/index.js.map +1 -0
- package/out/adapters/openaddresses/adapter.d.ts.map +1 -0
- package/out/adapters/openaddresses/adapter.js +186 -0
- package/out/adapters/openaddresses/adapter.js.map +1 -0
- package/out/adapters/overture/adapter.d.ts +48 -0
- package/out/adapters/overture/adapter.d.ts.map +1 -0
- package/out/adapters/overture/adapter.js +125 -0
- package/out/adapters/overture/adapter.js.map +1 -0
- package/out/adapters/state-hi-schools/adapter.d.ts +46 -0
- package/out/adapters/state-hi-schools/adapter.d.ts.map +1 -0
- package/out/adapters/state-hi-schools/adapter.js +145 -0
- package/out/adapters/state-hi-schools/adapter.js.map +1 -0
- package/out/adapters/state-hi-schools/workbook.d.ts +29 -0
- package/out/adapters/state-hi-schools/workbook.d.ts.map +1 -0
- package/out/adapters/state-hi-schools/workbook.js +20 -0
- package/out/adapters/state-hi-schools/workbook.js.map +1 -0
- package/out/adapters/state-ia-contractors/adapter.d.ts.map +1 -0
- package/out/adapters/state-ia-contractors/adapter.js.map +1 -0
- package/out/adapters/state-ny-notaries/adapter.d.ts.map +1 -0
- package/out/adapters/state-ny-notaries/adapter.js.map +1 -0
- package/out/adapters/state-tx-notaries/adapter.d.ts.map +1 -0
- package/out/adapters/state-tx-notaries/adapter.js.map +1 -0
- package/out/adapters/synth-po-box/adapter.d.ts.map +1 -0
- package/out/adapters/synth-po-box/adapter.js +140 -0
- package/out/adapters/synth-po-box/adapter.js.map +1 -0
- package/out/adapters/tiger/adapter.d.ts +55 -0
- package/out/adapters/tiger/adapter.d.ts.map +1 -0
- package/out/adapters/tiger/adapter.js +201 -0
- package/out/adapters/tiger/adapter.js.map +1 -0
- package/out/adapters/tiger/street-decompose.d.ts.map +1 -0
- package/out/adapters/tiger/street-decompose.js +68 -0
- package/out/adapters/tiger/street-decompose.js.map +1 -0
- package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts +56 -0
- package/out/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +1 -0
- package/out/adapters/usgov-hrsa-fqhc/adapter.js +132 -0
- package/out/adapters/usgov-hrsa-fqhc/adapter.js.map +1 -0
- package/out/adapters/usgov-imls-pls/adapter.d.ts +36 -0
- package/out/adapters/usgov-imls-pls/adapter.d.ts.map +1 -0
- package/out/adapters/usgov-imls-pls/adapter.js +114 -0
- package/out/adapters/usgov-imls-pls/adapter.js.map +1 -0
- package/out/adapters/usgov-irs-bmf/adapter.d.ts +37 -0
- package/out/adapters/usgov-irs-bmf/adapter.d.ts.map +1 -0
- package/out/adapters/usgov-irs-bmf/adapter.js +120 -0
- package/out/adapters/usgov-irs-bmf/adapter.js.map +1 -0
- package/out/adapters/usgov-nad/adapter.d.ts +48 -0
- package/out/adapters/usgov-nad/adapter.d.ts.map +1 -0
- package/out/adapters/usgov-nad/adapter.js +249 -0
- package/out/adapters/usgov-nad/adapter.js.map +1 -0
- package/out/adapters/usgov-nppes/adapter.d.ts.map +1 -0
- package/out/adapters/usgov-nppes/adapter.js +118 -0
- package/out/adapters/usgov-nppes/adapter.js.map +1 -0
- package/out/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +1 -0
- package/out/adapters/usgov-samhsa-treatment-locator/adapter.js +154 -0
- package/out/adapters/usgov-samhsa-treatment-locator/adapter.js.map +1 -0
- package/out/adapters/utils/index.d.ts +191 -0
- package/out/adapters/utils/index.d.ts.map +1 -0
- package/out/adapters/utils/index.js +206 -0
- package/out/adapters/utils/index.js.map +1 -0
- package/out/adapters/wof-admin-jp/adapter.d.ts.map +1 -0
- package/out/adapters/wof-admin-jp/adapter.js +161 -0
- package/out/adapters/wof-admin-jp/adapter.js.map +1 -0
- package/out/adapters/wof-admin-json/adapter.d.ts +79 -0
- package/out/adapters/wof-admin-json/adapter.d.ts.map +1 -0
- package/out/adapters/wof-admin-json/adapter.js +197 -0
- package/out/adapters/wof-admin-json/adapter.js.map +1 -0
- package/out/adapters/wof-json-rows.d.ts +62 -0
- package/out/adapters/wof-json-rows.d.ts.map +1 -0
- package/out/adapters/wof-json-rows.js +83 -0
- package/out/adapters/wof-json-rows.js.map +1 -0
- package/out/adapters/wof-postalcode-json/adapter.d.ts +65 -0
- package/out/adapters/wof-postalcode-json/adapter.d.ts.map +1 -0
- package/out/adapters/wof-postalcode-json/adapter.js +151 -0
- package/out/adapters/wof-postalcode-json/adapter.js.map +1 -0
- package/out/build.d.ts +132 -0
- package/out/build.d.ts.map +1 -0
- package/out/build.js +245 -0
- package/out/build.js.map +1 -0
- package/out/codex/us-fips-state.d.ts.map +1 -0
- package/out/codex/us-fips-state.js.map +1 -0
- package/out/env.d.ts +46 -0
- package/out/env.d.ts.map +1 -0
- package/out/env.js +46 -0
- package/out/env.js.map +1 -0
- package/out/index.d.ts +13 -0
- package/out/index.d.ts.map +1 -0
- package/out/index.js +13 -0
- package/out/index.js.map +1 -0
- package/out/recipes/anchor-absorption.d.ts +20 -0
- package/out/recipes/anchor-absorption.d.ts.map +1 -0
- package/out/recipes/anchor-absorption.js +82 -0
- package/out/recipes/anchor-absorption.js.map +1 -0
- package/out/recipes/bare-country.d.ts +25 -0
- package/out/recipes/bare-country.d.ts.map +1 -0
- package/out/recipes/bare-country.js +88 -0
- package/out/recipes/bare-country.js.map +1 -0
- package/out/recipes/boundary-stress.d.ts +20 -0
- package/out/recipes/boundary-stress.d.ts.map +1 -0
- package/out/recipes/boundary-stress.js +84 -0
- package/out/recipes/boundary-stress.js.map +1 -0
- package/out/recipes/cn-organizational-units.d.ts +36 -0
- package/out/recipes/cn-organizational-units.d.ts.map +1 -0
- package/out/recipes/cn-organizational-units.js +159 -0
- package/out/recipes/cn-organizational-units.js.map +1 -0
- package/out/recipes/country-balanced.d.ts +32 -0
- package/out/recipes/country-balanced.d.ts.map +1 -0
- package/out/recipes/country-balanced.js +394 -0
- package/out/recipes/country-balanced.js.map +1 -0
- package/out/recipes/cz-pcfirst-preposition.d.ts +22 -0
- package/out/recipes/cz-pcfirst-preposition.d.ts.map +1 -0
- package/out/recipes/cz-pcfirst-preposition.js +101 -0
- package/out/recipes/cz-pcfirst-preposition.js.map +1 -0
- package/out/recipes/fr-admin-split.d.ts +38 -0
- package/out/recipes/fr-admin-split.d.ts.map +1 -0
- package/out/recipes/fr-admin-split.js +192 -0
- package/out/recipes/fr-admin-split.js.map +1 -0
- package/out/recipes/fr-bare-street.d.ts +28 -0
- package/out/recipes/fr-bare-street.d.ts.map +1 -0
- package/out/recipes/fr-bare-street.js +144 -0
- package/out/recipes/fr-bare-street.js.map +1 -0
- package/out/recipes/fr-fragment.d.ts +77 -0
- package/out/recipes/fr-fragment.d.ts.map +1 -0
- package/out/recipes/fr-fragment.js +277 -0
- package/out/recipes/fr-fragment.js.map +1 -0
- package/out/recipes/fr-lieudit.d.ts +32 -0
- package/out/recipes/fr-lieudit.d.ts.map +1 -0
- package/out/recipes/fr-lieudit.js +227 -0
- package/out/recipes/fr-lieudit.js.map +1 -0
- package/out/recipes/fr-order.d.ts +38 -0
- package/out/recipes/fr-order.d.ts.map +1 -0
- package/out/recipes/fr-order.js +198 -0
- package/out/recipes/fr-order.js.map +1 -0
- package/out/recipes/german.d.ts +44 -0
- package/out/recipes/german.d.ts.map +1 -0
- package/out/recipes/german.js +289 -0
- package/out/recipes/german.js.map +1 -0
- package/out/recipes/house-venue.d.ts +18 -0
- package/out/recipes/house-venue.d.ts.map +1 -0
- package/out/recipes/house-venue.js +74 -0
- package/out/recipes/house-venue.js.map +1 -0
- package/out/recipes/index.d.ts +24 -0
- package/out/recipes/index.d.ts.map +1 -0
- package/out/recipes/index.js +91 -0
- package/out/recipes/index.js.map +1 -0
- package/out/recipes/intersection.d.ts +42 -0
- package/out/recipes/intersection.d.ts.map +1 -0
- package/out/recipes/intersection.js +453 -0
- package/out/recipes/intersection.js.map +1 -0
- package/out/recipes/locale.d.ts +136 -0
- package/out/recipes/locale.d.ts.map +1 -0
- package/out/recipes/locale.js +460 -0
- package/out/recipes/locale.js.map +1 -0
- package/out/recipes/nl-postcode.d.ts +26 -0
- package/out/recipes/nl-postcode.d.ts.map +1 -0
- package/out/recipes/nl-postcode.js +103 -0
- package/out/recipes/nl-postcode.js.map +1 -0
- package/out/recipes/no-fragment.d.ts +43 -0
- package/out/recipes/no-fragment.d.ts.map +1 -0
- package/out/recipes/no-fragment.js +183 -0
- package/out/recipes/no-fragment.js.map +1 -0
- package/out/recipes/no-street-led.d.ts +24 -0
- package/out/recipes/no-street-led.d.ts.map +1 -0
- package/out/recipes/no-street-led.js +114 -0
- package/out/recipes/no-street-led.js.map +1 -0
- package/out/recipes/no-street.d.ts +18 -0
- package/out/recipes/no-street.d.ts.map +1 -0
- package/out/recipes/no-street.js +72 -0
- package/out/recipes/no-street.js.map +1 -0
- package/out/recipes/po-box-cedex.d.ts +38 -0
- package/out/recipes/po-box-cedex.d.ts.map +1 -0
- package/out/recipes/po-box-cedex.js +768 -0
- package/out/recipes/po-box-cedex.js.map +1 -0
- package/out/recipes/po-box.d.ts +17 -0
- package/out/recipes/po-box.d.ts.map +1 -0
- package/out/recipes/po-box.js +101 -0
- package/out/recipes/po-box.js.map +1 -0
- package/out/recipes/reviewed-postcode-tail.d.ts +47 -0
- package/out/recipes/reviewed-postcode-tail.d.ts.map +1 -0
- package/out/recipes/reviewed-postcode-tail.js +125 -0
- package/out/recipes/reviewed-postcode-tail.js.map +1 -0
- package/out/recipes/scaffold.d.ts +323 -0
- package/out/recipes/scaffold.d.ts.map +1 -0
- package/out/recipes/scaffold.js +174 -0
- package/out/recipes/scaffold.js.map +1 -0
- package/out/recipes/si-bare-village.d.ts +32 -0
- package/out/recipes/si-bare-village.d.ts.map +1 -0
- package/out/recipes/si-bare-village.js +89 -0
- package/out/recipes/si-bare-village.js.map +1 -0
- package/out/recipes/street-affix.d.ts +89 -0
- package/out/recipes/street-affix.d.ts.map +1 -0
- package/out/recipes/street-affix.js +563 -0
- package/out/recipes/street-affix.js.map +1 -0
- package/out/recipes/street-bare.d.ts +25 -0
- package/out/recipes/street-bare.d.ts.map +1 -0
- package/out/recipes/street-bare.js +87 -0
- package/out/recipes/street-bare.js.map +1 -0
- package/out/recipes/street.d.ts +15 -0
- package/out/recipes/street.d.ts.map +1 -0
- package/out/recipes/street.js +70 -0
- package/out/recipes/street.js.map +1 -0
- package/out/recipes/sub-venue-sources.d.ts +229 -0
- package/out/recipes/sub-venue-sources.d.ts.map +1 -0
- package/out/recipes/sub-venue-sources.js +654 -0
- package/out/recipes/sub-venue-sources.js.map +1 -0
- package/out/recipes/sub-venue.d.ts +269 -0
- package/out/recipes/sub-venue.d.ts.map +1 -0
- package/out/recipes/sub-venue.js +726 -0
- package/out/recipes/sub-venue.js.map +1 -0
- package/out/recipes/trailing-region.d.ts +74 -0
- package/out/recipes/trailing-region.d.ts.map +1 -0
- package/out/recipes/trailing-region.js +158 -0
- package/out/recipes/trailing-region.js.map +1 -0
- package/out/recipes/unit.d.ts +29 -0
- package/out/recipes/unit.d.ts.map +1 -0
- package/out/recipes/unit.js +231 -0
- package/out/recipes/unit.js.map +1 -0
- package/out/runner.d.ts +130 -0
- package/out/runner.d.ts.map +1 -0
- package/out/runner.js +185 -0
- package/out/runner.js.map +1 -0
- package/out/synthesizers/anchor-absorption.d.ts +63 -0
- package/out/synthesizers/anchor-absorption.d.ts.map +1 -0
- package/out/synthesizers/anchor-absorption.js +221 -0
- package/out/synthesizers/anchor-absorption.js.map +1 -0
- package/out/synthesizers/boundary-stress.d.ts +78 -0
- package/out/synthesizers/boundary-stress.d.ts.map +1 -0
- package/out/synthesizers/boundary-stress.js +455 -0
- package/out/synthesizers/boundary-stress.js.map +1 -0
- package/out/synthesizers/german.d.ts +115 -0
- package/out/synthesizers/german.d.ts.map +1 -0
- package/out/synthesizers/german.js +149 -0
- package/out/synthesizers/german.js.map +1 -0
- package/out/synthesizers/house-venue.d.ts +56 -0
- package/out/synthesizers/house-venue.d.ts.map +1 -0
- package/out/synthesizers/house-venue.js +247 -0
- package/out/synthesizers/house-venue.js.map +1 -0
- package/out/synthesizers/intersection.d.ts +52 -0
- package/out/synthesizers/intersection.d.ts.map +1 -0
- package/out/synthesizers/intersection.js +175 -0
- package/out/synthesizers/intersection.js.map +1 -0
- package/out/synthesizers/no-street.d.ts +72 -0
- package/out/synthesizers/no-street.d.ts.map +1 -0
- package/out/synthesizers/no-street.js +262 -0
- package/out/synthesizers/no-street.js.map +1 -0
- package/out/synthesizers/po-box.d.ts +108 -0
- package/out/synthesizers/po-box.d.ts.map +1 -0
- package/out/synthesizers/po-box.js +250 -0
- package/out/synthesizers/po-box.js.map +1 -0
- package/out/synthesizers/street.d.ts +54 -0
- package/out/synthesizers/street.d.ts.map +1 -0
- package/out/synthesizers/street.js +218 -0
- package/out/synthesizers/street.js.map +1 -0
- package/out/synthesizers/utils.d.ts +241 -0
- package/out/synthesizers/utils.d.ts.map +1 -0
- package/out/synthesizers/utils.js +776 -0
- package/out/synthesizers/utils.js.map +1 -0
- package/out/test-kit/corpus-recipe.d.ts +59 -0
- package/out/test-kit/corpus-recipe.d.ts.map +1 -0
- package/out/test-kit/corpus-recipe.js +39 -0
- package/out/test-kit/corpus-recipe.js.map +1 -0
- package/out/test-kit/index.d.ts +48 -0
- package/out/test-kit/index.d.ts.map +1 -0
- package/out/test-kit/index.js +78 -0
- package/out/test-kit/index.js.map +1 -0
- package/out/tools/align-slice.d.ts +7 -0
- package/out/tools/align-slice.d.ts.map +1 -0
- package/out/tools/align-slice.js +55 -0
- package/out/tools/align-slice.js.map +1 -0
- package/out/tools/audit.d.ts +29 -0
- package/out/tools/audit.d.ts.map +1 -0
- package/out/tools/audit.js +282 -0
- package/out/tools/audit.js.map +1 -0
- package/out/tools/corpus-stats.d.ts +44 -0
- package/out/tools/corpus-stats.d.ts.map +1 -0
- package/out/tools/corpus-stats.js +102 -0
- package/out/tools/corpus-stats.js.map +1 -0
- package/out/tools/fetch/acra-sg.d.ts +23 -0
- package/out/tools/fetch/acra-sg.d.ts.map +1 -0
- package/out/tools/fetch/acra-sg.js +126 -0
- package/out/tools/fetch/acra-sg.js.map +1 -0
- package/out/tools/fetch/ban.d.ts +31 -0
- package/out/tools/fetch/ban.d.ts.map +1 -0
- package/out/tools/fetch/ban.js +239 -0
- package/out/tools/fetch/ban.js.map +1 -0
- package/out/tools/fetch/download.d.ts +182 -0
- package/out/tools/fetch/download.d.ts.map +1 -0
- package/out/tools/fetch/download.js +318 -0
- package/out/tools/fetch/download.js.map +1 -0
- package/out/tools/fetch/gcis-tw.d.ts +23 -0
- package/out/tools/fetch/gcis-tw.d.ts.map +1 -0
- package/out/tools/fetch/gcis-tw.js +135 -0
- package/out/tools/fetch/gcis-tw.js.map +1 -0
- package/out/tools/fetch/geonames-dump.d.ts +91 -0
- package/out/tools/fetch/geonames-dump.d.ts.map +1 -0
- package/out/tools/fetch/geonames-dump.js +171 -0
- package/out/tools/fetch/geonames-dump.js.map +1 -0
- package/out/tools/fetch/geonames-postal.d.ts +76 -0
- package/out/tools/fetch/geonames-postal.d.ts.map +1 -0
- package/out/tools/fetch/geonames-postal.js +126 -0
- package/out/tools/fetch/geonames-postal.js.map +1 -0
- package/out/tools/fetch/houjin-jp.d.ts +24 -0
- package/out/tools/fetch/houjin-jp.d.ts.map +1 -0
- package/out/tools/fetch/houjin-jp.js +102 -0
- package/out/tools/fetch/houjin-jp.js.map +1 -0
- package/out/tools/fetch/hrsa.d.ts +18 -0
- package/out/tools/fetch/hrsa.d.ts.map +1 -0
- package/out/tools/fetch/hrsa.js +46 -0
- package/out/tools/fetch/hrsa.js.map +1 -0
- package/out/tools/fetch/imls-pls.d.ts +25 -0
- package/out/tools/fetch/imls-pls.d.ts.map +1 -0
- package/out/tools/fetch/imls-pls.js +108 -0
- package/out/tools/fetch/imls-pls.js.map +1 -0
- package/out/tools/fetch/index.d.ts +171 -0
- package/out/tools/fetch/index.d.ts.map +1 -0
- package/out/tools/fetch/index.js +170 -0
- package/out/tools/fetch/index.js.map +1 -0
- package/out/tools/fetch/juso-kr.d.ts +30 -0
- package/out/tools/fetch/juso-kr.d.ts.map +1 -0
- package/out/tools/fetch/juso-kr.js +120 -0
- package/out/tools/fetch/juso-kr.js.map +1 -0
- package/out/tools/fetch/localdata-kr.d.ts +30 -0
- package/out/tools/fetch/localdata-kr.d.ts.map +1 -0
- package/out/tools/fetch/localdata-kr.js +139 -0
- package/out/tools/fetch/localdata-kr.js.map +1 -0
- package/out/tools/fetch/nad.d.ts +70 -0
- package/out/tools/fetch/nad.d.ts.map +1 -0
- package/out/tools/fetch/nad.js +234 -0
- package/out/tools/fetch/nad.js.map +1 -0
- package/out/tools/fetch/nppes.d.ts +26 -0
- package/out/tools/fetch/nppes.d.ts.map +1 -0
- package/out/tools/fetch/nppes.js +126 -0
- package/out/tools/fetch/nppes.js.map +1 -0
- package/out/tools/fetch/openaddresses.d.ts +9 -0
- package/out/tools/fetch/openaddresses.d.ts.map +1 -0
- package/out/tools/fetch/openaddresses.js +279 -0
- package/out/tools/fetch/openaddresses.js.map +1 -0
- package/out/tools/fetch/ourairports.d.ts +45 -0
- package/out/tools/fetch/ourairports.d.ts.map +1 -0
- package/out/tools/fetch/ourairports.js +128 -0
- package/out/tools/fetch/ourairports.js.map +1 -0
- package/out/tools/fetch/ppd.d.ts.map +1 -0
- package/out/tools/fetch/ppd.js +85 -0
- package/out/tools/fetch/ppd.js.map +1 -0
- package/out/tools/fetch/state-hi-schools.d.ts +26 -0
- package/out/tools/fetch/state-hi-schools.d.ts.map +1 -0
- package/out/tools/fetch/state-hi-schools.js +112 -0
- package/out/tools/fetch/state-hi-schools.js.map +1 -0
- package/out/tools/fetch/state-sources.d.ts +26 -0
- package/out/tools/fetch/state-sources.d.ts.map +1 -0
- package/out/tools/fetch/state-sources.js +111 -0
- package/out/tools/fetch/state-sources.js.map +1 -0
- package/out/tools/fetch/tiger-full.d.ts +22 -0
- package/out/tools/fetch/tiger-full.d.ts.map +1 -0
- package/out/tools/fetch/tiger-full.js +217 -0
- package/out/tools/fetch/tiger-full.js.map +1 -0
- package/out/tools/fetch/wikidata-subvenue.d.ts +171 -0
- package/out/tools/fetch/wikidata-subvenue.d.ts.map +1 -0
- package/out/tools/fetch/wikidata-subvenue.js +274 -0
- package/out/tools/fetch/wikidata-subvenue.js.map +1 -0
- package/out/tools/gb-title-case.d.ts.map +1 -0
- package/out/tools/gb-title-case.js.map +1 -0
- package/out/tools/golden-expand.d.ts +90 -0
- package/out/tools/golden-expand.d.ts.map +1 -0
- package/out/tools/golden-expand.js +406 -0
- package/out/tools/golden-expand.js.map +1 -0
- package/out/tools/golden-promote.d.ts.map +1 -0
- package/out/tools/golden-promote.js +240 -0
- package/out/tools/golden-promote.js.map +1 -0
- package/out/tools/golden-relabel-street.d.ts +196 -0
- package/out/tools/golden-relabel-street.d.ts.map +1 -0
- package/out/tools/golden-relabel-street.js +439 -0
- package/out/tools/golden-relabel-street.js.map +1 -0
- package/out/tools/index.d.ts +28 -0
- package/out/tools/index.d.ts.map +1 -0
- package/out/tools/index.js +28 -0
- package/out/tools/index.js.map +1 -0
- package/out/tools/ingest-csv.d.ts.map +1 -0
- package/out/tools/ingest-csv.js +265 -0
- package/out/tools/ingest-csv.js.map +1 -0
- package/out/tools/jsonl-to-parquet.d.ts +61 -0
- package/out/tools/jsonl-to-parquet.d.ts.map +1 -0
- package/out/tools/jsonl-to-parquet.js +150 -0
- package/out/tools/jsonl-to-parquet.js.map +1 -0
- package/out/tools/lint-slice-vocab.d.ts +90 -0
- package/out/tools/lint-slice-vocab.d.ts.map +1 -0
- package/out/tools/lint-slice-vocab.js +267 -0
- package/out/tools/lint-slice-vocab.js.map +1 -0
- package/out/tools/lint-slice.d.ts +93 -0
- package/out/tools/lint-slice.d.ts.map +1 -0
- package/out/tools/lint-slice.js +322 -0
- package/out/tools/lint-slice.js.map +1 -0
- package/out/tools/overlay-manifest.d.ts +39 -0
- package/out/tools/overlay-manifest.d.ts.map +1 -0
- package/out/tools/overlay-manifest.js +90 -0
- package/out/tools/overlay-manifest.js.map +1 -0
- package/out/tools/overture-subvenue.d.ts +112 -0
- package/out/tools/overture-subvenue.d.ts.map +1 -0
- package/out/tools/overture-subvenue.js +139 -0
- package/out/tools/overture-subvenue.js.map +1 -0
- package/out/tools/postcode-triples.d.ts +174 -0
- package/out/tools/postcode-triples.d.ts.map +1 -0
- package/out/tools/postcode-triples.js +292 -0
- package/out/tools/postcode-triples.js.map +1 -0
- package/out/tools/slice-kryptonite.d.ts +32 -0
- package/out/tools/slice-kryptonite.d.ts.map +1 -0
- package/out/tools/slice-kryptonite.js +99 -0
- package/out/tools/slice-kryptonite.js.map +1 -0
- package/out/tools/slice-translit.d.ts +51 -0
- package/out/tools/slice-translit.d.ts.map +1 -0
- package/out/tools/slice-translit.js +166 -0
- package/out/tools/slice-translit.js.map +1 -0
- package/out/tools/sub-venue/harvest.d.ts +100 -0
- package/out/tools/sub-venue/harvest.d.ts.map +1 -0
- package/out/tools/sub-venue/harvest.js +168 -0
- package/out/tools/sub-venue/harvest.js.map +1 -0
- package/out/tools/sub-venue/head-nouns.d.ts +50 -0
- package/out/tools/sub-venue/head-nouns.d.ts.map +1 -0
- package/out/tools/sub-venue/head-nouns.js +213 -0
- package/out/tools/sub-venue/head-nouns.js.map +1 -0
- package/out/tools/sub-venue/surfaces.d.ts +45 -0
- package/out/tools/sub-venue/surfaces.d.ts.map +1 -0
- package/out/tools/sub-venue/surfaces.js +77 -0
- package/out/tools/sub-venue/surfaces.js.map +1 -0
- package/out/tools/sub-venue/table.d.ts +229 -0
- package/out/tools/sub-venue/table.d.ts.map +1 -0
- package/out/tools/sub-venue/table.js +108 -0
- package/out/tools/sub-venue/table.js.map +1 -0
- package/out/tools/sub-venue/wikidata.d.ts +26 -0
- package/out/tools/sub-venue/wikidata.d.ts.map +1 -0
- package/out/tools/sub-venue/wikidata.js +62 -0
- package/out/tools/sub-venue/wikidata.js.map +1 -0
- package/out/tools/sub-venue-lexicon.d.ts +156 -0
- package/out/tools/sub-venue-lexicon.d.ts.map +1 -0
- package/out/tools/sub-venue-lexicon.js +283 -0
- package/out/tools/sub-venue-lexicon.js.map +1 -0
- package/out/tools/sub-venue-promotions.d.ts +94 -0
- package/out/tools/sub-venue-promotions.d.ts.map +1 -0
- package/out/tools/sub-venue-promotions.js +266 -0
- package/out/tools/sub-venue-promotions.js.map +1 -0
- package/out/types.d.ts +221 -0
- package/out/types.d.ts.map +1 -0
- package/out/types.js.map +1 -0
- package/out/utils/align.d.ts +93 -0
- package/out/utils/align.d.ts.map +1 -0
- package/out/utils/align.js +234 -0
- package/out/utils/align.js.map +1 -0
- package/out/utils/golden.d.ts +85 -0
- package/out/utils/golden.d.ts.map +1 -0
- package/out/utils/golden.js +127 -0
- package/out/utils/golden.js.map +1 -0
- package/out/utils/index.d.ts +14 -0
- package/out/utils/index.d.ts.map +1 -0
- package/out/utils/index.js +14 -0
- package/out/utils/index.js.map +1 -0
- package/out/utils/license.d.ts.map +1 -0
- package/out/utils/license.js.map +1 -0
- package/out/utils/parquet.d.ts +178 -0
- package/out/utils/parquet.d.ts.map +1 -0
- package/out/utils/parquet.js +371 -0
- package/out/utils/parquet.js.map +1 -0
- package/out/utils/slice-stats.d.ts +52 -0
- package/out/utils/slice-stats.d.ts.map +1 -0
- package/out/utils/slice-stats.js +58 -0
- package/out/utils/slice-stats.js.map +1 -0
- package/out/utils/split.d.ts +128 -0
- package/out/utils/split.d.ts.map +1 -0
- package/out/utils/split.js +204 -0
- package/out/utils/split.js.map +1 -0
- package/out/utils/tokenize.d.ts +64 -0
- package/out/utils/tokenize.d.ts.map +1 -0
- package/out/utils/tokenize.js +82 -0
- package/out/utils/tokenize.js.map +1 -0
- package/out/utils/wof-json.d.ts +113 -0
- package/out/utils/wof-json.d.ts.map +1 -0
- package/out/utils/wof-json.js +173 -0
- package/out/utils/wof-json.js.map +1 -0
- package/package.json +259 -194
- package/out/src/adapters/ban/adapter.d.ts.map +0 -1
- package/out/src/adapters/ban/adapter.js +0 -149
- package/out/src/adapters/ban/adapter.js.map +0 -1
- package/out/src/adapters/ban/street-decompose.d.ts.map +0 -1
- package/out/src/adapters/ban/street-decompose.js +0 -75
- package/out/src/adapters/ban/street-decompose.js.map +0 -1
- package/out/src/adapters/fcc-bdc/adapter.d.ts.map +0 -1
- package/out/src/adapters/fcc-bdc/adapter.js +0 -144
- package/out/src/adapters/fcc-bdc/adapter.js.map +0 -1
- package/out/src/adapters/geonames/adapter.d.ts.map +0 -1
- package/out/src/adapters/geonames/adapter.js +0 -176
- package/out/src/adapters/geonames/adapter.js.map +0 -1
- package/out/src/adapters/geonames-postal/adapter.d.ts +0 -41
- package/out/src/adapters/geonames-postal/adapter.d.ts.map +0 -1
- package/out/src/adapters/geonames-postal/adapter.js +0 -104
- package/out/src/adapters/geonames-postal/adapter.js.map +0 -1
- package/out/src/adapters/gnaf/adapter.d.ts +0 -49
- package/out/src/adapters/gnaf/adapter.d.ts.map +0 -1
- package/out/src/adapters/gnaf/adapter.js +0 -124
- package/out/src/adapters/gnaf/adapter.js.map +0 -1
- package/out/src/adapters/gnaf/assemble.d.ts +0 -65
- package/out/src/adapters/gnaf/assemble.d.ts.map +0 -1
- package/out/src/adapters/gnaf/assemble.js +0 -154
- package/out/src/adapters/gnaf/assemble.js.map +0 -1
- package/out/src/adapters/index.d.ts +0 -51
- package/out/src/adapters/index.d.ts.map +0 -1
- package/out/src/adapters/index.js +0 -95
- package/out/src/adapters/index.js.map +0 -1
- package/out/src/adapters/openaddresses/adapter.d.ts.map +0 -1
- package/out/src/adapters/openaddresses/adapter.js +0 -186
- package/out/src/adapters/openaddresses/adapter.js.map +0 -1
- package/out/src/adapters/overture/adapter.d.ts +0 -48
- package/out/src/adapters/overture/adapter.d.ts.map +0 -1
- package/out/src/adapters/overture/adapter.js +0 -125
- package/out/src/adapters/overture/adapter.js.map +0 -1
- package/out/src/adapters/state-hi-schools/adapter.d.ts +0 -47
- package/out/src/adapters/state-hi-schools/adapter.d.ts.map +0 -1
- package/out/src/adapters/state-hi-schools/adapter.js +0 -133
- package/out/src/adapters/state-hi-schools/adapter.js.map +0 -1
- package/out/src/adapters/state-ia-contractors/adapter.d.ts.map +0 -1
- package/out/src/adapters/state-ia-contractors/adapter.js.map +0 -1
- package/out/src/adapters/state-ny-notaries/adapter.d.ts.map +0 -1
- package/out/src/adapters/state-ny-notaries/adapter.js.map +0 -1
- package/out/src/adapters/state-tx-notaries/adapter.d.ts.map +0 -1
- package/out/src/adapters/state-tx-notaries/adapter.js.map +0 -1
- package/out/src/adapters/synth-po-box/adapter.d.ts.map +0 -1
- package/out/src/adapters/synth-po-box/adapter.js +0 -140
- package/out/src/adapters/synth-po-box/adapter.js.map +0 -1
- package/out/src/adapters/tiger/adapter.d.ts +0 -55
- package/out/src/adapters/tiger/adapter.d.ts.map +0 -1
- package/out/src/adapters/tiger/adapter.js +0 -201
- package/out/src/adapters/tiger/adapter.js.map +0 -1
- package/out/src/adapters/tiger/street-decompose.d.ts.map +0 -1
- package/out/src/adapters/tiger/street-decompose.js +0 -90
- package/out/src/adapters/tiger/street-decompose.js.map +0 -1
- package/out/src/adapters/usgov-hrsa-fqhc/adapter.d.ts +0 -47
- package/out/src/adapters/usgov-hrsa-fqhc/adapter.d.ts.map +0 -1
- package/out/src/adapters/usgov-hrsa-fqhc/adapter.js +0 -139
- package/out/src/adapters/usgov-hrsa-fqhc/adapter.js.map +0 -1
- package/out/src/adapters/usgov-imls-pls/adapter.d.ts +0 -36
- package/out/src/adapters/usgov-imls-pls/adapter.d.ts.map +0 -1
- package/out/src/adapters/usgov-imls-pls/adapter.js +0 -114
- package/out/src/adapters/usgov-imls-pls/adapter.js.map +0 -1
- package/out/src/adapters/usgov-irs-bmf/adapter.d.ts +0 -37
- package/out/src/adapters/usgov-irs-bmf/adapter.d.ts.map +0 -1
- package/out/src/adapters/usgov-irs-bmf/adapter.js +0 -124
- package/out/src/adapters/usgov-irs-bmf/adapter.js.map +0 -1
- package/out/src/adapters/usgov-nad/adapter.d.ts +0 -48
- package/out/src/adapters/usgov-nad/adapter.d.ts.map +0 -1
- package/out/src/adapters/usgov-nad/adapter.js +0 -252
- package/out/src/adapters/usgov-nad/adapter.js.map +0 -1
- package/out/src/adapters/usgov-nppes/adapter.d.ts.map +0 -1
- package/out/src/adapters/usgov-nppes/adapter.js +0 -116
- package/out/src/adapters/usgov-nppes/adapter.js.map +0 -1
- package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.d.ts.map +0 -1
- package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.js +0 -156
- package/out/src/adapters/usgov-samhsa-treatment-locator/adapter.js.map +0 -1
- package/out/src/adapters/utils/index.d.ts +0 -150
- package/out/src/adapters/utils/index.d.ts.map +0 -1
- package/out/src/adapters/utils/index.js +0 -159
- package/out/src/adapters/utils/index.js.map +0 -1
- package/out/src/adapters/wof-admin-jp/adapter.d.ts.map +0 -1
- package/out/src/adapters/wof-admin-jp/adapter.js +0 -164
- package/out/src/adapters/wof-admin-jp/adapter.js.map +0 -1
- package/out/src/adapters/wof-admin-json/adapter.d.ts +0 -82
- package/out/src/adapters/wof-admin-json/adapter.d.ts.map +0 -1
- package/out/src/adapters/wof-admin-json/adapter.js +0 -224
- package/out/src/adapters/wof-admin-json/adapter.js.map +0 -1
- package/out/src/adapters/wof-json-rows.d.ts +0 -32
- package/out/src/adapters/wof-json-rows.d.ts.map +0 -1
- package/out/src/adapters/wof-json-rows.js +0 -45
- package/out/src/adapters/wof-json-rows.js.map +0 -1
- package/out/src/adapters/wof-postalcode-json/adapter.d.ts +0 -65
- package/out/src/adapters/wof-postalcode-json/adapter.d.ts.map +0 -1
- package/out/src/adapters/wof-postalcode-json/adapter.js +0 -160
- package/out/src/adapters/wof-postalcode-json/adapter.js.map +0 -1
- package/out/src/build.d.ts +0 -132
- package/out/src/build.d.ts.map +0 -1
- package/out/src/build.js +0 -251
- package/out/src/build.js.map +0 -1
- package/out/src/codex/us-fips-state.d.ts.map +0 -1
- package/out/src/codex/us-fips-state.js.map +0 -1
- package/out/src/index.d.ts +0 -14
- package/out/src/index.d.ts.map +0 -1
- package/out/src/index.js +0 -14
- package/out/src/index.js.map +0 -1
- package/out/src/name-prone-us-suffixes.d.ts +0 -12
- package/out/src/name-prone-us-suffixes.d.ts.map +0 -1
- package/out/src/name-prone-us-suffixes.js +0 -12
- package/out/src/name-prone-us-suffixes.js.map +0 -1
- package/out/src/parquet-wrapper/index.d.ts +0 -9
- package/out/src/parquet-wrapper/index.d.ts.map +0 -1
- package/out/src/parquet-wrapper/index.js +0 -9
- package/out/src/parquet-wrapper/index.js.map +0 -1
- package/out/src/parquet-wrapper/reader.d.ts +0 -34
- package/out/src/parquet-wrapper/reader.d.ts.map +0 -1
- package/out/src/parquet-wrapper/reader.js +0 -69
- package/out/src/parquet-wrapper/reader.js.map +0 -1
- package/out/src/parquet-wrapper/schema.d.ts +0 -49
- package/out/src/parquet-wrapper/schema.d.ts.map +0 -1
- package/out/src/parquet-wrapper/schema.js +0 -55
- package/out/src/parquet-wrapper/schema.js.map +0 -1
- package/out/src/parquet-wrapper/writer.d.ts +0 -46
- package/out/src/parquet-wrapper/writer.d.ts.map +0 -1
- package/out/src/parquet-wrapper/writer.js +0 -76
- package/out/src/parquet-wrapper/writer.js.map +0 -1
- package/out/src/runner.d.ts +0 -126
- package/out/src/runner.d.ts.map +0 -1
- package/out/src/runner.js +0 -189
- package/out/src/runner.js.map +0 -1
- package/out/src/shard-recipes/anchor-absorption.d.ts +0 -20
- package/out/src/shard-recipes/anchor-absorption.d.ts.map +0 -1
- package/out/src/shard-recipes/anchor-absorption.js +0 -82
- package/out/src/shard-recipes/anchor-absorption.js.map +0 -1
- package/out/src/shard-recipes/bare-country.d.ts +0 -25
- package/out/src/shard-recipes/bare-country.d.ts.map +0 -1
- package/out/src/shard-recipes/bare-country.js +0 -87
- package/out/src/shard-recipes/bare-country.js.map +0 -1
- package/out/src/shard-recipes/boundary-stress.d.ts +0 -20
- package/out/src/shard-recipes/boundary-stress.d.ts.map +0 -1
- package/out/src/shard-recipes/boundary-stress.js +0 -83
- package/out/src/shard-recipes/boundary-stress.js.map +0 -1
- package/out/src/shard-recipes/country-balanced.d.ts +0 -32
- package/out/src/shard-recipes/country-balanced.d.ts.map +0 -1
- package/out/src/shard-recipes/country-balanced.js +0 -406
- package/out/src/shard-recipes/country-balanced.js.map +0 -1
- package/out/src/shard-recipes/cz-pcfirst-preposition.d.ts +0 -22
- package/out/src/shard-recipes/cz-pcfirst-preposition.d.ts.map +0 -1
- package/out/src/shard-recipes/cz-pcfirst-preposition.js +0 -100
- package/out/src/shard-recipes/cz-pcfirst-preposition.js.map +0 -1
- package/out/src/shard-recipes/fr-admin-split.d.ts +0 -38
- package/out/src/shard-recipes/fr-admin-split.d.ts.map +0 -1
- package/out/src/shard-recipes/fr-admin-split.js +0 -188
- package/out/src/shard-recipes/fr-admin-split.js.map +0 -1
- package/out/src/shard-recipes/fr-bare-street.d.ts +0 -28
- package/out/src/shard-recipes/fr-bare-street.d.ts.map +0 -1
- package/out/src/shard-recipes/fr-bare-street.js +0 -143
- package/out/src/shard-recipes/fr-bare-street.js.map +0 -1
- package/out/src/shard-recipes/fr-fragment.d.ts +0 -77
- package/out/src/shard-recipes/fr-fragment.d.ts.map +0 -1
- package/out/src/shard-recipes/fr-fragment.js +0 -276
- package/out/src/shard-recipes/fr-fragment.js.map +0 -1
- package/out/src/shard-recipes/fr-lieudit.d.ts +0 -32
- package/out/src/shard-recipes/fr-lieudit.d.ts.map +0 -1
- package/out/src/shard-recipes/fr-lieudit.js +0 -226
- package/out/src/shard-recipes/fr-lieudit.js.map +0 -1
- package/out/src/shard-recipes/fr-order.d.ts +0 -38
- package/out/src/shard-recipes/fr-order.d.ts.map +0 -1
- package/out/src/shard-recipes/fr-order.js +0 -208
- package/out/src/shard-recipes/fr-order.js.map +0 -1
- package/out/src/shard-recipes/german.d.ts +0 -23
- package/out/src/shard-recipes/german.d.ts.map +0 -1
- package/out/src/shard-recipes/german.js +0 -132
- package/out/src/shard-recipes/german.js.map +0 -1
- package/out/src/shard-recipes/house-venue.d.ts +0 -18
- package/out/src/shard-recipes/house-venue.d.ts.map +0 -1
- package/out/src/shard-recipes/house-venue.js +0 -74
- package/out/src/shard-recipes/house-venue.js.map +0 -1
- package/out/src/shard-recipes/index.d.ts +0 -24
- package/out/src/shard-recipes/index.d.ts.map +0 -1
- package/out/src/shard-recipes/index.js +0 -89
- package/out/src/shard-recipes/index.js.map +0 -1
- package/out/src/shard-recipes/intersection.d.ts +0 -42
- package/out/src/shard-recipes/intersection.d.ts.map +0 -1
- package/out/src/shard-recipes/intersection.js +0 -460
- package/out/src/shard-recipes/intersection.js.map +0 -1
- package/out/src/shard-recipes/locale.d.ts +0 -135
- package/out/src/shard-recipes/locale.d.ts.map +0 -1
- package/out/src/shard-recipes/locale.js +0 -459
- package/out/src/shard-recipes/locale.js.map +0 -1
- package/out/src/shard-recipes/nl-postcode.d.ts +0 -26
- package/out/src/shard-recipes/nl-postcode.d.ts.map +0 -1
- package/out/src/shard-recipes/nl-postcode.js +0 -102
- package/out/src/shard-recipes/nl-postcode.js.map +0 -1
- package/out/src/shard-recipes/no-fragment.d.ts +0 -43
- package/out/src/shard-recipes/no-fragment.d.ts.map +0 -1
- package/out/src/shard-recipes/no-fragment.js +0 -188
- package/out/src/shard-recipes/no-fragment.js.map +0 -1
- package/out/src/shard-recipes/no-street-led.d.ts +0 -24
- package/out/src/shard-recipes/no-street-led.d.ts.map +0 -1
- package/out/src/shard-recipes/no-street-led.js +0 -121
- package/out/src/shard-recipes/no-street-led.js.map +0 -1
- package/out/src/shard-recipes/no-street.d.ts +0 -18
- package/out/src/shard-recipes/no-street.d.ts.map +0 -1
- package/out/src/shard-recipes/no-street.js +0 -72
- package/out/src/shard-recipes/no-street.js.map +0 -1
- package/out/src/shard-recipes/po-box-cedex.d.ts +0 -38
- package/out/src/shard-recipes/po-box-cedex.d.ts.map +0 -1
- package/out/src/shard-recipes/po-box-cedex.js +0 -726
- package/out/src/shard-recipes/po-box-cedex.js.map +0 -1
- package/out/src/shard-recipes/po-box.d.ts +0 -17
- package/out/src/shard-recipes/po-box.d.ts.map +0 -1
- package/out/src/shard-recipes/po-box.js +0 -101
- package/out/src/shard-recipes/po-box.js.map +0 -1
- package/out/src/shard-recipes/reviewed-postcode-tail.d.ts +0 -47
- package/out/src/shard-recipes/reviewed-postcode-tail.d.ts.map +0 -1
- package/out/src/shard-recipes/reviewed-postcode-tail.js +0 -125
- package/out/src/shard-recipes/reviewed-postcode-tail.js.map +0 -1
- package/out/src/shard-recipes/scaffold.d.ts +0 -246
- package/out/src/shard-recipes/scaffold.d.ts.map +0 -1
- package/out/src/shard-recipes/scaffold.js +0 -137
- package/out/src/shard-recipes/scaffold.js.map +0 -1
- package/out/src/shard-recipes/si-bare-village.d.ts +0 -32
- package/out/src/shard-recipes/si-bare-village.d.ts.map +0 -1
- package/out/src/shard-recipes/si-bare-village.js +0 -88
- package/out/src/shard-recipes/si-bare-village.js.map +0 -1
- package/out/src/shard-recipes/street-affix.d.ts +0 -89
- package/out/src/shard-recipes/street-affix.d.ts.map +0 -1
- package/out/src/shard-recipes/street-affix.js +0 -578
- package/out/src/shard-recipes/street-affix.js.map +0 -1
- package/out/src/shard-recipes/street-bare.d.ts +0 -25
- package/out/src/shard-recipes/street-bare.d.ts.map +0 -1
- package/out/src/shard-recipes/street-bare.js +0 -86
- package/out/src/shard-recipes/street-bare.js.map +0 -1
- package/out/src/shard-recipes/street.d.ts +0 -15
- package/out/src/shard-recipes/street.d.ts.map +0 -1
- package/out/src/shard-recipes/street.js +0 -69
- package/out/src/shard-recipes/street.js.map +0 -1
- package/out/src/shard-recipes/sub-venue-sources.d.ts +0 -228
- package/out/src/shard-recipes/sub-venue-sources.d.ts.map +0 -1
- package/out/src/shard-recipes/sub-venue-sources.js +0 -664
- package/out/src/shard-recipes/sub-venue-sources.js.map +0 -1
- package/out/src/shard-recipes/sub-venue.d.ts +0 -269
- package/out/src/shard-recipes/sub-venue.d.ts.map +0 -1
- package/out/src/shard-recipes/sub-venue.js +0 -710
- package/out/src/shard-recipes/sub-venue.js.map +0 -1
- package/out/src/shard-recipes/trailing-region.d.ts +0 -74
- package/out/src/shard-recipes/trailing-region.d.ts.map +0 -1
- package/out/src/shard-recipes/trailing-region.js +0 -157
- package/out/src/shard-recipes/trailing-region.js.map +0 -1
- package/out/src/shard-recipes/unit.d.ts +0 -29
- package/out/src/shard-recipes/unit.d.ts.map +0 -1
- package/out/src/shard-recipes/unit.js +0 -243
- package/out/src/shard-recipes/unit.js.map +0 -1
- package/out/src/synthesizers/anchor-absorption.d.ts +0 -63
- package/out/src/synthesizers/anchor-absorption.d.ts.map +0 -1
- package/out/src/synthesizers/anchor-absorption.js +0 -223
- package/out/src/synthesizers/anchor-absorption.js.map +0 -1
- package/out/src/synthesizers/boundary-stress.d.ts +0 -78
- package/out/src/synthesizers/boundary-stress.d.ts.map +0 -1
- package/out/src/synthesizers/boundary-stress.js +0 -455
- package/out/src/synthesizers/boundary-stress.js.map +0 -1
- package/out/src/synthesizers/german.d.ts +0 -107
- package/out/src/synthesizers/german.d.ts.map +0 -1
- package/out/src/synthesizers/german.js +0 -148
- package/out/src/synthesizers/german.js.map +0 -1
- package/out/src/synthesizers/house-venue.d.ts +0 -56
- package/out/src/synthesizers/house-venue.d.ts.map +0 -1
- package/out/src/synthesizers/house-venue.js +0 -267
- package/out/src/synthesizers/house-venue.js.map +0 -1
- package/out/src/synthesizers/intersection.d.ts +0 -52
- package/out/src/synthesizers/intersection.d.ts.map +0 -1
- package/out/src/synthesizers/intersection.js +0 -175
- package/out/src/synthesizers/intersection.js.map +0 -1
- package/out/src/synthesizers/no-street.d.ts +0 -72
- package/out/src/synthesizers/no-street.d.ts.map +0 -1
- package/out/src/synthesizers/no-street.js +0 -282
- package/out/src/synthesizers/no-street.js.map +0 -1
- package/out/src/synthesizers/po-box.d.ts +0 -104
- package/out/src/synthesizers/po-box.d.ts.map +0 -1
- package/out/src/synthesizers/po-box.js +0 -266
- package/out/src/synthesizers/po-box.js.map +0 -1
- package/out/src/synthesizers/street.d.ts +0 -54
- package/out/src/synthesizers/street.d.ts.map +0 -1
- package/out/src/synthesizers/street.js +0 -221
- package/out/src/synthesizers/street.js.map +0 -1
- package/out/src/synthesizers/utils.d.ts +0 -203
- package/out/src/synthesizers/utils.d.ts.map +0 -1
- package/out/src/synthesizers/utils.js +0 -708
- package/out/src/synthesizers/utils.js.map +0 -1
- package/out/src/tools/align-shard.d.ts +0 -8
- package/out/src/tools/align-shard.d.ts.map +0 -1
- package/out/src/tools/align-shard.js +0 -56
- package/out/src/tools/align-shard.js.map +0 -1
- package/out/src/tools/audit.d.ts +0 -28
- package/out/src/tools/audit.d.ts.map +0 -1
- package/out/src/tools/audit.js +0 -285
- package/out/src/tools/audit.js.map +0 -1
- package/out/src/tools/corpus-stats.d.ts +0 -44
- package/out/src/tools/corpus-stats.d.ts.map +0 -1
- package/out/src/tools/corpus-stats.js +0 -138
- package/out/src/tools/corpus-stats.js.map +0 -1
- package/out/src/tools/fetch/ban.d.ts +0 -31
- package/out/src/tools/fetch/ban.d.ts.map +0 -1
- package/out/src/tools/fetch/ban.js +0 -239
- package/out/src/tools/fetch/ban.js.map +0 -1
- package/out/src/tools/fetch/download.d.ts +0 -78
- package/out/src/tools/fetch/download.d.ts.map +0 -1
- package/out/src/tools/fetch/download.js +0 -116
- package/out/src/tools/fetch/download.js.map +0 -1
- package/out/src/tools/fetch/geonames-dump.d.ts +0 -87
- package/out/src/tools/fetch/geonames-dump.d.ts.map +0 -1
- package/out/src/tools/fetch/geonames-dump.js +0 -178
- package/out/src/tools/fetch/geonames-dump.js.map +0 -1
- package/out/src/tools/fetch/geonames-postal.d.ts +0 -76
- package/out/src/tools/fetch/geonames-postal.d.ts.map +0 -1
- package/out/src/tools/fetch/geonames-postal.js +0 -125
- package/out/src/tools/fetch/geonames-postal.js.map +0 -1
- package/out/src/tools/fetch/hrsa.d.ts +0 -18
- package/out/src/tools/fetch/hrsa.d.ts.map +0 -1
- package/out/src/tools/fetch/hrsa.js +0 -46
- package/out/src/tools/fetch/hrsa.js.map +0 -1
- package/out/src/tools/fetch/imls-pls.d.ts +0 -25
- package/out/src/tools/fetch/imls-pls.d.ts.map +0 -1
- package/out/src/tools/fetch/imls-pls.js +0 -108
- package/out/src/tools/fetch/imls-pls.js.map +0 -1
- package/out/src/tools/fetch/index.d.ts +0 -144
- package/out/src/tools/fetch/index.d.ts.map +0 -1
- package/out/src/tools/fetch/index.js +0 -143
- package/out/src/tools/fetch/index.js.map +0 -1
- package/out/src/tools/fetch/nad.d.ts +0 -70
- package/out/src/tools/fetch/nad.d.ts.map +0 -1
- package/out/src/tools/fetch/nad.js +0 -234
- package/out/src/tools/fetch/nad.js.map +0 -1
- package/out/src/tools/fetch/nppes.d.ts +0 -26
- package/out/src/tools/fetch/nppes.d.ts.map +0 -1
- package/out/src/tools/fetch/nppes.js +0 -126
- package/out/src/tools/fetch/nppes.js.map +0 -1
- package/out/src/tools/fetch/openaddresses.d.ts +0 -61
- package/out/src/tools/fetch/openaddresses.d.ts.map +0 -1
- package/out/src/tools/fetch/openaddresses.js +0 -317
- package/out/src/tools/fetch/openaddresses.js.map +0 -1
- package/out/src/tools/fetch/ourairports.d.ts +0 -45
- package/out/src/tools/fetch/ourairports.d.ts.map +0 -1
- package/out/src/tools/fetch/ourairports.js +0 -128
- package/out/src/tools/fetch/ourairports.js.map +0 -1
- package/out/src/tools/fetch/ppd.d.ts.map +0 -1
- package/out/src/tools/fetch/ppd.js +0 -100
- package/out/src/tools/fetch/ppd.js.map +0 -1
- package/out/src/tools/fetch/state-hi-schools.d.ts +0 -25
- package/out/src/tools/fetch/state-hi-schools.d.ts.map +0 -1
- package/out/src/tools/fetch/state-hi-schools.js +0 -162
- package/out/src/tools/fetch/state-hi-schools.js.map +0 -1
- package/out/src/tools/fetch/state-sources.d.ts +0 -26
- package/out/src/tools/fetch/state-sources.d.ts.map +0 -1
- package/out/src/tools/fetch/state-sources.js +0 -111
- package/out/src/tools/fetch/state-sources.js.map +0 -1
- package/out/src/tools/fetch/tiger-full.d.ts +0 -42
- package/out/src/tools/fetch/tiger-full.d.ts.map +0 -1
- package/out/src/tools/fetch/tiger-full.js +0 -248
- package/out/src/tools/fetch/tiger-full.js.map +0 -1
- package/out/src/tools/fetch/wikidata-subvenue.d.ts +0 -171
- package/out/src/tools/fetch/wikidata-subvenue.d.ts.map +0 -1
- package/out/src/tools/fetch/wikidata-subvenue.js +0 -275
- package/out/src/tools/fetch/wikidata-subvenue.js.map +0 -1
- package/out/src/tools/gb-title-case.d.ts.map +0 -1
- package/out/src/tools/gb-title-case.js.map +0 -1
- package/out/src/tools/golden-expand.d.ts +0 -90
- package/out/src/tools/golden-expand.d.ts.map +0 -1
- package/out/src/tools/golden-expand.js +0 -413
- package/out/src/tools/golden-expand.js.map +0 -1
- package/out/src/tools/golden-promote.d.ts.map +0 -1
- package/out/src/tools/golden-promote.js +0 -244
- package/out/src/tools/golden-promote.js.map +0 -1
- package/out/src/tools/golden-relabel-street.d.ts +0 -196
- package/out/src/tools/golden-relabel-street.d.ts.map +0 -1
- package/out/src/tools/golden-relabel-street.js +0 -440
- package/out/src/tools/golden-relabel-street.js.map +0 -1
- package/out/src/tools/index.d.ts +0 -28
- package/out/src/tools/index.d.ts.map +0 -1
- package/out/src/tools/index.js +0 -28
- package/out/src/tools/index.js.map +0 -1
- package/out/src/tools/ingest-csv.d.ts.map +0 -1
- package/out/src/tools/ingest-csv.js +0 -296
- package/out/src/tools/ingest-csv.js.map +0 -1
- package/out/src/tools/jsonl-to-parquet.d.ts +0 -61
- package/out/src/tools/jsonl-to-parquet.d.ts.map +0 -1
- package/out/src/tools/jsonl-to-parquet.js +0 -164
- package/out/src/tools/jsonl-to-parquet.js.map +0 -1
- package/out/src/tools/lint-shard-vocab.d.ts +0 -90
- package/out/src/tools/lint-shard-vocab.d.ts.map +0 -1
- package/out/src/tools/lint-shard-vocab.js +0 -281
- package/out/src/tools/lint-shard-vocab.js.map +0 -1
- package/out/src/tools/lint-shard.d.ts +0 -93
- package/out/src/tools/lint-shard.d.ts.map +0 -1
- package/out/src/tools/lint-shard.js +0 -354
- package/out/src/tools/lint-shard.js.map +0 -1
- package/out/src/tools/overlay-manifest.d.ts +0 -39
- package/out/src/tools/overlay-manifest.d.ts.map +0 -1
- package/out/src/tools/overlay-manifest.js +0 -98
- package/out/src/tools/overlay-manifest.js.map +0 -1
- package/out/src/tools/overture-subvenue.d.ts +0 -112
- package/out/src/tools/overture-subvenue.d.ts.map +0 -1
- package/out/src/tools/overture-subvenue.js +0 -144
- package/out/src/tools/overture-subvenue.js.map +0 -1
- package/out/src/tools/postcode-triples.d.ts +0 -175
- package/out/src/tools/postcode-triples.d.ts.map +0 -1
- package/out/src/tools/postcode-triples.js +0 -304
- package/out/src/tools/postcode-triples.js.map +0 -1
- package/out/src/tools/shard-kryptonite.d.ts +0 -32
- package/out/src/tools/shard-kryptonite.d.ts.map +0 -1
- package/out/src/tools/shard-kryptonite.js +0 -100
- package/out/src/tools/shard-kryptonite.js.map +0 -1
- package/out/src/tools/shard-translit.d.ts +0 -51
- package/out/src/tools/shard-translit.d.ts.map +0 -1
- package/out/src/tools/shard-translit.js +0 -175
- package/out/src/tools/shard-translit.js.map +0 -1
- package/out/src/tools/sub-venue/harvest.d.ts +0 -100
- package/out/src/tools/sub-venue/harvest.d.ts.map +0 -1
- package/out/src/tools/sub-venue/harvest.js +0 -168
- package/out/src/tools/sub-venue/harvest.js.map +0 -1
- package/out/src/tools/sub-venue/head-nouns.d.ts +0 -50
- package/out/src/tools/sub-venue/head-nouns.d.ts.map +0 -1
- package/out/src/tools/sub-venue/head-nouns.js +0 -210
- package/out/src/tools/sub-venue/head-nouns.js.map +0 -1
- package/out/src/tools/sub-venue/surfaces.d.ts +0 -45
- package/out/src/tools/sub-venue/surfaces.d.ts.map +0 -1
- package/out/src/tools/sub-venue/surfaces.js +0 -77
- package/out/src/tools/sub-venue/surfaces.js.map +0 -1
- package/out/src/tools/sub-venue/table.d.ts +0 -229
- package/out/src/tools/sub-venue/table.d.ts.map +0 -1
- package/out/src/tools/sub-venue/table.js +0 -108
- package/out/src/tools/sub-venue/table.js.map +0 -1
- package/out/src/tools/sub-venue/wikidata.d.ts +0 -26
- package/out/src/tools/sub-venue/wikidata.d.ts.map +0 -1
- package/out/src/tools/sub-venue/wikidata.js +0 -62
- package/out/src/tools/sub-venue/wikidata.js.map +0 -1
- package/out/src/tools/sub-venue-lexicon.d.ts +0 -156
- package/out/src/tools/sub-venue-lexicon.d.ts.map +0 -1
- package/out/src/tools/sub-venue-lexicon.js +0 -282
- package/out/src/tools/sub-venue-lexicon.js.map +0 -1
- package/out/src/tools/sub-venue-promotions.d.ts +0 -94
- package/out/src/tools/sub-venue-promotions.d.ts.map +0 -1
- package/out/src/tools/sub-venue-promotions.js +0 -266
- package/out/src/tools/sub-venue-promotions.js.map +0 -1
- package/out/src/types.d.ts +0 -221
- package/out/src/types.d.ts.map +0 -1
- package/out/src/types.js.map +0 -1
- package/out/src/utils/align.d.ts +0 -93
- package/out/src/utils/align.d.ts.map +0 -1
- package/out/src/utils/align.js +0 -234
- package/out/src/utils/align.js.map +0 -1
- package/out/src/utils/golden.d.ts +0 -69
- package/out/src/utils/golden.d.ts.map +0 -1
- package/out/src/utils/golden.js +0 -127
- package/out/src/utils/golden.js.map +0 -1
- package/out/src/utils/index.d.ts +0 -14
- package/out/src/utils/index.d.ts.map +0 -1
- package/out/src/utils/index.js +0 -14
- package/out/src/utils/index.js.map +0 -1
- package/out/src/utils/license.d.ts.map +0 -1
- package/out/src/utils/license.js.map +0 -1
- package/out/src/utils/parquet.d.ts +0 -162
- package/out/src/utils/parquet.d.ts.map +0 -1
- package/out/src/utils/parquet.js +0 -262
- package/out/src/utils/parquet.js.map +0 -1
- package/out/src/utils/split.d.ts +0 -127
- package/out/src/utils/split.d.ts.map +0 -1
- package/out/src/utils/split.js +0 -204
- package/out/src/utils/split.js.map +0 -1
- package/out/src/utils/tokenize.d.ts +0 -56
- package/out/src/utils/tokenize.d.ts.map +0 -1
- package/out/src/utils/tokenize.js +0 -48
- package/out/src/utils/tokenize.js.map +0 -1
- package/out/src/utils/wof-json.d.ts +0 -109
- package/out/src/utils/wof-json.d.ts.map +0 -1
- package/out/src/utils/wof-json.js +0 -173
- package/out/src/utils/wof-json.js.map +0 -1
- package/src/adapters/ban/adapter.ts +0 -191
- package/src/adapters/ban/street-decompose.ts +0 -96
- package/src/adapters/fcc-bdc/adapter.ts +0 -174
- package/src/adapters/geonames/adapter.ts +0 -200
- package/src/adapters/geonames-postal/adapter.ts +0 -119
- package/src/adapters/gnaf/adapter.ts +0 -149
- package/src/adapters/gnaf/assemble.ts +0 -226
- package/src/adapters/index.ts +0 -149
- package/src/adapters/openaddresses/adapter.ts +0 -251
- package/src/adapters/overture/adapter.ts +0 -162
- package/src/adapters/state-hi-schools/adapter.ts +0 -164
- package/src/adapters/synth-po-box/adapter.ts +0 -204
- package/src/adapters/tiger/adapter.ts +0 -253
- package/src/adapters/tiger/street-decompose.ts +0 -111
- package/src/adapters/usgov-hrsa-fqhc/adapter.ts +0 -183
- package/src/adapters/usgov-imls-pls/adapter.ts +0 -143
- package/src/adapters/usgov-irs-bmf/adapter.ts +0 -163
- package/src/adapters/usgov-nad/adapter.ts +0 -348
- package/src/adapters/usgov-nppes/adapter.ts +0 -159
- package/src/adapters/usgov-samhsa-treatment-locator/adapter.ts +0 -204
- package/src/adapters/utils/index.ts +0 -233
- package/src/adapters/wof-admin-jp/adapter.ts +0 -216
- package/src/adapters/wof-admin-json/adapter.ts +0 -256
- package/src/adapters/wof-json-rows.ts +0 -79
- package/src/adapters/wof-postalcode-json/adapter.ts +0 -183
- package/src/build.ts +0 -386
- package/src/index.ts +0 -14
- package/src/name-prone-us-suffixes.ts +0 -12
- package/src/parquet-wrapper/index.ts +0 -9
- package/src/parquet-wrapper/reader.ts +0 -97
- package/src/parquet-wrapper/schema.ts +0 -88
- package/src/parquet-wrapper/writer.ts +0 -110
- package/src/runner.ts +0 -317
- package/src/shard-recipes/anchor-absorption.ts +0 -103
- package/src/shard-recipes/bare-country.ts +0 -95
- package/src/shard-recipes/boundary-stress.ts +0 -101
- package/src/shard-recipes/country-balanced.ts +0 -524
- package/src/shard-recipes/cz-pcfirst-preposition.ts +0 -111
- package/src/shard-recipes/fr-admin-split.ts +0 -239
- package/src/shard-recipes/fr-bare-street.ts +0 -170
- package/src/shard-recipes/fr-fragment.ts +0 -332
- package/src/shard-recipes/fr-lieudit.ts +0 -302
- package/src/shard-recipes/fr-order.ts +0 -258
- package/src/shard-recipes/german.ts +0 -170
- package/src/shard-recipes/house-venue.ts +0 -88
- package/src/shard-recipes/index.ts +0 -95
- package/src/shard-recipes/intersection.ts +0 -630
- package/src/shard-recipes/locale.ts +0 -599
- package/src/shard-recipes/nl-postcode.ts +0 -115
- package/src/shard-recipes/no-fragment.ts +0 -219
- package/src/shard-recipes/no-street-led.ts +0 -143
- package/src/shard-recipes/no-street.ts +0 -86
- package/src/shard-recipes/po-box-cedex.ts +0 -920
- package/src/shard-recipes/po-box.ts +0 -119
- package/src/shard-recipes/reviewed-postcode-tail.ts +0 -189
- package/src/shard-recipes/scaffold.ts +0 -360
- package/src/shard-recipes/si-bare-village.ts +0 -97
- package/src/shard-recipes/street-affix.ts +0 -826
- package/src/shard-recipes/street-bare.ts +0 -101
- package/src/shard-recipes/street.ts +0 -82
- package/src/shard-recipes/sub-venue-sources.ts +0 -885
- package/src/shard-recipes/sub-venue.ts +0 -984
- package/src/shard-recipes/trailing-region.ts +0 -183
- package/src/shard-recipes/unit.ts +0 -321
- package/src/synthesizers/anchor-absorption.ts +0 -290
- package/src/synthesizers/boundary-stress.ts +0 -531
- package/src/synthesizers/german.ts +0 -251
- package/src/synthesizers/house-venue.ts +0 -330
- package/src/synthesizers/intersection.ts +0 -232
- package/src/synthesizers/no-street.ts +0 -349
- package/src/synthesizers/po-box.ts +0 -339
- package/src/synthesizers/street.ts +0 -274
- package/src/synthesizers/utils.ts +0 -903
- package/src/tools/align-shard.ts +0 -70
- package/src/tools/audit.ts +0 -399
- package/src/tools/corpus-stats.ts +0 -184
- package/src/tools/fetch/ban.ts +0 -290
- package/src/tools/fetch/download.ts +0 -176
- package/src/tools/fetch/geonames-dump.ts +0 -267
- package/src/tools/fetch/geonames-postal.ts +0 -180
- package/src/tools/fetch/hrsa.ts +0 -68
- package/src/tools/fetch/imls-pls.ts +0 -158
- package/src/tools/fetch/index.ts +0 -147
- package/src/tools/fetch/nad.ts +0 -342
- package/src/tools/fetch/nppes.ts +0 -174
- package/src/tools/fetch/openaddresses.ts +0 -404
- package/src/tools/fetch/ourairports.ts +0 -171
- package/src/tools/fetch/ppd.ts +0 -137
- package/src/tools/fetch/state-hi-schools.ts +0 -208
- package/src/tools/fetch/state-sources.ts +0 -155
- package/src/tools/fetch/tiger-full.ts +0 -354
- package/src/tools/fetch/wikidata-subvenue.ts +0 -386
- package/src/tools/golden-expand.ts +0 -584
- package/src/tools/golden-promote.ts +0 -353
- package/src/tools/golden-relabel-street.ts +0 -685
- package/src/tools/index.ts +0 -28
- package/src/tools/ingest-csv.ts +0 -422
- package/src/tools/jsonl-to-parquet.ts +0 -221
- package/src/tools/lint-shard-vocab.ts +0 -409
- package/src/tools/lint-shard.ts +0 -543
- package/src/tools/overlay-manifest.ts +0 -157
- package/src/tools/overture-subvenue.ts +0 -215
- package/src/tools/postcode-triples.ts +0 -375
- package/src/tools/shard-kryptonite.ts +0 -139
- package/src/tools/shard-translit.ts +0 -245
- package/src/tools/sub-venue/harvest.ts +0 -235
- package/src/tools/sub-venue/head-nouns.ts +0 -242
- package/src/tools/sub-venue/surfaces.ts +0 -95
- package/src/tools/sub-venue/table.ts +0 -281
- package/src/tools/sub-venue/wikidata.ts +0 -85
- package/src/tools/sub-venue-lexicon.ts +0 -431
- package/src/tools/sub-venue-promotions.ts +0 -330
- package/src/types.ts +0 -247
- package/src/utils/align.ts +0 -331
- package/src/utils/golden.ts +0 -176
- package/src/utils/index.ts +0 -14
- package/src/utils/parquet.ts +0 -391
- package/src/utils/split.ts +0 -279
- package/src/utils/tokenize.ts +0 -78
- package/src/utils/wof-json.ts +0 -244
- /package/{src → lib}/adapters/state-ia-contractors/adapter.ts +0 -0
- /package/{src → lib}/adapters/state-ny-notaries/adapter.ts +0 -0
- /package/{src → lib}/adapters/state-tx-notaries/adapter.ts +0 -0
- /package/{src → lib}/codex/us-fips-state.ts +0 -0
- /package/{src → lib}/tools/gb-title-case.ts +0 -0
- /package/{src → lib}/utils/license.ts +0 -0
- /package/out/{src/adapters → adapters}/ban/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/ban/street-decompose.d.ts +0 -0
- /package/out/{src/adapters → adapters}/fcc-bdc/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/geonames/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/openaddresses/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/state-ia-contractors/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/state-ia-contractors/adapter.js +0 -0
- /package/out/{src/adapters → adapters}/state-ny-notaries/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/state-ny-notaries/adapter.js +0 -0
- /package/out/{src/adapters → adapters}/state-tx-notaries/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/state-tx-notaries/adapter.js +0 -0
- /package/out/{src/adapters → adapters}/synth-po-box/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/tiger/street-decompose.d.ts +0 -0
- /package/out/{src/adapters → adapters}/usgov-nppes/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/usgov-samhsa-treatment-locator/adapter.d.ts +0 -0
- /package/out/{src/adapters → adapters}/wof-admin-jp/adapter.d.ts +0 -0
- /package/out/{src/codex → codex}/us-fips-state.d.ts +0 -0
- /package/out/{src/codex → codex}/us-fips-state.js +0 -0
- /package/out/{src/tools → tools}/fetch/ppd.d.ts +0 -0
- /package/out/{src/tools → tools}/gb-title-case.d.ts +0 -0
- /package/out/{src/tools → tools}/gb-title-case.js +0 -0
- /package/out/{src/tools → tools}/golden-promote.d.ts +0 -0
- /package/out/{src/tools → tools}/ingest-csv.d.ts +0 -0
- /package/out/{src/types.js → types.js} +0 -0
- /package/out/{src/utils → utils}/license.d.ts +0 -0
- /package/out/{src/utils → utils}/license.js +0 -0
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @copyright Sister Software
|
|
3
|
-
* @license AGPL-3.0
|
|
4
|
-
* @author Teffen Ellis, et al.
|
|
5
|
-
*
|
|
6
|
-
* Final output sharder for the corpus pipeline.
|
|
7
|
-
*
|
|
8
|
-
* Phase 1 (#9) shipped JSONL shards + a Python (PyArrow) converter as the path to binary Parquet —
|
|
9
|
-
* bridging until the JS toolchain caught up. Phase 1.5 (#18 §4) replaced that with a native JS
|
|
10
|
-
* writer. The build pipeline no longer touches Python at all in its hot path; the only remaining
|
|
11
|
-
* Python is the one-shot `train_tokenizer.py` SentencePiece step.
|
|
12
|
-
*
|
|
13
|
-
* Compression: `SNAPPY`. The plan in #18 §4 specified `zstd`, but `@dsnp/parquetjs` 1.7.0 only
|
|
14
|
-
* supports UNCOMPRESSED / GZIP / SNAPPY / BROTLI (see `node_modules/@dsnp/parquetjs/dist/lib/
|
|
15
|
-
* compression.js`). SNAPPY is the standard ML-corpus default (PyArrow's default too) and is the
|
|
16
|
-
* closest substitute on speed; revisit if @dsnp/parquetjs gains zstd support. Documented in
|
|
17
|
-
* `DECISIONS.md`.
|
|
18
|
-
*
|
|
19
|
-
* Layout under `<outputDir>`:
|
|
20
|
-
*
|
|
21
|
-
* ```
|
|
22
|
-
* corpus-v<version>/
|
|
23
|
-
* MANIFEST.json
|
|
24
|
-
* train/
|
|
25
|
-
* part-0000.parquet
|
|
26
|
-
* part-0001.parquet
|
|
27
|
-
* ...
|
|
28
|
-
* val/
|
|
29
|
-
* part-0000.parquet
|
|
30
|
-
* test/
|
|
31
|
-
* part-0000.parquet
|
|
32
|
-
* ```
|
|
33
|
-
*
|
|
34
|
-
* Each shard caps at `rowsPerShard` (default 1_000_000); within a shard, parquetjs flushes row
|
|
35
|
-
* groups every `ROW_GROUP_SIZE` (50_000) rows per the issue spec. The MANIFEST captures every
|
|
36
|
-
* shard's path, row count, byte size, and SHA-256 (computed by re-reading the shard once after
|
|
37
|
-
* close — cheap relative to writing it).
|
|
38
|
-
*/
|
|
39
|
-
import { type ParquetSchemaDefinition } from "#parquet-wrapper";
|
|
40
|
-
import type { LabeledRow } from "#types";
|
|
41
|
-
import type { SplitName } from "./split.ts";
|
|
42
|
-
/**
|
|
43
|
-
* Row groups flush at this many rows (parquetjs internal cadence within a shard).
|
|
44
|
-
*/
|
|
45
|
-
export declare const ROW_GROUP_SIZE = 50000;
|
|
46
|
-
/**
|
|
47
|
-
* Snappy is the only zstd-equivalent codec available in @dsnp/parquetjs 1.7.0.
|
|
48
|
-
*/
|
|
49
|
-
export declare const SHARD_COMPRESSION: "SNAPPY";
|
|
50
|
-
/**
|
|
51
|
-
* A single Parquet-style row shape. The `[key: string]: unknown` index signature is required for compatibility with
|
|
52
|
-
* `ParquetRecordLike` in the wrapper — parquetjs accepts any string key on rows.
|
|
53
|
-
*
|
|
54
|
-
* The three columns the schema marks `optional: true` are optional here too: `appendRow` receives the row with them
|
|
55
|
-
* OMITTED rather than null (see {@link appendShape}), and a reader gets back whichever of null/absent parquetjs
|
|
56
|
-
* surfaces.
|
|
57
|
-
*/
|
|
58
|
-
export interface ParquetRow {
|
|
59
|
-
raw: string;
|
|
60
|
-
tokens: readonly string[];
|
|
61
|
-
labels: readonly string[];
|
|
62
|
-
span_starts: readonly number[];
|
|
63
|
-
span_ends: readonly number[];
|
|
64
|
-
span_tags: readonly string[];
|
|
65
|
-
country: string;
|
|
66
|
-
locale?: string | null;
|
|
67
|
-
source: string;
|
|
68
|
-
source_id: string;
|
|
69
|
-
corpus_version: string;
|
|
70
|
-
license: string;
|
|
71
|
-
synth_method?: string | null;
|
|
72
|
-
synth_base_id?: string | null;
|
|
73
|
-
[key: string]: unknown;
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Column names emitted into every shard. Matches `ParquetRow`.
|
|
77
|
-
*/
|
|
78
|
-
export declare const PARQUET_COLUMNS: readonly ["raw", "tokens", "labels", "span_starts", "span_ends", "span_tags", "country", "locale", "source", "source_id", "corpus_version", "license", "synth_method", "synth_base_id"];
|
|
79
|
-
/**
|
|
80
|
-
* Parquet schema for `LabeledRow` per #18 §4. Optional fields use `optional: true`; repeated UTF8 columns capture
|
|
81
|
-
* tokens/labels arrays. Compression is per-column SNAPPY.
|
|
82
|
-
*/
|
|
83
|
-
export declare const LABELED_ROW_SCHEMA: ParquetSchemaDefinition<ParquetRow>;
|
|
84
|
-
/**
|
|
85
|
-
* Per-shard metadata captured in `MANIFEST.json`.
|
|
86
|
-
*/
|
|
87
|
-
export interface ShardDescriptor {
|
|
88
|
-
split: SplitName;
|
|
89
|
-
path: string;
|
|
90
|
-
format: "parquet";
|
|
91
|
-
compression: typeof SHARD_COMPRESSION;
|
|
92
|
-
rows: number;
|
|
93
|
-
bytes: number;
|
|
94
|
-
sha256: string;
|
|
95
|
-
first_source_id: string;
|
|
96
|
-
last_source_id: string;
|
|
97
|
-
/**
|
|
98
|
-
* The shard's corpus source slug, when the writer knows it. `audit.ts` prefers this over inferring the source from
|
|
99
|
-
* `first_source_id`'s prefix; `writeShards` itself writes multi-source shards and leaves it unset.
|
|
100
|
-
*/
|
|
101
|
-
source?: string;
|
|
102
|
-
}
|
|
103
|
-
export interface ShardManifest {
|
|
104
|
-
corpus_version: string;
|
|
105
|
-
schema: readonly string[];
|
|
106
|
-
rows_per_shard: number;
|
|
107
|
-
row_group_size: number;
|
|
108
|
-
shards: ShardDescriptor[];
|
|
109
|
-
counts: Record<SplitName, number>;
|
|
110
|
-
total_rows: number;
|
|
111
|
-
}
|
|
112
|
-
export interface WriteShardsOptions {
|
|
113
|
-
/**
|
|
114
|
-
* Root output directory; corpus version dir is created beneath.
|
|
115
|
-
*/
|
|
116
|
-
outputDir: string;
|
|
117
|
-
/**
|
|
118
|
-
* Corpus version stamped onto rows + into the output directory name.
|
|
119
|
-
*/
|
|
120
|
-
corpusVersion: string;
|
|
121
|
-
/**
|
|
122
|
-
* Max rows per `.parquet` shard. Default 1_000_000 per the Phase 1 plan.
|
|
123
|
-
*/
|
|
124
|
-
rowsPerShard?: number;
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Pre-partitioned labeled-row streams, one per split. Callers (`buildCorpus`) decide each row's split inline at align
|
|
128
|
-
* time via `splitForRow` and route rows to the matching stream, eliminating the prior `Map<source_id, SplitName>` O(n)
|
|
129
|
-
* lookup table.
|
|
130
|
-
*
|
|
131
|
-
* Splits with no rows can be omitted (or passed as an empty iterable); `writeShards` skips them.
|
|
132
|
-
*/
|
|
133
|
-
export type PerSplitRows = Partial<Record<SplitName, AsyncIterable<LabeledRow>>>;
|
|
134
|
-
/**
|
|
135
|
-
* Project a labeled row to the Parquet schema.
|
|
136
|
-
*
|
|
137
|
-
* The span triple is REQUIRED here (#519): `alignRow` emits it on every labeled row, so a row arriving without it came
|
|
138
|
-
* from a producer that hasn't migrated — writing it would silently drop the v0.5.0 labels from the shard (the "builders
|
|
139
|
-
* before parquet = silent loss" hazard). Loud failure, naming the row, instead.
|
|
140
|
-
*/
|
|
141
|
-
export declare function rowToParquet(row: LabeledRow): ParquetRow;
|
|
142
|
-
/**
|
|
143
|
-
* Project a `ParquetRow` for `appendRow`. parquetjs treats `null` as "skip" for `optional` columns; passing it
|
|
144
|
-
* explicitly is fine, but cleaner to omit so the on-disk Definition Levels match what PyArrow / DuckDB / etc. produce
|
|
145
|
-
* for the same logical row.
|
|
146
|
-
*
|
|
147
|
-
* EXPORTED because it was not, and a second producer hand-rolled its own copy that predates the v0.5.0 span triple
|
|
148
|
-
* (#519). `LABELED_ROW_SCHEMA` declares those three columns `repeated` and NOT optional, so the copy wrote empty arrays
|
|
149
|
-
* under a schema promising values. Every new column has to arrive here once, not once per writer.
|
|
150
|
-
*/
|
|
151
|
-
export declare function appendShape(row: ParquetRow): ParquetRow;
|
|
152
|
-
/**
|
|
153
|
-
* Stream labeled rows into `.parquet` shards, one set of shards per split. Splits are processed sequentially so that
|
|
154
|
-
* only one shard writer is open at a time — memory cost is bounded by the parquetjs row-group buffer (~`ROW_GROUP_SIZE
|
|
155
|
-
* × row_size`), not by the labeled-row count.
|
|
156
|
-
*
|
|
157
|
-
* Callers pass per-split `AsyncIterable<LabeledRow>` (`PerSplitRows`); the prior `splitFor(sourceID)` callback is gone
|
|
158
|
-
* because pre-partitioning at the caller eliminates the O(n) `Map<source_id, SplitName>` it required. See `buildCorpus`
|
|
159
|
-
* for the new wire-up.
|
|
160
|
-
*/
|
|
161
|
-
export declare function writeShards(perSplit: PerSplitRows, opts: WriteShardsOptions): Promise<ShardManifest>;
|
|
162
|
-
//# sourceMappingURL=parquet.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parquet.d.ts","sourceRoot":"","sources":["../../../src/utils/parquet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAOH,OAAO,EAAiB,KAAK,uBAAuB,EAAE,MAAM,kBAAkB,CAAA;AAC9E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAExC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AAE3C;;GAEG;AACH,eAAO,MAAM,cAAc,QAAS,CAAA;AAEpC;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAG,QAAiB,CAAA;AAElD;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IAC1B,GAAG,EAAE,MAAM,CAAA;IACX,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;IACzB,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;IACzB,WAAW,EAAE,SAAS,MAAM,EAAE,CAAA;IAC9B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5B,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,yLAelB,CAAA;AAMV;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,uBAAuB,CAAC,UAAU,CAkBlE,CAAA;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC/B,KAAK,EAAE,SAAS,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,SAAS,CAAA;IACjB,WAAW,EAAE,OAAO,iBAAiB,CAAA;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,aAAa;IAC7B,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,SAAS,MAAM,EAAE,CAAA;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACjC,UAAU,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,kBAAkB;IAClC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAA;IAEjB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAA;IAErB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACrB;AAED;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC,CAAC,CAAA;AAEhF;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,CAqCxD;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,UAAU,GAAG,UAAU,CA4BvD;AAED;;;;;;;;GAQG;AACH,wBAAsB,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC,CA2G1G"}
|
package/out/src/utils/parquet.js
DELETED
|
@@ -1,262 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @copyright Sister Software
|
|
3
|
-
* @license AGPL-3.0
|
|
4
|
-
* @author Teffen Ellis, et al.
|
|
5
|
-
*
|
|
6
|
-
* Final output sharder for the corpus pipeline.
|
|
7
|
-
*
|
|
8
|
-
* Phase 1 (#9) shipped JSONL shards + a Python (PyArrow) converter as the path to binary Parquet —
|
|
9
|
-
* bridging until the JS toolchain caught up. Phase 1.5 (#18 §4) replaced that with a native JS
|
|
10
|
-
* writer. The build pipeline no longer touches Python at all in its hot path; the only remaining
|
|
11
|
-
* Python is the one-shot `train_tokenizer.py` SentencePiece step.
|
|
12
|
-
*
|
|
13
|
-
* Compression: `SNAPPY`. The plan in #18 §4 specified `zstd`, but `@dsnp/parquetjs` 1.7.0 only
|
|
14
|
-
* supports UNCOMPRESSED / GZIP / SNAPPY / BROTLI (see `node_modules/@dsnp/parquetjs/dist/lib/
|
|
15
|
-
* compression.js`). SNAPPY is the standard ML-corpus default (PyArrow's default too) and is the
|
|
16
|
-
* closest substitute on speed; revisit if @dsnp/parquetjs gains zstd support. Documented in
|
|
17
|
-
* `DECISIONS.md`.
|
|
18
|
-
*
|
|
19
|
-
* Layout under `<outputDir>`:
|
|
20
|
-
*
|
|
21
|
-
* ```
|
|
22
|
-
* corpus-v<version>/
|
|
23
|
-
* MANIFEST.json
|
|
24
|
-
* train/
|
|
25
|
-
* part-0000.parquet
|
|
26
|
-
* part-0001.parquet
|
|
27
|
-
* ...
|
|
28
|
-
* val/
|
|
29
|
-
* part-0000.parquet
|
|
30
|
-
* test/
|
|
31
|
-
* part-0000.parquet
|
|
32
|
-
* ```
|
|
33
|
-
*
|
|
34
|
-
* Each shard caps at `rowsPerShard` (default 1_000_000); within a shard, parquetjs flushes row
|
|
35
|
-
* groups every `ROW_GROUP_SIZE` (50_000) rows per the issue spec. The MANIFEST captures every
|
|
36
|
-
* shard's path, row count, byte size, and SHA-256 (computed by re-reading the shard once after
|
|
37
|
-
* close — cheap relative to writing it).
|
|
38
|
-
*/
|
|
39
|
-
import { mkdir, stat, writeFile } from "node:fs/promises";
|
|
40
|
-
import { join } from "node:path";
|
|
41
|
-
import { sha256File } from "@mailwoman/core/utils";
|
|
42
|
-
import { ParquetWriter } from "#parquet-wrapper";
|
|
43
|
-
/**
|
|
44
|
-
* Row groups flush at this many rows (parquetjs internal cadence within a shard).
|
|
45
|
-
*/
|
|
46
|
-
export const ROW_GROUP_SIZE = 50_000;
|
|
47
|
-
/**
|
|
48
|
-
* Snappy is the only zstd-equivalent codec available in @dsnp/parquetjs 1.7.0.
|
|
49
|
-
*/
|
|
50
|
-
export const SHARD_COMPRESSION = "SNAPPY";
|
|
51
|
-
/**
|
|
52
|
-
* Column names emitted into every shard. Matches `ParquetRow`.
|
|
53
|
-
*/
|
|
54
|
-
export const PARQUET_COLUMNS = [
|
|
55
|
-
"raw",
|
|
56
|
-
"tokens",
|
|
57
|
-
"labels",
|
|
58
|
-
"span_starts",
|
|
59
|
-
"span_ends",
|
|
60
|
-
"span_tags",
|
|
61
|
-
"country",
|
|
62
|
-
"locale",
|
|
63
|
-
"source",
|
|
64
|
-
"source_id",
|
|
65
|
-
"corpus_version",
|
|
66
|
-
"license",
|
|
67
|
-
"synth_method",
|
|
68
|
-
"synth_base_id",
|
|
69
|
-
];
|
|
70
|
-
/* oxlint-disable unicorn/text-encoding-identifier-case -- `"UTF8"` below is a ParquetType enum member,
|
|
71
|
-
not a text-encoding identifier. Lowercasing it does not type-check against ParquetSchemaDefinition,
|
|
72
|
-
and the rule has no way to tell the two apart. */
|
|
73
|
-
/**
|
|
74
|
-
* Parquet schema for `LabeledRow` per #18 §4. Optional fields use `optional: true`; repeated UTF8 columns capture
|
|
75
|
-
* tokens/labels arrays. Compression is per-column SNAPPY.
|
|
76
|
-
*/
|
|
77
|
-
export const LABELED_ROW_SCHEMA = {
|
|
78
|
-
raw: { type: "UTF8", compression: SHARD_COMPRESSION },
|
|
79
|
-
tokens: { type: "UTF8", repeated: true, compression: SHARD_COMPRESSION },
|
|
80
|
-
labels: { type: "UTF8", repeated: true, compression: SHARD_COMPRESSION },
|
|
81
|
-
// v0.5.0 char-offset label spans (#519): parallel arrays over `raw` (UTF-16 code units,
|
|
82
|
-
// [start, end) exclusive-end, sorted, non-overlapping). INT32 — raw is a short address string,
|
|
83
|
-
// and INT32 round-trips as `number` where parquetjs INT64 would surface bigint.
|
|
84
|
-
span_starts: { type: "INT32", repeated: true, compression: SHARD_COMPRESSION },
|
|
85
|
-
span_ends: { type: "INT32", repeated: true, compression: SHARD_COMPRESSION },
|
|
86
|
-
span_tags: { type: "UTF8", repeated: true, compression: SHARD_COMPRESSION },
|
|
87
|
-
country: { type: "UTF8", compression: SHARD_COMPRESSION },
|
|
88
|
-
locale: { type: "UTF8", compression: SHARD_COMPRESSION, optional: true },
|
|
89
|
-
source: { type: "UTF8", compression: SHARD_COMPRESSION },
|
|
90
|
-
source_id: { type: "UTF8", compression: SHARD_COMPRESSION },
|
|
91
|
-
corpus_version: { type: "UTF8", compression: SHARD_COMPRESSION },
|
|
92
|
-
license: { type: "UTF8", compression: SHARD_COMPRESSION },
|
|
93
|
-
synth_method: { type: "UTF8", compression: SHARD_COMPRESSION, optional: true },
|
|
94
|
-
synth_base_id: { type: "UTF8", compression: SHARD_COMPRESSION, optional: true },
|
|
95
|
-
};
|
|
96
|
-
/**
|
|
97
|
-
* Project a labeled row to the Parquet schema.
|
|
98
|
-
*
|
|
99
|
-
* The span triple is REQUIRED here (#519): `alignRow` emits it on every labeled row, so a row arriving without it came
|
|
100
|
-
* from a producer that hasn't migrated — writing it would silently drop the v0.5.0 labels from the shard (the "builders
|
|
101
|
-
* before parquet = silent loss" hazard). Loud failure, naming the row, instead.
|
|
102
|
-
*/
|
|
103
|
-
export function rowToParquet(row) {
|
|
104
|
-
const { span_starts, span_ends, span_tags } = row;
|
|
105
|
-
if (span_starts === undefined || span_ends === undefined || span_tags === undefined) {
|
|
106
|
-
throw new Error(`rowToParquet: row is missing the char-offset span triple (#519) — ` +
|
|
107
|
-
`span_starts=${span_starts !== undefined} span_ends=${span_ends !== undefined} span_tags=${span_tags !== undefined} ` +
|
|
108
|
-
`(source=${row.source}, source_id=${row.source_id}). ` +
|
|
109
|
-
`Every parquet-bound row must carry span_starts/span_ends/span_tags; ` +
|
|
110
|
-
`producers that emit tokens/labels only have not migrated to the v0.5.0 format.`);
|
|
111
|
-
}
|
|
112
|
-
if (span_starts.length !== span_ends.length || span_starts.length !== span_tags.length) {
|
|
113
|
-
throw new Error(`rowToParquet: span triple arrays are not parallel — ` +
|
|
114
|
-
`starts=${span_starts.length} ends=${span_ends.length} tags=${span_tags.length} ` +
|
|
115
|
-
`(source=${row.source}, source_id=${row.source_id})`);
|
|
116
|
-
}
|
|
117
|
-
return {
|
|
118
|
-
raw: row.raw,
|
|
119
|
-
tokens: row.tokens,
|
|
120
|
-
labels: row.labels,
|
|
121
|
-
span_starts,
|
|
122
|
-
span_ends,
|
|
123
|
-
span_tags,
|
|
124
|
-
country: row.country,
|
|
125
|
-
locale: row.locale ?? null,
|
|
126
|
-
source: row.source,
|
|
127
|
-
source_id: row.source_id,
|
|
128
|
-
corpus_version: row.corpus_version,
|
|
129
|
-
license: row.license,
|
|
130
|
-
synth_method: row.synth?.method ?? null,
|
|
131
|
-
synth_base_id: row.synth?.base_source_id ?? null,
|
|
132
|
-
};
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Project a `ParquetRow` for `appendRow`. parquetjs treats `null` as "skip" for `optional` columns; passing it
|
|
136
|
-
* explicitly is fine, but cleaner to omit so the on-disk Definition Levels match what PyArrow / DuckDB / etc. produce
|
|
137
|
-
* for the same logical row.
|
|
138
|
-
*
|
|
139
|
-
* EXPORTED because it was not, and a second producer hand-rolled its own copy that predates the v0.5.0 span triple
|
|
140
|
-
* (#519). `LABELED_ROW_SCHEMA` declares those three columns `repeated` and NOT optional, so the copy wrote empty arrays
|
|
141
|
-
* under a schema promising values. Every new column has to arrive here once, not once per writer.
|
|
142
|
-
*/
|
|
143
|
-
export function appendShape(row) {
|
|
144
|
-
const out = {
|
|
145
|
-
raw: row.raw,
|
|
146
|
-
tokens: row.tokens,
|
|
147
|
-
labels: row.labels,
|
|
148
|
-
span_starts: row.span_starts,
|
|
149
|
-
span_ends: row.span_ends,
|
|
150
|
-
span_tags: row.span_tags,
|
|
151
|
-
country: row.country,
|
|
152
|
-
source: row.source,
|
|
153
|
-
source_id: row.source_id,
|
|
154
|
-
corpus_version: row.corpus_version,
|
|
155
|
-
license: row.license,
|
|
156
|
-
};
|
|
157
|
-
if (row.locale !== null) {
|
|
158
|
-
out.locale = row.locale;
|
|
159
|
-
}
|
|
160
|
-
if (row.synth_method !== null) {
|
|
161
|
-
out.synth_method = row.synth_method;
|
|
162
|
-
}
|
|
163
|
-
if (row.synth_base_id !== null) {
|
|
164
|
-
out.synth_base_id = row.synth_base_id;
|
|
165
|
-
}
|
|
166
|
-
return out;
|
|
167
|
-
}
|
|
168
|
-
/**
|
|
169
|
-
* Stream labeled rows into `.parquet` shards, one set of shards per split. Splits are processed sequentially so that
|
|
170
|
-
* only one shard writer is open at a time — memory cost is bounded by the parquetjs row-group buffer (~`ROW_GROUP_SIZE
|
|
171
|
-
* × row_size`), not by the labeled-row count.
|
|
172
|
-
*
|
|
173
|
-
* Callers pass per-split `AsyncIterable<LabeledRow>` (`PerSplitRows`); the prior `splitFor(sourceID)` callback is gone
|
|
174
|
-
* because pre-partitioning at the caller eliminates the O(n) `Map<source_id, SplitName>` it required. See `buildCorpus`
|
|
175
|
-
* for the new wire-up.
|
|
176
|
-
*/
|
|
177
|
-
export async function writeShards(perSplit, opts) {
|
|
178
|
-
const rowsPerShard = opts.rowsPerShard ?? 1_000_000;
|
|
179
|
-
const corpusDir = join(opts.outputDir, `corpus-v${opts.corpusVersion}`);
|
|
180
|
-
await mkdir(corpusDir, { recursive: true });
|
|
181
|
-
const shards = [];
|
|
182
|
-
const counts = { train: 0, val: 0, test: 0 };
|
|
183
|
-
let totalRows = 0;
|
|
184
|
-
for (const split of ["train", "val", "test"]) {
|
|
185
|
-
const rows = perSplit[split];
|
|
186
|
-
if (!rows)
|
|
187
|
-
continue;
|
|
188
|
-
let shardIndex = 0;
|
|
189
|
-
let writer = null;
|
|
190
|
-
let path = "";
|
|
191
|
-
let shardRows = 0;
|
|
192
|
-
let firstSourceID = "";
|
|
193
|
-
let lastSourceID = "";
|
|
194
|
-
const openShard = async () => {
|
|
195
|
-
const splitDir = join(corpusDir, split);
|
|
196
|
-
await mkdir(splitDir, { recursive: true });
|
|
197
|
-
path = join(splitDir, `part-${String(shardIndex).padStart(4, "0")}.parquet`);
|
|
198
|
-
writer = await ParquetWriter.openFile(LABELED_ROW_SCHEMA, path, {
|
|
199
|
-
rowGroupSize: ROW_GROUP_SIZE,
|
|
200
|
-
});
|
|
201
|
-
writer.setMetadata("mailwoman.corpus_version", opts.corpusVersion);
|
|
202
|
-
writer.setMetadata("mailwoman.split", split);
|
|
203
|
-
writer.setMetadata("mailwoman.shard_index", String(shardIndex));
|
|
204
|
-
shardRows = 0;
|
|
205
|
-
firstSourceID = "";
|
|
206
|
-
lastSourceID = "";
|
|
207
|
-
};
|
|
208
|
-
const closeShard = async () => {
|
|
209
|
-
if (!writer)
|
|
210
|
-
return;
|
|
211
|
-
await writer.close();
|
|
212
|
-
if (shardRows > 0) {
|
|
213
|
-
const fileStat = await stat(path);
|
|
214
|
-
const sha256 = await sha256File(path);
|
|
215
|
-
shards.push({
|
|
216
|
-
split,
|
|
217
|
-
path,
|
|
218
|
-
format: "parquet",
|
|
219
|
-
compression: SHARD_COMPRESSION,
|
|
220
|
-
rows: shardRows,
|
|
221
|
-
bytes: fileStat.size,
|
|
222
|
-
sha256,
|
|
223
|
-
first_source_id: firstSourceID,
|
|
224
|
-
last_source_id: lastSourceID,
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
writer = null;
|
|
228
|
-
};
|
|
229
|
-
for await (const row of rows) {
|
|
230
|
-
if (!writer) {
|
|
231
|
-
await openShard();
|
|
232
|
-
}
|
|
233
|
-
const pq = rowToParquet(row);
|
|
234
|
-
await writer.appendRow(appendShape(pq));
|
|
235
|
-
if (shardRows === 0) {
|
|
236
|
-
firstSourceID = row.source_id;
|
|
237
|
-
}
|
|
238
|
-
lastSourceID = row.source_id;
|
|
239
|
-
shardRows++;
|
|
240
|
-
counts[split]++;
|
|
241
|
-
totalRows++;
|
|
242
|
-
if (shardRows >= rowsPerShard) {
|
|
243
|
-
await closeShard();
|
|
244
|
-
shardIndex++;
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
await closeShard();
|
|
248
|
-
}
|
|
249
|
-
shards.sort((a, b) => (a.split === b.split ? a.path.localeCompare(b.path) : a.split.localeCompare(b.split)));
|
|
250
|
-
const manifest = {
|
|
251
|
-
corpus_version: opts.corpusVersion,
|
|
252
|
-
schema: PARQUET_COLUMNS,
|
|
253
|
-
rows_per_shard: rowsPerShard,
|
|
254
|
-
row_group_size: ROW_GROUP_SIZE,
|
|
255
|
-
shards,
|
|
256
|
-
counts,
|
|
257
|
-
total_rows: totalRows,
|
|
258
|
-
};
|
|
259
|
-
await writeFile(join(corpusDir, "MANIFEST.json"), `${JSON.stringify(manifest, null, 2)}\n`, "utf8");
|
|
260
|
-
return manifest;
|
|
261
|
-
}
|
|
262
|
-
//# sourceMappingURL=parquet.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parquet.js","sourceRoot":"","sources":["../../../src/utils/parquet.ts"],"names":[],"mappings":"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"}
|
package/out/src/utils/split.d.ts
DELETED
|
@@ -1,127 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @copyright Sister Software
|
|
3
|
-
* @license AGPL-3.0
|
|
4
|
-
* @author Teffen Ellis, et al.
|
|
5
|
-
*
|
|
6
|
-
* Train / val / test split with **locality holdout** per the Phase 1 plan.
|
|
7
|
-
*
|
|
8
|
-
* The corpus's val + test sets are not randomly sampled rows — they're entire low-density regions
|
|
9
|
-
* held out so the model cannot memorize them at training time. Rationale (per the plan's "Common
|
|
10
|
-
* pitfalls" section): random splits leak by neighborhood — a model fed "13 Main St, Springfield,
|
|
11
|
-
* IL" in train and "15 Main St, Springfield, IL" in test generalizes via region/locality
|
|
12
|
-
* memorization, not by learning the underlying schema.
|
|
13
|
-
*
|
|
14
|
-
* Phase 1 holdouts (chosen for low data density + administrative isolation):
|
|
15
|
-
*
|
|
16
|
-
* - **US**: Vermont, Wyoming, North Dakota
|
|
17
|
-
* - **FR**: Corse, Lozère, Creuse
|
|
18
|
-
*
|
|
19
|
-
* Held-out rows are deterministically split 50/50 between val and test by hashing the row's
|
|
20
|
-
* `source_id`. Non-held-out rows go to train. The 90/5/5 ratio is approximate — what matters is
|
|
21
|
-
* the locality boundary, not the exact split percentages.
|
|
22
|
-
*
|
|
23
|
-
* The output is a `SplitManifest`: three `string[]` arrays of `source_id`. Manifests live in git
|
|
24
|
-
* (under `corpus/splits/<version>/`) so reruns are reproducible bit-for-bit.
|
|
25
|
-
*/
|
|
26
|
-
import type { CanonicalRow, LabeledRow } from "#types";
|
|
27
|
-
export type SplitName = "train" | "val" | "test";
|
|
28
|
-
export interface SplitOptions {
|
|
29
|
-
/**
|
|
30
|
-
* Region-name → holdout policy, keyed by ISO 3166-1 alpha-2 country. The values are the region-component strings the
|
|
31
|
-
* splitter looks for in `row.components.region`. Override to change the holdout for an experiment; defaults to
|
|
32
|
-
* `defaultHoldouts()`.
|
|
33
|
-
*/
|
|
34
|
-
holdouts?: Record<string, readonly string[]>;
|
|
35
|
-
}
|
|
36
|
-
/**
|
|
37
|
-
* Output manifest: source_id lists per split.
|
|
38
|
-
*/
|
|
39
|
-
export interface SplitManifest {
|
|
40
|
-
train: string[];
|
|
41
|
-
val: string[];
|
|
42
|
-
test: string[];
|
|
43
|
-
/**
|
|
44
|
-
* Echoes the holdouts used, so the manifest is self-describing.
|
|
45
|
-
*/
|
|
46
|
-
holdouts: Record<string, readonly string[]>;
|
|
47
|
-
/**
|
|
48
|
-
* Corpus version stamped onto the manifest. Read from the first row.
|
|
49
|
-
*/
|
|
50
|
-
corpus_version: string;
|
|
51
|
-
/**
|
|
52
|
-
* Counts for quick sanity checks.
|
|
53
|
-
*/
|
|
54
|
-
counts: {
|
|
55
|
-
train: number;
|
|
56
|
-
val: number;
|
|
57
|
-
test: number;
|
|
58
|
-
total: number;
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* Phase 1 default holdouts (per plan).
|
|
63
|
-
*
|
|
64
|
-
* - US: Vermont, Wyoming, North Dakota (low density, easy to identify in WOF/admin sources).
|
|
65
|
-
* - FR: Corse, Lozère, Creuse (small departments / regions).
|
|
66
|
-
* - DE (added 2026-06-11, night-11): Saarland + Mecklenburg-Vorpommern — small Länder so the training cost is low while
|
|
67
|
-
* the slice clears the honest-eval 1000-row trust floor. DE has had NO trustable honest-eval slice since the harness
|
|
68
|
-
* shipped (flagged 2026-06-08); this takes effect at the NEXT base corpus rebuild — existing versioned corpora keep
|
|
69
|
-
* their committed SPLIT_MANIFESTs (a holdout added after a corpus is built is leakage-laundering, not a holdout).
|
|
70
|
-
*/
|
|
71
|
-
export declare function defaultHoldouts(): Record<string, readonly string[]>;
|
|
72
|
-
type SplitInputRow = Pick<CanonicalRow, "source_id" | "country" | "corpus_version" | "components">;
|
|
73
|
-
/**
|
|
74
|
-
* Pure per-row split decision. Used by both the in-memory `splitRows` and by the streaming `buildCorpus` align loop
|
|
75
|
-
* (`build.ts`) to decide each row's split without retaining the row in heap. Identical hash bucketing semantics to the
|
|
76
|
-
* array-based path so the decision is stable regardless of caller.
|
|
77
|
-
*/
|
|
78
|
-
export declare function splitForRow(row: Pick<SplitInputRow, "source_id" | "country" | "components">, holdouts?: Record<string, readonly string[]>): SplitName;
|
|
79
|
-
/**
|
|
80
|
-
* Compute a `SplitManifest` from an iterable of labeled (or canonical) rows. Both shapes are accepted — only
|
|
81
|
-
* `source_id`, `country`, `corpus_version`, and `components.region` are consulted.
|
|
82
|
-
*
|
|
83
|
-
* Retained for in-memory callers (tests; small-scale fixture runs). Real-data builds via `buildCorpus` use the
|
|
84
|
-
* streaming path (`splitForRow` + `writeSplitManifestsFromLabeledFiles`) to avoid materializing every aligned row's
|
|
85
|
-
* split membership in heap.
|
|
86
|
-
*/
|
|
87
|
-
export declare function splitRows(rows: Iterable<SplitInputRow>, opts?: SplitOptions): SplitManifest;
|
|
88
|
-
/**
|
|
89
|
-
* Lightweight deterministic 0..(n-1) bucket from a string id.
|
|
90
|
-
*/
|
|
91
|
-
/**
|
|
92
|
-
* Deterministic bucket for a stable id.
|
|
93
|
-
*
|
|
94
|
-
* Stays on raw `createHash` rather than `sha256Hex` from `@mailwoman/core/utils`: it needs the digest BYTES, and the
|
|
95
|
-
* shared helper returns hex. Re-parsing hex back into bytes to reach the same four octets would cost more than the one
|
|
96
|
-
* line it saves.
|
|
97
|
-
*/
|
|
98
|
-
export declare function hashBucket(id: string, n: number): number;
|
|
99
|
-
/**
|
|
100
|
-
* Write a `SplitManifest` to `<outputDir>/{train,val,test}.json`. The manifests are line-separated source_id lists (one
|
|
101
|
-
* id per line) so they diff cleanly in git. Also writes `<outputDir>/MANIFEST.json` with the full structured manifest
|
|
102
|
-
* including holdouts + counts + corpus version.
|
|
103
|
-
*
|
|
104
|
-
* Reruns produce byte-identical files (the underlying `splitRows` is deterministic).
|
|
105
|
-
*/
|
|
106
|
-
export declare function writeSplitManifests(manifest: SplitManifest, outputDir: string): Promise<void>;
|
|
107
|
-
/**
|
|
108
|
-
* Type re-export for callers that want to ingest LabeledRow specifically.
|
|
109
|
-
*/
|
|
110
|
-
export type SplitInputLabeledRow = Pick<LabeledRow, "source_id" | "country" | "corpus_version" | "components">;
|
|
111
|
-
/**
|
|
112
|
-
* Streaming variant of `writeSplitManifests`: derives the per-split source-id .txt manifests + `SPLIT_MANIFEST.json` by
|
|
113
|
-
* streaming three per-split labeled-row JSONL files (one per split). Memory cost is O(1) — `sort(1)` from coreutils
|
|
114
|
-
* handles the deterministic sort with disk spill for files that exceed in-memory thresholds.
|
|
115
|
-
*
|
|
116
|
-
* Used by `buildCorpus` after the align loop has already partitioned labeled rows into `labeled-{train,val,test}.jsonl`
|
|
117
|
-
* via `splitForRow`. Counts are pre-computed by the align loop and passed in (zero re-scan).
|
|
118
|
-
*/
|
|
119
|
-
export declare function writeSplitManifestsFromLabeledFiles(opts: {
|
|
120
|
-
labeledPaths: Record<SplitName, string>;
|
|
121
|
-
outputDir: string;
|
|
122
|
-
corpusVersion: string;
|
|
123
|
-
counts: Record<SplitName, number>;
|
|
124
|
-
holdouts?: Record<string, readonly string[]>;
|
|
125
|
-
}): Promise<SplitManifest["counts"]>;
|
|
126
|
-
export {};
|
|
127
|
-
//# sourceMappingURL=split.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"split.d.ts","sourceRoot":"","sources":["../../../src/utils/split.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAWH,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AAEtD,MAAM,MAAM,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAA;AAEhD,MAAM,WAAW,YAAY;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAA;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC7B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,GAAG,EAAE,MAAM,EAAE,CAAA;IACb,IAAI,EAAE,MAAM,EAAE,CAAA;IACd;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAA;IAC3C;;OAEG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB;;OAEG;IACH,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CACnE;AAED;;;;;;;;;GASG;AACH,wBAAgB,eAAe,IAAI,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAMnE;AAED,KAAK,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,WAAW,GAAG,SAAS,GAAG,gBAAgB,GAAG,YAAY,CAAC,CAAA;AAElG;;;;GAIG;AACH,wBAAgB,WAAW,CAC1B,GAAG,EAAE,IAAI,CAAC,aAAa,EAAE,WAAW,GAAG,SAAS,GAAG,YAAY,CAAC,EAChE,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAqB,GAC7D,SAAS,CASX;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,GAAE,YAAiB,GAAG,aAAa,CAiC/F;AAED;;GAEG;AACH;;;;;;GAMG;AACH,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAMxD;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAenG;AAED;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,SAAS,GAAG,gBAAgB,GAAG,YAAY,CAAC,CAAA;AAE9G;;;;;;;GAOG;AACH,wBAAsB,mCAAmC,CAAC,IAAI,EAAE;IAC/D,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACvC,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAA;CAC5C,GAAG,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAqBnC"}
|