{
  "schema_version": 1,
  "checked_date": "2026-11-02",
  "arithmetic_version": "quranml-arithmetic-v1",
  "source_claims": [
    {
      "id": "al-dani",
      "title": "Al-Bayan fi Add Ayi al-Quran, chapter 14: Hisab al-jummal",
      "author": "Abu Amr al-Dani",
      "url": "https://ashabakah.com/asn/web/ar/quran_ayat_adud/90880",
      "retrieved": "2026-11-02",
      "kind": "primary historical text, hosted transcription",
      "supports": "Mashriqi standard values through ghayn=1000. Existing source catalog preserves edition details.",
      "verification": "Passage inspected; no claim of independent hadith authentication."
    },
    {
      "id": "gacek-2009",
      "title": "Arabic Manuscripts: A Vademecum for Readers",
      "author": "Adam Gacek",
      "edition": "Brill, 2009, ISBN 9789004170360",
      "locator": "Arabic alpha-numerical notation, printed pp.11–12; PDF p.30 (1-based) visually inspected",
      "url": "https://alqueriaderosales.org/wp-content/uploads/2020/02/Handbook-of-Oriental-Studies-Pt.1-Ancient-Near-East-.-arabic-manuscripts.pdf",
      "publisher_url": "https://www.degruyterbrill.com/de/document/isbn/9789047443032/html",
      "retrieved": "2026-11-02",
      "kind": "authoritative scholarly reference",
      "sha256": "1592ac6ee9a70572d7f069a3afd93f91b1dc230ad668c7fb7f5ee2d2168a1fee",
      "supports": "Six Maghribi differences: sin300, shin1000, sad60, dad90, za800, ghayn900; regional Abjad orders.",
      "verification": "Downloaded PDF, extracted text and visually inspected table. Search-engine extracted Arabic contained errors; image establishes letters."
    },
    {
      "id": "qunawi",
      "title": "Hashiyat al-Qunawi ala Tafsir al-Baydawi, with Hashiyat Ibn al-Tamjid",
      "author": "Ismail ibn Muhammad al-Qunawi",
      "locator": "Hosted page357, discussion of hisab al-jummal",
      "url": "https://ablibrary.net/book_content/b/12682/357?lang=ar",
      "retrieved": "2026-11-02",
      "kind": "primary historical commentary, hosted transcription",
      "supports": "Calls per-letter repeated subtraction12 jummal saghir; kaf8, lam6, mim4, nun2, sin0. Also mentions subtraction9; the text does not unambiguously resolve every9-boundary convention.",
      "verification": "Search-index transcription inspected; direct page fetch failed. No scan collation. Do not use this as evidence that Wasit universally means mod12 or that mod9 always maps9 to0."
    },
    {
      "id": "tahanawi",
      "title": "Kashshaf istilahat al-funun wa-l-ulum",
      "author": "Muhammad Ali al-Tahanawi",
      "edition": "Edited by Ali Dahruj, supervised by Rafiq al-Ajam, Maktabat Lubnan, 1996; online transcription includes Arabic translations and original Persian passages",
      "locator": "Entries al-bast (البسط), al-jummal al-kabir (الجمل الكبير), al-harf (الحرف); use original Persian of al-bast for element groups",
      "url": "https://arabic-keyboard.info/books/ar/read-book/كشاف-اصطلاحات-الفنون-والعلوم",
      "retrieved": "2026-11-02",
      "kind": "primary historical lexicon, hosted transcription",
      "sha256": "f335fe8f6bb029ac3540c54c7ad208f283fbd82e7ff7bcd25b16bbc93d75c55d",
      "supports": "Spoken-letter expansion and name tails; explicit Muhammad example mim90+ha9+mim90+dal35=224; short-name inventory; four-element groups; inconsistent kabir/saghir usage across reported sources.",
      "verification": "Arabic and Persian passages inspected. Arabic translation/table contains transcription defects; Persian explicitly lists the four groups. No full scan collation; source-qualified classification, not universal attribution."
    },
    {
      "id": "kuwait-tajwid",
      "title": "Hidayat al-ikhwan, part1",
      "publisher": "Kuwait Ministry of Awqaf, Department of Islamic Studies",
      "locator": "Lam al-tarif: fourteen lunar letters and fourteen remaining solar letters",
      "url": "https://douralquran.awqaf.gov.kw/ar/مناهج%20دور%20القرآن/هداية-الإخوان-الجزء-الاول-5876",
      "retrieved": "2026-11-02",
      "kind": "authoritative institutional tajwid teaching text",
      "supports": "Solar/lunar linguistic grouping. The calculator maps its hamza/alif slot to canonical alif; it counts written mapped letters, not recited sounds.",
      "verification": "Published instructional passage inspected."
    },
    {
      "id": "rashti",
      "title": "Al-Risala al-jafriyya",
      "author": "Sayyid Kazim al-Rashti",
      "edition": "Jawahir al-hikam, vol13, al-Ghadir, Basra, 1432AH",
      "url": "https://oceanoflights.org/sayyid-kazim-rashti-012-ar/",
      "retrieved": "2026-11-02",
      "kind": "primary historical text, hosted transcription",
      "supports": "Corroborates that different elemental orderings and letter operations occur; no universal element/planet system should be inferred.",
      "verification": "Transcription and edition header inspected; no complete planetary letter mapping established."
    }
  ],
  "torahml_reuse": {
    "repository": "TorahML",
    "revision": "6ab2997c91ffbb747c188b34811d103c5fd1d576",
    "scope": "Read-only code audit; no application corpus, user data, credentials or VPS access. These audited code files matched HEAD. Existing dirty AGENTS.md and untracked .fleet/.codex-attachments were not changed.",
    "files": {
      "python/src/torahml/core/ciphers.py": "8aa570b83b32542cb42a435171ec55cb5c908ae6e183b482549ae69ebfec23fb",
      "python/src/torahml/core/letters.py": "7f2481fee43b5fae9db439f3bcdd030ac3e611364cb8bb929cdf80f056fc3dfa",
      "python/src/torahml/core/normalize.py": "958e44fd99a8c1fa2027357bc7bc71f550517c88c6289b43c97bf3ef6dc2c8b3",
      "python/src/torahml/core/calculate.py": "81d289eaddbf061e77a38a6e66fae1f9b7d9cfdc713c552b94d525d93f6e38f3",
      "python/src/torahml/api/routers/gematria.py": "aabbd0ca9161f8d546138255bb29bb7a31d4d2411d89601e47f34eb349ece293",
      "python/src/torahml/gematria_catalogue.py": "58a9161614facebb8621d69639c28518b7872a60547bb5e1770eea48eecd840a",
      "frontend/src/lib/methods.ts": "75e00085fadc5e7324c6bf200304ec972943c934def3594347dfe5bd32681fc1",
      "frontend/src/components/SpellingPanel.tsx": "75c401eb436b15d419d71f825f9c40ab1a59b23682aef7793c11d014f3afc501",
      "frontend/src/components/MethodGrid.tsx": "8298a67b2f8593c1cabd335b15a55dfb3a4ec402e89c86dce6e0d99c21cc0315",
      "frontend/src/lib/selection-gematria.ts": "9c62adb37c376f7023ce6b513b55e33b2907118f19fbd7eaed98750d079345f5",
      "python/tests/core/test_gematria_golden.py": "26963ca66c4af83b4f113812359fb19326a5cc86117ef586ac258a20607f4af2"
    },
    "implemented_core_methods": 26,
    "adapted_operations": 25,
    "excluded": "gadol: Hebrew final letters have no direct Arabic counterpart",
    "pitfalls": [
      "Achbi description says adjacent pairs, executable code reverses each alphabet half.",
      "Position methods cover the whole phrase, despite word wording.",
      "Hebrew normalization is not reused.",
      "Arabic1000 needs explicit decimal-band and column-cycle handling."
    ],
    "validation": "Read-only audit harness checked all26 existing Echad golden cases; passed. Full TorahML pytest unavailable in its environment; UI not rerun."
  },
  "method_registry": [
    {
      "id": "standard",
      "name_en": "Standard Abjad",
      "name_ar": "المجموع الأبجدي",
      "family": "Basic",
      "formula": "S = sum(v)",
      "torahml_method": "hechrachi",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "ordinal",
      "name_en": "Abjad positions",
      "name_ar": "مجموع الرتب الأبجدية",
      "family": "Basic",
      "formula": "sum(o), regional Abjad order 1..28, not modern hijai order",
      "torahml_method": "siduri",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "digit-sum",
      "name_en": "Letter digit sum",
      "name_ar": "مجموع أرقام الحروف",
      "family": "Reduction",
      "formula": "sum(dr(v)); 9 remains 9; 1000 becomes 1",
      "torahml_method": "katan",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "digital-root",
      "name_en": "Total digital root",
      "name_ar": "الجذر الرقمي للمجموع",
      "family": "Reduction",
      "formula": "dr(S); dr(0)=0; dr(x)=1+(x-1)%9 for x>0",
      "torahml_method": "katan_mispari",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "letter-mod9",
      "name_en": "Letter remainders / 9",
      "name_ar": "مجموع بواقي الحروف على ٩",
      "family": "Reduction",
      "formula": "sum(v % 9); exact multiples become 0",
      "torahml_method": null,
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "letter-mod12",
      "name_en": "Letter remainders / 12",
      "name_ar": "مجموع بواقي الحروف على ١٢",
      "family": "Reduction",
      "formula": "sum(v % 12); exact multiples become 0",
      "torahml_method": null,
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "total-mod9",
      "name_en": "Total remainder / 9",
      "name_ar": "باقي المجموع على ٩",
      "family": "Reduction",
      "formula": "S % 9; exact multiples become 0",
      "torahml_method": null,
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "total-mod12",
      "name_en": "Total remainder / 12",
      "name_ar": "باقي المجموع على ١٢",
      "family": "Reduction",
      "formula": "S % 12; exact multiples become 0",
      "torahml_method": null,
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "letter-squares",
      "name_en": "Letter squares",
      "name_ar": "مجموع مربعات القيم",
      "family": "Powers",
      "formula": "sum(v^2)",
      "torahml_method": "perati",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "letter-cubes",
      "name_en": "Letter cubes",
      "name_ar": "مجموع مكعبات القيم",
      "family": "Powers",
      "formula": "sum(v^3)",
      "torahml_method": "meshulash",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "total-square",
      "name_en": "Squared total",
      "name_ar": "مربع المجموع",
      "family": "Powers",
      "formula": "S^2, not sum(v^2)",
      "torahml_method": "meruba_klali",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "name-sum",
      "name_en": "Letter-name expansion",
      "name_ar": "مجموع بسط أسماء الحروف",
      "family": "Spelling",
      "formula": "sum(value(name(letter))) using the selected spelling table",
      "torahml_method": "milui",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "name-tail",
      "name_en": "Letter-name tails",
      "name_ar": "مجموع ذيول أسماء الحروف",
      "family": "Spelling",
      "formula": "sum(value(name(letter)[1:])); remove the first generated character",
      "torahml_method": "neelam",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "name-last",
      "name_en": "Letter-name endings",
      "name_ar": "مجموع أواخر أسماء الحروف",
      "family": "Spelling",
      "formula": "sum(value(name(letter)[-1]))",
      "torahml_method": "ofanim",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "number-name",
      "name_en": "Number-name expansion",
      "name_ar": "مجموع أسماء القيم العددية",
      "family": "Spelling",
      "formula": "sum(value(cardinal_name(v))) using arabic-cardinals-v1",
      "torahml_method": "mispari",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "alphabet-prefix",
      "name_en": "Alphabet prefix totals",
      "name_ar": "مجموع مجاميع الترتيب",
      "family": "Cumulative",
      "formula": "sum(sum(V[j] for j<=o)); cumulative standard values, not triangular ordinals",
      "torahml_method": "kidmi",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "prefix-sums",
      "name_en": "Running prefix totals",
      "name_ar": "مجموع المجاميع المتتابعة",
      "family": "Cumulative",
      "formula": "sum((n-i+1)*v_i), i=1..n over all mapped phrase letters",
      "torahml_method": "boneeh",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "position-weights",
      "name_en": "Position weights",
      "name_ar": "مجموع أوزان المواضع",
      "family": "Cumulative",
      "formula": "sum(i*v_i), i=1..n over all mapped phrase letters",
      "torahml_method": "haachor",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "plus-letters",
      "name_en": "Add letter count",
      "name_ar": "المجموع مع عدد الحروف",
      "family": "Offsets",
      "formula": "S+n; n is mapped source-letter count",
      "torahml_method": "musafi",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "plus-words",
      "name_en": "Add word-group count",
      "name_ar": "المجموع مع عدد مجموعات الكلمات",
      "family": "Offsets",
      "formula": "S+w; w is whitespace-delimited groups containing at least one mapped letter",
      "torahml_method": "kolel",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "alif-options",
      "name_en": "Alif zero-or-one range",
      "name_ar": "مدى الألف بين الصفر والواحد",
      "family": "Offsets",
      "formula": "floor=S-count(alif); every integer floor..S is achievable; result is floor",
      "torahml_method": "alef_efes",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "reverse-order",
      "name_en": "Alphabet mirror",
      "name_ar": "مرآة الترتيب الأبجدي",
      "family": "Substitution",
      "formula": "o -> 29-o",
      "torahml_method": "atbash",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "half-turn",
      "name_en": "Exchange alphabet halves",
      "name_ar": "تبادل نصفي الترتيب",
      "family": "Substitution",
      "formula": "o -> ((o-1+14)%28)+1",
      "torahml_method": "albam",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "half-mirror",
      "name_en": "Mirror within halves",
      "name_ar": "مرآة كل نصف",
      "family": "Substitution",
      "formula": "o -> 15-o if o<=14 else 43-o",
      "torahml_method": "achbi",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "next-letter",
      "name_en": "Next Abjad letter",
      "name_ar": "الحرف الأبجدي التالي",
      "family": "Substitution",
      "formula": "o -> (o%28)+1; final wraps to first",
      "torahml_method": "avgad",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "previous-letter",
      "name_en": "Previous Abjad letter",
      "name_ar": "الحرف الأبجدي السابق",
      "family": "Substitution",
      "formula": "o -> ((o-2)%28)+1; first wraps to final",
      "torahml_method": "reverse_avgad",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "quarter-turn",
      "name_en": "Quarter alphabet turn",
      "name_ar": "دوران ربع الترتيب",
      "family": "Substitution",
      "formula": "o -> ((o-1+7)%28)+1; all 28 participate",
      "torahml_method": "achas_beta",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "decimal-complement",
      "name_en": "Decimal band complement",
      "name_ar": "متمم المرتبة العشرية",
      "family": "Decimal bands",
      "formula": "10^digits(v)-v; 1000 -> 9000 (a numeric weight, not a letter)",
      "torahml_method": "atbach",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    },
    {
      "id": "digit-column-cycle",
      "name_en": "Cycle the decimal column",
      "name_ar": "دورة العمود العشري",
      "family": "Decimal bands",
      "formula": "1->10->100->1000->1; d->10d->100d->d for d=2..9",
      "torahml_method": "ayak_bachar",
      "version": "quranml-arithmetic-v1",
      "naming": "QuranML descriptive label; adapted operations are not asserted to be traditional Arabic methods"
    }
  ],
  "traditional_aliases": [
    {
      "alias": "hisab al-jummal / حساب الجمل",
      "applies_to": "standard",
      "source_ids": [
        "al-dani"
      ]
    },
    {
      "alias": "jummal saghir / الجمل الصغير",
      "applies_to": "letter-mod12",
      "qualification": "Only al-Qunawi convention; not universal usage",
      "source_ids": [
        "qunawi"
      ]
    },
    {
      "alias": "bast talaffuz / بسط تلفظ",
      "applies_to": "name-sum",
      "qualification": "Historical operation family; exact QuranML spelling tables remain explicit editorial choices",
      "source_ids": [
        "tahanawi"
      ]
    }
  ],
  "unverified_aliases": [
    "Akbar as a universal synonym for letter-name expansion",
    "Wasit as a universal synonym for modulo12",
    "Saghir as one unique operation across authors"
  ],
  "unimplemented_correspondences": "No verified complete planetary mapping is shipped. Four-element and solar/lunar profiles are separate source-qualified classifications, not significance tests.",
  "name_tables": {
    "short-v1": {
      "label": "Short names · با، حا، زا",
      "spellings": {
        "ا": "الف",
        "ب": "با",
        "ج": "جيم",
        "د": "دال",
        "ه": "ها",
        "و": "واو",
        "ز": "زا",
        "ح": "حا",
        "ط": "طا",
        "ي": "يا",
        "ك": "كاف",
        "ل": "لام",
        "م": "ميم",
        "ن": "نون",
        "س": "سين",
        "ع": "عين",
        "ف": "فا",
        "ص": "صاد",
        "ق": "قاف",
        "ر": "را",
        "ش": "شين",
        "ت": "تا",
        "ث": "ثا",
        "خ": "خا",
        "ذ": "ذال",
        "ض": "ضاد",
        "ظ": "ظا",
        "غ": "غين"
      }
    },
    "full-hamza-v1": {
      "label": "Full names · باء، حاء، زاي · hamza = 1",
      "spellings": {
        "ا": "ألف",
        "ب": "باء",
        "ج": "جيم",
        "د": "دال",
        "ه": "هاء",
        "و": "واو",
        "ز": "زاي",
        "ح": "حاء",
        "ط": "طاء",
        "ي": "ياء",
        "ك": "كاف",
        "ل": "لام",
        "م": "ميم",
        "ن": "نون",
        "س": "سين",
        "ع": "عين",
        "ف": "فاء",
        "ص": "صاد",
        "ق": "قاف",
        "ر": "راء",
        "ش": "شين",
        "ت": "تاء",
        "ث": "ثاء",
        "خ": "خاء",
        "ذ": "ذال",
        "ض": "ضاد",
        "ظ": "ظاء",
        "غ": "غين"
      }
    }
  },
  "number_names": {
    "id": "arabic-cardinals-v1",
    "spellings": {
      "1": "واحد",
      "2": "اثنان",
      "3": "ثلاثة",
      "4": "أربعة",
      "5": "خمسة",
      "6": "ستة",
      "7": "سبعة",
      "8": "ثمانية",
      "9": "تسعة",
      "10": "عشرة",
      "20": "عشرون",
      "30": "ثلاثون",
      "40": "أربعون",
      "50": "خمسون",
      "60": "ستون",
      "70": "سبعون",
      "80": "ثمانون",
      "90": "تسعون",
      "100": "مئة",
      "200": "مئتان",
      "300": "ثلاثمئة",
      "400": "أربعمئة",
      "500": "خمسمئة",
      "600": "ستمئة",
      "700": "سبعمئة",
      "800": "ثمانمئة",
      "900": "تسعمئة",
      "1000": "ألف"
    },
    "choice": "Fixed nominative citation forms; feminine forms3–10 as listed; compact hundreds; modern مئة spelling. Other choices require new table IDs."
  },
  "expansion_policy": {
    "id": "generated-name-letters-v1",
    "folds": {
      "أ": "ا",
      "إ": "ا",
      "آ": "ا",
      "ء": "ا",
      "ؤ": "ا",
      "ئ": "ا",
      "ة": "ه",
      "ى": "ي"
    },
    "description": "Only generated spellings: every hamza form counts as one alif (1), ta marbuta as ha (5), alif maqsura as ya (10). No silent deletion. Source-text policy is separate."
  },
  "profiles": {
    "solar-lunar-v1": {
      "name": "Solar / lunar letter classes",
      "claim": "Linguistic classes of the definite article; counts over mapped spelling letters, not pronunciation or planetary influence. Alif stands for the hamza/alif slot in this 28-letter inventory.",
      "groups": {
        "solar": "تثدذرزسشصضطظلن",
        "lunar": "ابجحخعغفقكموهي"
      },
      "source_url": "https://douralquran.awqaf.gov.kw/ar/مناهج%20دور%20القرآن/هداية-الإخوان-الجزء-الاول-5876"
    },
    "tahanawi-elements-v1": {
      "name": "Four elements · al-Tahanawi convention",
      "claim": "Historical correspondence table reported in Kashshaf, entry al-bast, Persian original. Classification stays fixed when the regional numeric table changes; counts/sums do not test a claimed physical influence.",
      "groups": {
        "fire": "اهطمفشذ",
        "air": "بوينصتض",
        "water": "جزكسقثظ",
        "earth": "دحلعرخغ"
      },
      "source_url": "https://arabic-keyboard.info/books/ar/read-book/كشاف-اصطلاحات-الفنون-والعلوم"
    }
  },
  "rights": "Historical arithmetic facts and original QuranML formulas/data are recorded. No source editions/transcriptions are redistributed and no source-text reuse license is asserted."
}
