Packages

Public-specification codecs for Iconvex

Current section

Files

Jump to
iconvex_specs SOURCES.md
Raw

SOURCES.md

# Normative and Oracle Sources
Runtime code is pure Elixir. These primary sources define the formats or serve
as an independently implemented test oracle:
| Family | Primary source |
|---|---|
| `CTAN-LY1-TEXNANSI-1.1-AGL-4036A9CA` | CTAN TeX'n'ANSI 1.1 vector plus Adobe Glyph List commit `4036a9ca80a62f64f9de4f7321a9a045ad0ecfd6`; both artifacts are digest-pinned under `priv/sources/glyph-vector-unicode`, Adobe's BSD terms remain there, and complete LPPL 1.0 terms ship at `licenses/upstream/LPPL-1.0.txt` |
| `TEX-OT1-CMAP-1.0J` / `TEX-OT1TT-CMAP-1.0J` | CTAN `cmap` 1.0j archive SHA-256 `b5fffa016ac4571f0405592ac40bf231f9ddb6b1ce3100d17a33833284bbeb84`; the exact OT1 and OT1tt CMaps and metadata are under `priv/sources/ot1-cmap-1.0j`, with complete LPPL 1.3c terms at `licenses/upstream/LPPL-1.3c.txt` |
| `ADOBE-POSTSCRIPT-3-ISOLATIN1-AGL-4036A9CA` | PostScript Language Reference third edition Table E.7 plus the same pinned Adobe Glyph List; the reference PDF is digest-pinned but not redistributed |
| `TAMILVU-TACE16-APPENDIX-D-2010-16BE` / `TAMILVU-TACE16-APPENDIX-D-2010-16LE` | Tamil Virtual University 2010 final report Appendix D, SHA-256 `78c77c607892d8f70bda3bbd9ca01371ddf2fe5fc8f3ef0481975d59abf3435c`; explicit endian transports preserve all 380 assigned units |
| `WANG-1983-WISCII-PDF-F4043449-WIKIPEDIA-REV1352856854` | Two separate evidence records: copyrighted Wang manual 800-1149-01 Appendix D, SHA-256 `f4043449df7ca900a8d2aef137b82ade74f6dcff46aed8b7d49f57af927b7dfe`, external-only with `NOASSERTION` because no redistribution license was identified; Unicode binding from Wikipedia revision 1352856854 wikitext SHA-256 `1a9fceddcf9c4c647c88d750cdd60d9d14aecb339d727d3f7d781a826d85367f` under `CC-BY-SA-4.0` |
| `WIKIPEDIA-REV1354794598-PARATYPE-WINDOWS-POLYTONIC-GREEK` | Complete Wikipedia revision 1354794598 table, kept distinct from its documented older B5/FF-swapped FontLab profile |
| `WIKIPEDIA-REV1340817319-EKI-SAMI-WIN-CP1270` | Wikipedia revision 1340817319 independently matched against EKI `SAMI_WIN (CP1270)` at every mapped byte |
| Unihan 17 Chinese telegraph property tokens | Unicode 17.0.0 `Unihan.zip` member `Unihan_OtherMappings.txt`, SHA-256 `4fabda168d04a5ac360809a8bfa377fe54e04fbc069ba67cacad4df03d691fa0` (archive SHA-256 `f7a48b2b545acfaa77b2d607ae28747404ce02baefee16396c5d2d7a8ef34b5e`), UnicodeData 17.0.0 SHA-256 `2e1efc1dcb59c575eedf5ccae60f95229f706ee6d031835247d843c11d96470c`, and [UAX #38 revision 39](https://www.unicode.org/reports/tr38/tr38-39.html), SHA-256 `c860013dbd725652888296afe688ac5db9352d234e0741ad44e6cba6ab56852e`. Repository fixtures retain both exact Unicode source files. `tools/extract_unihan_telegraph.py` regenerates the compact Mainland, Taiwan, and explicit lossless-policy tables at SHA-256 `685b057cc0690c19718966aa02121887071398227c6b48605cf9347db70e16f0`, `15dc21eacf695ce038500e68fa40c125d0762b5e265c9683f82f17d2eac878a6`, and `79890c693597f1f25b4e68abe5627883c8299d7d382ed8865c42a3d361971696`. The separately implemented verifier reparses the sources and compares all 30,000 token outcomes. Only the compact tables and sanitized metadata are packaged. The property source defines one four-digit value, not a concatenated transport. |
| RFC 1345 tables | [RFC 1345](https://www.rfc-editor.org/rfc/rfc1345.html) and [RFC Editor errata](https://www.rfc-editor.org/errata/rfc1345) |
| East Asian RFC grids | Unicode mapping archives: `JIS0208.TXT`, `JIS0212.TXT`, `KSX1001.TXT`, and `CP936.TXT`, pinned byte-for-byte under `priv/sources` |
| Adobe/Apple legacy maps | Unicode mapping archives under `VENDORS/ADOBE` and `VENDORS/APPLE`; all 28 codec-bearing files are pinned under `priv/sources/vendor` |
| MARC-8 and ANSEL | Library of Congress `codetables.xml` and MARC 21 Character Sets Parts 2 and 4 |
| ISCII-91 variants | ICU4J 78.1 `CharsetISCII`, exhaustively exported by `tools/ISCIIFixture.java`; Microsoft code-page aliases 57002–57011 |
| glibc charmaps | All 29 relevant files pinned from GNU C Library revision `cdfa80fad3d52217ae986f9acdcbdbfc94b3da3e`; the manifest records every source URL and SHA-256 |
| ICU UCM SBCS maps | All 135 standalone `SBCS` sources and `convrtrs.txt` from ICU 78.3 revision `21d1eb0f306e1141c10931e914dfc038c06121da`; aggregate SHA-256 `7ea991ef29cb20bbb570bd16ba602f38f1f2667765c905be6725ee2663276136` |
| ICU UCM multibyte maps | 30 complete `MBCS`/`DBCS` mapping sources and `convrtrs.txt` from the same revision; aggregate SHA-256 `f4c776ca0dadaf0892acaee8fc8aaadfd3b68d0247ec119b49fd1967b0ae64a6`; internal compound fragments, LMBCS exception data, and hybrid algorithmic GB18030-2022 are classified separately |
| ICU LMBCS optimization profiles | ICU 78.3 `release-78.3` / revision `21d1eb0f306e1141c10931e914dfc038c06121da` [`ucnv_lmb.cpp`](https://github.com/unicode-org/icu/blob/21d1eb0f306e1141c10931e914dfc038c06121da/icu4c/source/common/ucnv_lmb.cpp), its Lotus exception table, and all twelve loaded national subconverters; ordered aggregate SHA-256 `8d7070af86babdf51973219367d85130b996f757cb7a8081068385dfed8502fb`. The source instantiates exactly optimization groups 1, 2, 3, 4, 5, 6, 8, 11, 16, 17, 18, and 19; executable all-scalar differential metadata is under `priv/sources/icu-78.3-lmbcs1` |
| ICU stateful EBCDIC maps | All ten `EBCDIC_STATEFUL` UCM sources and `convrtrs.txt` from the same revision; aggregate SHA-256 `b36090ce658a2a8afe8f430b624d2203657e1c69aeae323352ba010115616153` |
| ICU historical UCM archive | All 1,050 files under `charset/data/ucm` from Unicode `icu-data` revision `d7d6dd5bb68930c5e6b3dd4491574153d3a1ba5a`; aggregate SHA-256 `8103d520bb496cdd34b0428153eb42f81bad603353bd380c4f4d5a6f10e98d81` |
| APL ISO-IR-68 and KPS 9566 | Unicode mapping archive's current APL table, dated 2004 APL table, and KPS 9566-2003 table; ordered aggregate SHA-256 `f76182817119b7cdf4a61be5aa5fa5d661654039210563c92ab9a1971892e369` |
| BOCU-1 | [Unicode Technical Note #6](https://www.unicode.org/notes/tn6/) and its normative sample `bocu1.h`/`bocu1.c` |
| Punycode | [RFC 3492](https://www.rfc-editor.org/rfc/rfc3492.txt), pinned SHA-256 `d1848b1b4f01e20708a64f42394e5f4b840141935bed7f09ad7baeb6693b8772`. CPython `v3.14.6` `encodings/punycode.py` is the independently executable oracle, pinned SHA-256 `1e8d57e06e9b527009c35f2a1486ab56b51540e817f5bd8f239dc71e3fc0b014`; its PSF License Version 2 text is pinned at SHA-256 `b0e25a78cffb43f4d92de8b61ccfa1f1f98ecbc22330b54b5251e7b6ba010231` and the complete metadata is under `priv/sources/rfc3492` |
| UTF-5 (`draft-jseng-utf5-01`) | IETF Internet-Draft [`draft-jseng-utf5-01`](https://www.ietf.org/archive/id/draft-jseng-utf5-01.txt), 28 January 2000, retained byte-for-byte at SHA-256 `12ae18367c110b5dcef9cc3f06b6ae40e60c8fde489fdd161f1bb98e3e5f2375`. The source defines the uppercase alphanumeric quintet grammar and states that distribution is unlimited; exact authorship, revision, and disposition are recorded under `priv/sources/draft-jseng-utf5-01`. |
| UTF-6 (`draft-ietf-idn-utf6-00`) | IETF Internet-Draft [`draft-ietf-idn-utf6-00`](https://www.ietf.org/archive/id/draft-ietf-idn-utf6-00.txt), 16 November 2000, retained byte-for-byte at SHA-256 `80033b5e41bc9f2fd01bddf99a300827b837f06ba93ef303bc54bc53df3755ca`. It defines the whole-hostname UTF-16-unit transform, variable hexadecimal digits, Y/Z compression, and RFC 1035 legality; the complete notice and interpretation record are under `priv/sources/draft-ietf-idn-utf6-00`. |
| OpenJDK quarantine | Official OpenJDK `jdk` revision `6ae23a0d6574dc8139aea93ea3c562a7410fcb34` defines `x-eucJP-Open`, `x-MS950-HKSCS-XP`, `x-ISO-2022-CN-GB`, `x-ISO-2022-CN-CNS`, `x-windows-50220`, `x-windows-50221`, and `x-windows-iso2022jp`. All seven source-informed runtimes, importers, generated assets, and registrations are quarantined and not shipped. The four exact source sets, individual file hashes, and working source URLs remain under repository-only `priv/sources/openjdk-*`. Each directory retains the revision's exact GPLv2-plus-Classpath `LICENSE` (`4b9abebc4338048a7c2dc184e9f800deb349366bdf28eb23c2677a77b4c87726`) and `ADDITIONAL_LICENSE_INFO` (`a69bce275ba7a3570af6579cb0f55682cd75fedfcd49e0e8e9022270c447c916`). The two table-only runtimes were also quarantined because their generators inspect and reproduce distinctive Java routing/override rules, so repository evidence did not support an LGPL-only provenance claim for the resulting merged tables; this is a factual disposition, not legal advice. |
| CPython ISO-2022-JP-EXT | CPython `v3.14.6` / revision `c63aec69bd59c55314c06c23f4c22c03de76fe45`: `_codecs_iso2022.c`, `mappings_jp.h`, and `iso2022_jp_ext.py`, plus a deterministic manifest. Individual digests and official URLs are in `priv/sources/cpython-3.14.6-iso2022-jp-ext/SOURCE_METADATA.md`; the existing exact PSF License Version 2 text is shared from `priv/sources/rfc3492/CPYTHON-LICENSE.txt` |
| .NET x-Europa and x-cp50227 | Official `dotnet/runtime` revision `dbb2178288bb4e1e8f1fde3958be3bd75573c459`: exact `codepages.nlp`, name tables, implementation sources, tests, and MIT `LICENSE.TXT`, ordered aggregate SHA-256 `710a341a09f90bec6ec66e01d44620bf6485b4420b92a6075e45f5e38f860cdf`. The data defines CP29001 while `EncodingCodePages.cs` proves that CP50227 delegates to CP936; the CP936 byte map is separately pinned from Unicode. Complete metadata is in `priv/sources/dotnet-runtime-codepages` |
| glibc IBM423 | GNU C Library revision `e5145be467bed28bafde33a51df97840be37065e`: `iconvdata/ibm423.c` SHA-256 `0d1f50f21a2b7ec6375e1ad8a35258b3993d0220b7d4089fb0408e229ae67067` and `localedata/charmaps/IBM423` SHA-256 `8c5890f6c82ceef0231fd61f4bd661e1fd8cadd88e1944be2b31c967a9f1e02e`. Exact source URLs, the C file's LGPL-2.1-or-later association, the headerless charmap's conservative repository-only disposition, and exact `COPYING.LIB` are under `priv/sources/glibc-e5145be467bed28bafde33a51df97840be37065e-ibm423` |
| UTF-8-MAC / HFS Plus | Apple `libiconv-115.100.1` revision `f96c1fcdbb308374e39290676b5fea40a3859d17`, archived TN1150, and Unicode 3.2 normalization data. `libiconv_test.c` retains APSL-1.0 and its exact license text (`54702bc17c8ac3601637577c8f92e5992be79110df72c7ff6fe20d75d4df2745`); `citrus_utf8mac.c` retains BSD-2-Clause; TN1150 remains Apple-copyrighted documentation; Unicode files retain Unicode License V3. Upstream files are excluded from Hex, while the generated runtime manifest ships decomposition keys and exact composition pairs parsed from the BSD C tables plus Unicode data; its attribution is in `LICENSE.BSD-2-CLAUSE` (SHA-256 `10a62f2fa2653c3a669e0a17ebd06fa8300d2f949aee2b1f191d957eada61618`). All six source hashes and per-artifact ownership are in `priv/sources/utf8-mac/SOURCE_METADATA.md` |
| Microsoft Windows Best Fit | Unicode Consortium's official Microsoft Windows Best Fit archive: all fifteen files, ordered aggregate SHA-256 `0a18f4eab7105aa7f5e54fb7dd6a2b9c1f72dd794e2d517a5e502e5c65c7e430`. Each official URL, individual digest, and Unicode License V3 association is recorded in `priv/sources/windows-best-fit/SOURCE_METADATA.md` |
| IANA registry-derived families | IANA `Amiga-1251`; RFC 1815 plus Unicode 1.1.5 for the three historical ISO-10646 profiles; and fourteen IANA PCL names joined to exact mapping facts extracted from Artifex GhostPDL revision `409356a1ad15aeca1280bb91aed58564c5524540`. The registry/RFC/Unicode/Artifex ownership boundaries and repository-only source dispositions are recorded under `priv/sources/iana`, `priv/sources/iana-iso10646`, and `priv/sources/iana-pcl-symbol-sets` |
| IBM Unicode CCSID reference | IBM i's official CCSID inventory identifies the supported UTF-16BE CCSID aliases. The exact IBM-copyrighted page SHA-256 is `d0682e71d66de77bd518cda1e82377474bdb78cd6dd87b0c17cbccdc25c67dfb`; it is repository-only and excluded from Hex. URL, ownership, and disposition are in `priv/sources/ibm-unicode-ccsids/SOURCE_METADATA.md` |
| SCSU | [Unicode Technical Standard #6, version 3.6](https://www.unicode.org/reports/tr6/tr6-4.html) |
| CESU-8 | [Unicode Technical Report #26, version 4](https://www.unicode.org/reports/tr26/tr26-4.html) |
| Modified IMAP UTF-7 | [RFC 3501 section 5.1.3](https://www.rfc-editor.org/rfc/rfc3501.html#section-5.1.3) |
| Java Modified UTF-8 | [Java `DataInput` modified UTF-8](https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/io/DataInput.html#modified-utf-8) |
| UTF-EBCDIC | [Unicode Technical Report #16, version 8](https://www.unicode.org/reports/tr16/tr16-8.html) |
| x-user-defined | [WHATWG Encoding Standard section 14.5](https://encoding.spec.whatwg.org/#x-user-defined) |
| UTF-9 and UTF-18 | [RFC 4042](https://www.rfc-editor.org/rfc/rfc4042.html), including its exact octal vectors and validity requirements |
| Iconvex Unicode signature profiles | Unicode Standard 16.0.0 chapters [3](https://www.unicode.org/versions/Unicode16.0.0/core-spec/chapter-3/) and [23](https://www.unicode.org/versions/Unicode16.0.0/core-spec/chapter-23/) define the scalar, UTF-16/UTF-32 serialization, and U+FEFF facts. The three `ICONVEX-` profiles add an Iconvex-defined framing policy and are not a Unicode-standard encoding scheme. Their newly authored wrapper delegates to LGPL Core code, imports no vendor implementation or table, and ships under `LGPL-2.1-or-later`; exact behavior and disposition are recorded in `priv/sources/iconvex-unicode-signature-profiles/SOURCE_METADATA.md`. |
| ECMA-1 | [ECMA-1, 1st edition, March 1963](https://ecma-international.org/publications-and-standards/standards/ecma-1/), normative table on scanned PDF page 6; pinned SHA-256 `3bef4151a3aac5d78b1c7d6d91946d58447cd8f3388ed274e768a37967ebeb09` |
| DEC SIXBIT | [*Introduction to DEC System-10* (1974)](https://bitsavers.org/pdf/dec/pdp10/Sze_Introduction_to_DEC_System-10_1974.pdf), PDF page 20, which defines the low-six-bit ASCII derivation and lowercase folding; pinned SHA-256 `a0a9bfc284963056b6fd39d099e3eee76946b0404542e52bae050b798d79bce5` |
| UNIVAC I expanded character code | Sperry Rand [*UNIVAC I* programming manual (1959)](https://bitsavers.org/pdf/univac/univac1/UNIVAC1_Programming_1959.pdf), Figure 8-2 on PDF page 129 / printed page 124, SHA-256 `2b4c3c18112a5a0820cf886e417cb605408b635fdc6bdaf658638c7d738c3efc`; and Remington Rand's [1951 reference card](https://bitsavers.org/pdf/univac/univac1/UnivacI_RefCard.pdf), SHA-256 `87a6858433286efffcbf4c7bcdb96460d62ad656d06d7125af924fed4542d97f`, for printer actions and tape-track order. The independently transcribed complete 64-pattern CSV has SHA-256 `61a1e290652c0a0dd658301cef5d96caa1ab3a6e7520752eeca4d9902fb5622a`; the copyrighted scans are not redistributed. |
| UNIVAC 1100 Series FIELDATA | Sperry Rand [*SPERRY UNIVAC 1100 Series Executive System — EXEC 8 Hardware and Software Summary* (UP-7824 Rev. 1, 1974)](https://bitsavers.org/pdf/univac/1100/exec/UP-7824r1_EXEC_8_Hw_Sw_Summary_1974.pdf), Table 6-1 on printed page 6-1 / PDF page 113; all 64 six-bit assignments; pinned SHA-256 `de2f25c0ebff74ee75c6fba8a4125b733800200525b8df84a9e40c667400f6ab` |
| UNIVAC 4009 FIELDATA | Sperry Rand [*SPERRY UNIVAC 1106/1108 Systems 4009 Display Console Programmer Reference* (UP-7604 Rev. 1, 1968/1974)](https://www.fourmilab.ch/documents/univac/manuals/pdf/1108/UP-7604r1_1106_1108_Systems_4009_Display_Console_Programmer_Reference_1974.pdf), Table 3-1 on printed page 3-4 / PDF page 19; all 64 input/output dispositions and graphics; pinned SHA-256 `469bcb196f0bc76b2bdbce3821a34fcd8e697bf20bb86a088746cd57ad673140` |
| TI-83 Plus large/small fonts (2002) | Texas Instruments [*TI-83 Plus Developer Guide*, Third Release, 28 May 2002](https://education.ti.com/download/en/ed-tech/830D08FF31804AEAA2F03B8F5E89AD14/672891A1E98349CAB91C11B4928C253C/sdk83pguide.pdf), large-font Appendix A on physical pages 173–179 / printed pages 156–162 and small-font Appendix B on physical pages 180–187 / printed pages 163–170, SHA-256 `a07d2cae4d5be0529901c178acd80028d2a72c484a04c61cde104f34712cec55`. The independent compact 256-row numeric mapping has SHA-256 `186d80d270a6a27815df8d0b5ff993c65b158efb7f3d6ddd27533feb9cb96ccc`; its metadata has SHA-256 `31a7655c59eb3da1f7c6bb123f6eedb961f64ea2cb3a7e9240dc5e004e73aa8f`. Only those two assets are packaged. |
| TI-89 / TI-92 Plus AMS 2.0 | Texas Instruments [*TI-89 / TI-92 Plus Guidebook*](https://education.ti.com/download/en/ed-tech/2110B5BC591D44E1AF4C28F00A6614B6/0470DB419F2144349E4032AFE3C0DD7E/8992bookeng.pdf), Appendix B on physical page 572 / printed page 555 and `char(integer)` on physical page 436 / printed page 419, SHA-256 `6e7266917fd2de05f7374ebe0de3ef898a06533e17fd9a5c6e4a3d3f237140a9`; independently corroborated by the [TI-89 Titanium / Voyage 200 Guidebook](https://education.ti.com/download/en/ed-tech/FA1DC891957E4700B46A67255850C592/983EA8A4BA2A4AE9B2AF5EEEE922E3C1/TI-89_Guidebook_EN.pdf), physical page 926 / printed page 924, SHA-256 `95e086e54fa68df96b5a8249883a60797108dad2c32aa54b64fb84bf9150df1f`. The independent 256-row CSV has SHA-256 `be205ae316b916d6f2b386fd85729f51cdcd6852c9db64f014d0187a6345fb44`; only it and disposition metadata are packaged. |
| IBM and CDC punched-card profiles | IBM [7040/7044 Student Text](https://bitsavers.org/pdf/ibm/7040/22-6732-1_7040StudentText.pdf), SHA-256 `46336c0ed59e04fdc5c7c9553e668f8fcbb000caa88a54dca72d943d0fed28bb`; IBM [1401 Reference Manual](https://www.bitsavers.org/pdf/ibm/1401/A24-1403-5_1401_Reference_Apr62.pdf), SHA-256 `ab9d79ef05aa5c23e83f251c829607c2e9cb2dd89b368dd4565bcaff79af6ef9`; CDC [167-2 Card Reader Manual](https://www.bitsavers.org/pdf/cdc/160/options/60022000D_167-2_Card_Reader_Reference_196502.pdf), SHA-256 `f3dce73c357934c252d54563b2d9271bc46e990a1ddbeda5f9f0c24967175bbd`; CDC [Punched Card Equipment Training Manual](https://www.bitsavers.org/pdf/cdc/training/60239300_Punched_Card_Equipment_Training_Manual_Aug67.pdf), SHA-256 `e908fedc429cf9f65495d588092988c2a4d79d1159bdb290a63196f5566f467d`; CDC [6000 Interactive Graphics Manual](https://bitsavers.org/pdf/cdc/graphics/44616800-03_Interactive_Graphics_System_Prelim_Ref_197001.pdf), SHA-256 `275d0c2e8b3edacbd356f614d1e8ee0b63b9c159f0e1f68583e7169546b4810d`; and the University of Iowa [Punched Card Codes](https://homepage.cs.uiowa.edu/~jones/cards/codes.html) reconstruction, SHA-256 `824e61a9687f7fa0b9c9dd3c966ca02020bf8af1ab6671e9bd2e131f22f47b18`. Unicode bindings for IBM control graphics follow [L2/15-083R](https://www.unicode.org/L2/L2015/15083r-group-mark.pdf), SHA-256 `421c2a627a43a7b26c252024e480b59e8c61f42e9ddab660bba8a2ca350f3eee`. Complete extraction and disposition metadata pins the source-qualified `BCD-CDC-IOWA` runtime profile while leaving generic CDC names unclaimed. Only normalized CSV evidence and metadata are packaged; the copyrighted source artifacts remain repository-only. |
| IBM 24/26 special-character arrangements | IBM [A24-0520-3, *IBM 24 Card Punch; IBM 26 Printing Card Punch Reference Manual*](https://bitsavers.org/pdf/ibm/punchedCard/Keypunch/024-026/A24-0520-3_24_26_Card_Punch_Reference_Manual_Oct1965.pdf), October 1965, SHA-256 `8d1f8e0b937989fa720d434b636bc829899414b7f11396b436ccd68b2265c91b`. Figure 23 on physical PDF page 28 / printed page 27 defines all 110 cells of arrangements A, B, C, D, E, F, G, H, J, and K; Figure 28 on physical page 37 / printed page 36 fixes the shared space/alphanumeric punches. The exact normalized extraction SHA-256 is `edb7190244bbf1bca034453bc7de16ccc78d5a3d86c5f5957ec82a2f93d25733`; U+2311 and explicit U+2032 semantics plus all six decode aliases are documented under `priv/sources/ibm-24-26-arrangements`. The copyrighted manual remains repository-only; normalized evidence and metadata are packaged under LGPL-2.1-or-later. |
| ECMA-44 raw punched-card transport | [ECMA-44, first edition, September 1975](https://www.ecma-international.org/wp-content/uploads/ECMA-44_1st_edition_september_1975.pdf): forward Table 1 on PDF page 9 / printed page 4, inverse Table 2 on PDF page 11 / printed page 6, scope on PDF page 8, and physical validity on PDF page 7. PDF SHA-256 `09b71ed57db7a0b2c1e9bc7006f001df198450f37b706c01d2754ddb5a5de228`; independently transcribed 256-cell CSV SHA-256 `834abb8180af52f790f09ace4f6bc75953a2c8e0df98bb5dcb33f62d3a644995`. Only the transcription and digest-bearing metadata are packaged, not the PDF. |
| CDC Display Code and 6/12 Display Code | [*NOS Version 1 Operators Guide* (May 1980)](https://bitsavers.org/pdf/cdc/cyber/nos/60435600L_NOS_Version_1_Operators_Guide_May1980.pdf), printed pages A-1 through A-7 / PDF pages 165 and 167–171; complete CDC/ASCII graphic tables, the documented 63/64-character colon/percent anomaly, the exact 6/12 grammar, and conversions for all 128 ASCII values; pinned SHA-256 `86980dc43cd81f8666241277c56ab1f7c07f11b6c900c0a5d73a77cee4421be6` |
| DEC National Replacement, Special Graphic, and Technical sets | DEC's [*VT330/VT340 Text Programming Reference Manual*](https://bitsavers.org/pdf/dec/terminal/vt340/EK-VT3XX-TP-002_VT330_VT340_Text_Programming_198805.pdf), Table 2-1 on printed page 25 / PDF page 38 and Figures 2-7/2-8 on printed pages 26–27 / PDF pages 39–40; all twelve NRC replacement lists, complete 94-position terminal tables, and explicit GL/GR invocation; pinned SHA-256 `518676ad1188d4f75d0780e25f0a8fda2bb4a1a591902c6d62e1b9fde8042978`. Unicode mapping evidence is pinned from [L2/98-354](https://www.unicode.org/L2/L1998/98354.pdf), SHA-256 `c50253ab97f2e155f55c920f9e11e449c3a11f955ee585327ef033c647fa1c78`, and [WG2 N5028](https://www.unicode.org/L2/L2022/22020r2-n5028.pdf), SHA-256 `e64a54b4b223b5e6a9d686a7a7ddd1fc98d0bc88585059be02078b082a760e61`. Kermit's tables at revision `8e977425d2f7f618d14aa466d516e9b79787ffc6` are a separately licensed historical cross-check; executable guards preserve the DEC manual's Dutch and Portuguese corrections. |
| SI 960 / DEC Hebrew | DEC's [*Digital Guide to Developing International Software*](https://www.bitsavers.org/pdf/dec/_Books/_Digital_Press/Kennelly_Digital_Guide_To_Developing_International_Software_1991.pdf), printed page 19 / PDF page 40, defines both the ASCII-based 7-bit set and the separate DEC-MCS-based 8-bit set; pinned SHA-256 `a28083a4057e8bffcc928bda4f56bb316b939b6c6b5f498a3a180322bd1cb80b`. DEC's [*VT510 Video Terminal Programmer Information*](https://vt100.net/mirror/mds-199909/cd3/term/vt510rmb.pdf), printed page 5-57 / PDF page 181, independently fixes the 7-bit Hebrew range at 60–7A; pinned SHA-256 `440bbee110eb75027a06b5b375683fbc87cb739edac32899005ad46981c7d514`. Kermit's `u_hebrew7`/`tx_hebrew7` tables at revision `8e977425d2f7f618d14aa466d516e9b79787ffc6` are a separately licensed cross-check. |
| Short KOI / KOI-7 N2 | Kermit's BSD-licensed `u_koi7` table at revision `8e977425d2f7f618d14aa466d516e9b79787ffc6`, source SHA-256 `af93d5a1c779aa73fa3221ab5ec0125de20267110cf23395971ce35cc88527ca`, plus its [published complete table](https://www.columbia.edu/kermit/koi7.html). The test oracle executes all 128 septets and distinguishes this stateless GOST 13052 profile from `KOI7-switched`. |
| KOI8-F / KOI8 Unified | Fingertip Software's [archived creator specification](https://web.archive.org/web/19980109123404id_/http://fingertipsoft.com/ref/cyrillic/koi8-uni.html), retrieved HTML SHA-256 `d9e5d2825477b1e3c28ea917d615b0d938d8d97417b13875f20e0c5a6d10c59f`, and New Mexico State University's complete [KOI8 Unified Cyrillic to Unicode 2.1 mapping](https://web.archive.org/web/20200712005106id_/http://sofia.nmsu.edu/~mleisher/Software/csets/KOI8UNI.TXT), vendored byte-for-byte at SHA-256 `9b24e0aa3d0eaf1ebacfb7cbb1ef435793c7542a3cf99fc20f90923fccba15cd`. All 256 octets and canonical inverses are checked, including `0x95` → U+2219 and the duplicate U+00A0 cells at `0x9A`/`0xA0`. The mapping's MIT permission notice is retained in the source and reproduced in `LICENSE.MIT-NMSU` (SHA-256 `453f7f1cbd5504398ebee03e90d7ebf1ccc80ef9661cabb779ce749099666ef4`); exact provenance is in `priv/sources/koi8-f/SOURCE_METADATA.md`. |
| ELOT 927 / Kermit ELOT927-GREEK | ISO registration [ISO-IR-88](https://itscj.ipsj.or.jp/ir/088.pdf), visually audited across all 128 positions and pinned at SHA-256 `0bcae39e969ce89ad4b926cc0b0cc7c838a6720e99461f19460c9d9d2e7d815c`, defines standard ELOT 927 and is byte-exact with RFC 1345 `greek7`. Kermit's BSD-licensed `u_elot927` table at revision `8e977425d2f7f618d14aa466d516e9b79787ffc6`, source SHA-256 `af93d5a1c779aa73fa3221ab5ec0125de20267110cf23395971ce35cc88527ca`, differs at 54 positions and is exposed only under the explicit Kermit profile name. |
| Versioned Kermit single-byte names | ICU archive `iso-8859_7-1987.ucm` (SHA-256 `dbbc16acd5773a6635ce2acb9c6901db4c1749e0d5ab107512fc93e8d92ff413`) is byte-exact with Kermit `u_8859_7` and defines `GREEK-ISO`/`ELOT928-GREEK`; Kermit `u_8859_8` is byte-exact with RFC 1345 ISO 8859-8:1988 and defines `HEBREW-ISO`; GNU libiconv 1.19 `ISO-8859-10.TXT` (SHA-256 `03605555e750ac5a2a34c9d9943e3fb823e1f8c46bc0316ff556dce0dbbdfe27`) defines current-standard `LATIN6-ISO`; and ICU archive `windows-10079-2000.ucm` (SHA-256 `2c57ea0726702163983481661b8f8ffe532e9f1060c57f4cdb9f196294d0ef04`) is byte-exact with Kermit `u_maclatin` and defines `MACINTOSH-LATIN`. Permanent tests distinguish the historical tables from their modern near matches. |
| Kermit vendor byte tables | Kermit's BSD-licensed `u_cp856`, `u_mazovia`, `u_qnxgrph`, `u_dgi`, `u_dgline`, `u_dgword`, `u_hpmath`, `u_snibrack`, `u_snieuro`, `u_snifacet`, and `u_sniibm` tables from `ckcuni.c` at revision `8e977425d2f7f618d14aa466d516e9b79787ffc6`, source SHA-256 `af93d5a1c779aa73fa3221ab5ec0125de20267110cf23395971ce35cc88527ca`. All 2,816 possible octets and complete first-byte canonical inverses are checked against the pinned source. Source-qualified `KERMIT-*` names prevent the terminal subsets from claiming a broader vendor standard, while `BULGARIA-PC`, `MAZOVIA`, `QNX-CONSOLE`, and `DG-INTERNATIONAL` retain their documented identities. The unchecked `u_dgspec` and `u_hpline` tables remain excluded. Independent identity evidence and links are recorded in `priv/sources/kermit-vendor-8bit/SOURCE_METADATA.md`. |
| DEC PDP-11 RADIX-50 | [*FORTRAN IV Language Reference Manual* (June 1977)](https://www.bitsavers.org/pdf/dec/pdp11/rt11/v4.0_Mar80/4_fortran/DEC-11-LFLRA_FORTRAN_Language_Reference_Manual_Jun77.pdf), printed page A-3 / PDF page 145; complete alphabet, octal digit values, base-40 formula, maximum word, and `X2B` example; pinned SHA-256 `4f8ad8bc9f838f051d45f3c9560f7df09c2bd49142f484c13739d7d57ee57625` |
| DEC PDP-6/10 RADIX50/SQUOZE | [*MACRO Assembler Reference Manual* (April 1978)](https://bitsavers.org/pdf/dec/pdp10/TOPS10_softwareNotebooks/vol13/AA-C780C-TB_Macro_Assembler_Reference_Manual_Apr78.pdf), printed pages 3-56 and A-1 through A-3 / PDF pages 86 and 165–167; complete alphabet, six-digit 36-bit layout, four tag bits, and `RADIX50 10,SYMBOL = 126633472376` octal vector; pinned SHA-256 `4034751a6807f29fc447550139432adbb19e796e51885fb5eefbbf1a0eeb2df0` |
| DEC PDP-9/15 RADIX 50 | [*PDP-9 ADVANCED Software System: Utilities*](https://www.bitsavers.org/pdf/dec/pdp9/DEC-9A-GUAB-D_UTILITIES.pdf), printed page A1-1 / PDF page 133; complete alphabet, three-digit 18-bit layout, two classification bits, and `SYMNAM` word vectors; pinned SHA-256 `48391ddbd4919a86c6f1d648573d2d44f6ddf1bdb81c987880383f7a8c339e28` |
| IBM composed CCSIDs | [IBM i CCSID inventory](https://www.ibm.com/docs/en/i/7.6.0?topic=information-ccsid-values-defined-i), [IBM encoding schemes](https://www.ibm.com/docs/en/i/7.5.0?topic=information-encoding-schemes-ccsids), [AIX multibyte code-set compatibility](https://www.ibm.com/docs/en/aix/7.1.0?topic=converters-multibyte-code-set), and IBM's [CDRA conversion-table archive](https://download.boulder.ibm.com/ibmdl/pub/software/dw/java/cdctables.zip); pinned ICU archive revisions provide IBM-895/952/955/960/971, CP891+CP926 for IBM-934, and CP904+CP927 for IBM-938. IBM CDRA `IBM-1175.zip` / `0497B4B0.TXMAP` has 256 mappings and is exactly equal to pinned table `icu_archive_374` |
| IBM CP310/907/1116/1117 and DEC Greek/Turkish | IBM's corporate GCGID registry pages for CPGIDs 293, 310, 437, 775, 850, 857, 875, 907, 1116, 1117, 1254, 1287, and 1288; pinned IBM/ICU P100 UCM Unicode bindings; DEC's revised August 1994 *Programming Reference Manual for the LA Series* figures A-24/A-27; and the exact IBM/tnz CP310 table at commit `b1eae3c8200188b77aceb40754bf89ccbf7646a4`, blob `07d60f4de096704112b8701885d6dba682224426`. The pure-Elixir generator records explicit join/priority/collision rules and regenerates seven 256-row vectors byte-for-byte. URLs, individual SHA-256 digests, licensing, map identities, and cited pages are in `priv/sources/ibm-additional-code-pages/SOURCE_METADATA.md`. |
| TeX OML and OMS semantic profiles | Pinned LaTeX2e commit `7c8574ae28a5b257f7b92cc1e5e317255644e40d` and its complete `cmmi10`/`cmsy10` ToUnicode tables in `mathcapture-tag-001.tpf`, SHA-256 `e49bef156ccaf6f6e3616103a5ff6b0363aedb33ad06623fe63f6ccc41e2b72e`; the LaTeX encoding declarations and Computer Modern Metafont archive are independent identity checks. The two Iconvex-authored 128-row tables are packaged with digest-bearing provenance; upstream source artifacts are reference-only. |
| Cork / TeX T1 | Donald Ferguson's [1990 Cork proposal](https://www.tug.org/TUGboat/tb11-4/tb30ferguson.pdf), SHA-256 `ce79e1e82074f4d48abd15c9bc4f38619d1469bf96c532941e3bbd1df409a74c`; CTAN `ec.enc`, SHA-256 `bd865bb53fe3c2f479efa8e3d92e1027db5e64a1d7c0ced7884d6c9ee65c0b48`; and CTAN `t1.cmap`, SHA-256 `e43d20b203a25786d101e757d312b3660bc2505d57251db7701cd3f69e6d1f42`. Separate EC-glyph and CMap 1.0j profiles preserve the nine intentional semantic differences and the undefined slot rather than inventing one ambiguous mapping. |
| Formal SignWriting 1.0.0 | [Zenodo FSW/SWU artifact](https://doi.org/10.5281/zenodo.20272667), companion [grammar artifact](https://doi.org/10.5281/zenodo.20272691), and pinned source commit `99e0258ed19db56d89099dc43e15fa5c82719983`. The strict domain contains five structural markers, 500 coordinate numbers, and 62,504 symbols; the complete 63,010-entry contract is generated and exhaustively checked without broadening the v1.0.0 grammar. |
| PDP-1 Concise, Friden FPC-8, FIO-DEC, and parity transports | DEC [PDP-1 Handbook, April 1960](https://bitsavers.org/pdf/dec/pdp1/F15_PDP1_Handbook_Apr60.pdf), SHA-256 `7495a32bca4897aa54fb0b073149303b66a17bf2f96371e930aa300594c38ab6`, and [PDP-1 Handbook, October 1963](https://bitsavers.org/pdf/dec/pdp1/F15D_PDP1_Handbook_Oct63.pdf), SHA-256 `8490b72962584f30c9dc7f3a9684ba3eeb79c7d5530b78ee371a6efe098a8f21`. Eight explicit profile names preserve both incompatible revisions, physical odd-parity transports, and lower/upper initial states; no ambiguous bare PDP-1 or FIODEC alias is claimed. |
| Kamenický / KEYBCS2 | Public-domain 1996 Czech and Slovak encodings FAQ, SHA-256 `ac570cbd8f97bd22b65a19fe456f263508946417e46a83de232c583b62511a49`, independently checked against pinned Free Pascal and DOSEMU tables. Oracle MySQL commit `d229bb760c49b65e19ec28342236961ad961d7fe` supplies the separately named one-byte-different `MYSQL-KEYBCS2` profile, source SHA-256 `86852fa5aede60cdaaf7ce46281a60f707c8bc69067f26202127905e6b2aabe9`. Ambiguous CP895, CP867, and DOS-895 identities remain excluded. |
| ABICOMP / Brazil CP3848 | Star Micronics *LC-8021 User's Manual*, physical PDF page 64, SHA-256 `c723b37df1b936606d960754713c23ed9ac11be1f0cb3365300fad1c9521724b`, independently confirmed by Epson *Stylus Color 200 User's Guide* physical page 119, SHA-256 `9c957a73217d9e39cfa9ba5c3f4b40cdcfe205e8b988ee2bf69268d12d8c697d`, and FreeDOS CPIDOS. The exact profile defines 192 unique bytes and 64 explicit holes. Two Star PDF containers were reconciled by a byte-identical rendered source page; PCL-13P, PCL-14P, and ABICOMP-INTERNATIONAL remain excluded for lack of an exact map. |
| BraSCII / Brazil CP3847 | Epson *Stylus Color 200 User's Guide* physical PDF page 119, SHA-256 `9c957a73217d9e39cfa9ba5c3f4b40cdcfe205e8b988ee2bf69268d12d8c697d`, and Star Micronics *LC-8021 User's Manual* physical page 64, SHA-256 `c723b37df1b936606d960754713c23ed9ac11be1f0cb3365300fad1c9521724b`, independently give the complete table. It is byte identity except `D7`/`F7` map to U+0152/U+0153; C0/C1 use the documented Unicode-identity text transport policy. |
| Kermit JIS7-KANJI | C-Kermit/Kermit 95 revision `8e977425d2f7f618d14aa466d516e9b79787ffc6`: complete `ckuxla.c`, `ckcfns.c`, and `ckuxla.h` sources plus `ckcuni.c`, with individual digests in `priv/sources/kermit-jis7-kanji/SOURCE_METADATA.md`; the separately published Unicode `JIS0208.TXT`, SHA-256 `1c571870457f19c97720631fa83ee491549a96ba1436da1296786a67d8632e87`, matches all 6,879 assigned JIS positions. The Kermit initial Roman state, designations, shifts, line persistence, encoder boundary, and finalizers are preserved under source-qualified names; the profile is not aliased to ICU JIS7 or generic ISO-2022-JP. Kermit audit sources retain their pinned BSD-style license while the native implementation is LGPL-2.1-or-later. |
| MacOS Esperanto 0.3 | Michael Everson's [Macintosh Esperanto Code Table](https://www.evertype.com/standards/eo/eo-table.html), version 0.3 dated 15 August 1997, fetched HTML SHA-256 `d7ca70a8da95d5ec5338705d3cd0907232eed98416fe062bb731d86090a52084`. All 223 enumerated graphic rows are exact; the 33 omitted C0/DEL positions use the separately documented Unicode-identity text transport policy. The independently normalized 256-row CSV has SHA-256 `4ad11598020843b2728f438dc8e8e3149ee822ae03a688330ad0b80dc013aa05`; the copyrighted source page is not redistributed. |
| VSCII-2 / TCVN 5712:1993 VN2 | Official [ISO-IR-180 registration](https://itscj.ipsj.or.jp/ir/180.pdf), SHA-256 `a02cf84237d0344f2ef1d09f125a4fa5ea5464bdf1d90bd8e537bac04c9090a0`, six rendered and inspected pages; the official VSQI catalog record; and an independent complete `TCVN5712-2.TXT` charmap, SHA-256 `4b2385eed17f8aa30b3299ddc924b83bff6479f43befbb7619d81a97b04b920b`. All 96 registered high positions agree after UnicodeData 17 name resolution. The profile is 224 assigned bytes plus the explicit 80--9F hole and is deliberately distinct from RFC 1456 VISCII and GNU's VN1 TCVN. |
| Lotus International Character Set (LICS), HP 1991 profile | Hewlett-Packard's *HP 95LX User's Guide*, second edition (June 1991), Appendix F, PDF SHA-256 `358d8b5b06cc196034fcb54af77388cc0d75f58513f7ea4dd4cc6488e04ef621`, defines the complete 256-position profile. Xerox's May 1988 *ViewPoint File Conversions Reference*, PDF SHA-256 `dd588f6a90c38ce9ae612a25439310f7a374581facbdf2325f2b05dd8863e72c`, independently agrees on every shared assignment; the four HP-only rows remain explicitly source-qualified. The normalized CSV SHA-256 `2eedf12805e1aee25e37044ddf58c8fcdcb9e754f3c3776aeb8a0447674a5239` records 239 assigned bytes, 17 invalid bytes, 234 distinct Unicode scalars, and five canonical duplicate pairs. Copyrighted manuals and the pinned original Lotus Release 2 archive are reference-only and are not redistributed. |
| U.S. Army GTA 31-70-001 Tap Code pair values | U.S. Army *GTA 31-70-001, Special Forces Survival, Evasion, Resistance, and Escape Communications Techniques* (January 2015), exact audited artifact SHA-256 `b1ba006ff9150582a6a40dc759ce3d4b21a8aa72f71b678ca80baff13bd75e3d`, defines the fixed five-by-five POW word matrix and C-for-K policy. The U.S. Naval History and Heritage Command's *The Battle Behind Bars*, independently audited artifact SHA-256 `bfae22e1f86c310ce67eb12006b70eafea0fa89514c0c88f1212c739e5572735`, confirms the same matrix and pair order while documenting historical scrambled variants. The project-defined numeric-count-octet transport intentionally claims neither a generic Tap Code identity nor an Army wire-byte format. The normalized 25-row CSV SHA-256 is `b9289530db75d795b65768b8be1add61a9d6ee20e6fb780a7b5bda853637e4cb`; government publications remain reference-only and are not redistributed. |
| Unicode 17 provisional kGB3 row/cell | Unicode 17.0.0 `Unihan_OtherMappings.txt`, SHA-256 `4fabda168d04a5ac360809a8bfa377fe54e04fbc069ba67cacad4df03d691fa0`, extracted from `Unihan.zip`, SHA-256 `f7a48b2b545acfaa77b2d607ae28747404ce02baefee16396c5d2d7a8ef34b5e`; UAX #38 revision 39 and L2/25-170 identify the provisional property and its GB3 relationship. The exact normalized 7,236-row mapping has SHA-256 `63dd2f9d88dc53b9c3603fe798b6f414c578fc22b68d840225a5d44b890d6baf`. The public identities remain explicitly Unicode-versioned and do not claim complete GB 13131-1991, GR/EUC, or ISO-2022 conformance. |
| PASCII C-DAC GIST 1.0 (October 2002) | C-DAC GIST's [PASCII Version 1.0 byte chart](https://www.cs.cmu.edu/afs/cs.cmu.edu/project/cmt-40/Nice/Urdu-MT/code/Tools/Encoding_Conversion/EncodingInfo/PASCIIStandard.pdf), physical PDF pages 4–7 / printed pages 61–64, SHA-256 `8eb605e3a7e0dcfed1fdb58de7ddfa2171d964b7b43220a234cbd6924608ecea`. The chart is copyrighted reference-only and not redistributed. The independently expressed 256-row mapping SHA-256 is `335236d0b61cf050f3d0ab1d0fed7b66df6bb1c317da4291d109a8eb769d2cf5`; metadata SHA-256 is `7681febbdefbd5304a8f6402f7ebc34c742e0fdbaea0da690f7ca15e81d32c4e`. UnicodeData 17.0.0 supplies secondary scalar/name checks. Four source-qualified profiles distinguish Urdu/Kashmiri and Sindhi non-normative best-fit projections, exact assigned-byte VPUA identity, and forensic raw-byte identity. Byte 80 is unassigned, FA/FB/FE/FF are reserved, 9E is explicitly an Iconvex logical-sequence inference, and CB is a nearest scalar rather than an exact identity. Persian and Arabic best-fit profiles are withheld because the source gives no normative Unicode decisions for ambiguous cells. No bare `PASCII` alias is exported. |
| Differential oracle | ICU 78.3 `uconv`, `makeconv`, `pkgdata`, and `libicuuc`; ICU's [SCSU](https://github.com/unicode-org/icu/blob/main/icu4c/source/common/ucnvscsu.cpp), [Unicode/IMAP UTF-7](https://github.com/unicode-org/icu/blob/main/icu4c/source/common/ucnv_u7.cpp), and generic UCM converter implementation |
For OML/OMS, Cork, Formal SignWriting, PDP-1, Kamenický, ABICOMP, BraSCII,
MacOS Esperanto, VSCII-2, Kermit JIS7-KANJI, Lotus LICS, the U.S. Army Tap
Code pair-value profile, and PASCII C-DAC GIST 1.0, `BENCHMARKS.md` additionally binds the exact native
runtime and benchmark sources to their package selection with independently
recomputed SHA-256 digests.
The generated differential report records the exact oracle executable/version,
corpus digest, output sizes, and output digests. Oracle code is never linked or
called at runtime. Repository source fixtures remain available for repeatable
audits; Hex artifacts ship generated runtime tables, manifests, licenses, and
these digest-bearing evidence documents. The 1,050 ICU archive tables are split
across three transparent provider packages solely to satisfy artifact size
limits.