UNPKG

urdu-text-utils

Version:

Comprehensive Urdu NLP & text processing toolkit: normalization, Roman Urdu transliteration, stop words, script detection, digits, diacritics (aerab), sorting, search, and statistics. Zero dependencies, ESM + CJS.

4,761 lines 181 kB
'use strict';

// src/chars.ts
var DIACRITIC_RANGES = "\\u0610-\\u061A\\u064B-\\u065F\\u0670\\u06D6-\\u06ED";
var DIACRITICS_RE = new RegExp(`[${DIACRITIC_RANGES}]`, "gu");
var TATWEEL_RE = /ـ/gu;
var INVISIBLE_RE = /[​‍-‏‪-‮⁠-⁤⁦-⁩]/gu;
var ZWNJ_RE = /‌/gu;
var ARABIC_LETTER_RANGES = "\\u0620-\\u063F\\u0641-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06EE\\u06EF\\u06FA-\\u06FF\\u0750-\\u077F\\u08A0-\\u08FF\\uFB50-\\uFDFF\\uFE70-\\uFEFC";
var ARABIC_LETTER_RE = new RegExp(`[${ARABIC_LETTER_RANGES}]`, "u");
var ANY_LETTER_RE_G = /\p{L}/gu;
var URDU_DIGITS = "\u06F0\u06F1\u06F2\u06F3\u06F4\u06F5\u06F6\u06F7\u06F8\u06F9";
var ARABIC_INDIC_DIGITS = "\u0660\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669";
var ASCII_DIGITS = "0123456789";
var ANY_DIGIT_RE_G = new RegExp(`[${ASCII_DIGITS}${URDU_DIGITS}${ARABIC_INDIC_DIGITS}]`, "gu");
var SENTENCE_SPLIT_RE = /[۔؟?!.…]+/u;
var WORD_SPLIT_RE = /[\s،؛؟۔٫٬…!-\/:-@\[-`{-~‐-‧«»‘’“”]+/u;
var URDU_LETTERS = [
  { ch: "\u0627", roman: "a", vowel: true, aliases: ["\u0623", "\u0625", "\u0671", "\u0672", "\u0673"] },
  // alef + hamza/wasla forms
  { ch: "\u0622", roman: "aa", vowel: true },
  // alef madda — a real Urdu letter
  { ch: "\u0628", roman: "b" },
  { ch: "\u067E", roman: "p" },
  { ch: "\u062A", roman: "t" },
  { ch: "\u0679", roman: "t" },
  { ch: "\u062B", roman: "s" },
  { ch: "\u062C", roman: "j" },
  { ch: "\u0686", roman: "ch" },
  { ch: "\u062D", roman: "h" },
  { ch: "\u062E", roman: "kh" },
  { ch: "\u062F", roman: "d" },
  { ch: "\u0688", roman: "d" },
  { ch: "\u0630", roman: "z" },
  { ch: "\u0631", roman: "r" },
  { ch: "\u0691", roman: "r" },
  { ch: "\u0632", roman: "z" },
  { ch: "\u0698", roman: "zh" },
  { ch: "\u0633", roman: "s" },
  { ch: "\u0634", roman: "sh" },
  { ch: "\u0635", roman: "s" },
  { ch: "\u0636", roman: "z" },
  { ch: "\u0637", roman: "t" },
  { ch: "\u0638", roman: "z" },
  { ch: "\u0639", roman: "a", vowel: true },
  { ch: "\u063A", roman: "gh" },
  { ch: "\u0641", roman: "f" },
  { ch: "\u0642", roman: "q" },
  { ch: "\u06A9", roman: "k", aliases: ["\u0643", "\u06AA"] },
  // arabic kaf, swash kaf
  { ch: "\u06AF", roman: "g" },
  { ch: "\u0644", roman: "l" },
  { ch: "\u0645", roman: "m" },
  { ch: "\u0646", roman: "n" },
  { ch: "\u06BA", roman: "n" },
  // noon ghunna
  { ch: "\u0648", roman: "o", vowel: true, aliases: ["\u06CB", "\u06C6", "\u06C7"] },
  // ve, oe, u
  { ch: "\u0624", roman: "o", vowel: true, variantOf: "\u0648" },
  // waw with hamza — kept, hamza is meaningful
  { ch: "\u06C1", roman: "h", aliases: ["\u0647", "\u06C0", "\u0629", "\u06C3", "\u06D5"] },
  // arabic heh, heh-yeh-above, teh marbuta, ae
  { ch: "\u06C2", roman: "h", vowel: true, variantOf: "\u06C1" },
  // heh goal with hamza above
  { ch: "\u06BE", roman: "h" },
  // do-chashmi heh — distinct letter, aspirates the consonant before it
  { ch: "\u0621", roman: "" },
  // hamza
  { ch: "\u06CC", roman: "i", vowel: true, aliases: ["\u064A", "\u0649", "\u06CD", "\u06D0", "\u0620"] },
  // arabic yeh, alef maksura, yeh-with-tail, pashto e, kashmiri yeh
  { ch: "\u0626", roman: "i", vowel: true, variantOf: "\u06CC" },
  // yeh with hamza above
  { ch: "\u06D2", roman: "e", vowel: true },
  // bari ye — distinct letter
  { ch: "\u06D3", roman: "e", vowel: true, variantOf: "\u06D2" }
  // bari ye with hamza
];

// src/normalize.ts
var LETTER_MAP = {};
for (const { ch, aliases } of URDU_LETTERS) {
  for (const alias of aliases ?? []) {
    LETTER_MAP[alias] = ch;
  }
}
var digitTargets = {
  urdu: URDU_DIGITS,
  english: ASCII_DIGITS,
  arabic: ARABIC_INDIC_DIGITS
};
var PUNCTUATION_MAP = {
  ",": "\u060C",
  // ،
  ";": "\u061B",
  // ؛
  "?": "\u061F"
  // ؟
};
var DIGIT_LOOKUP = /* @__PURE__ */ new Map();
for (const set of [ASCII_DIGITS, URDU_DIGITS, ARABIC_INDIC_DIGITS]) {
  for (let i = 0; i < 10; i++) DIGIT_LOOKUP.set(set[i], i);
}
function normalizeUrdu(input, options = {}) {
  if (!input) return "";
  const {
    compatibility = true,
    stripDiacritics = false,
    stripTatweel = true,
    stripZwnj = false,
    collapseWhitespace = true,
    digits = "preserve",
    urduPunctuation = false
  } = options;
  let text = compatibility ? input.normalize("NFKC") : input.normalize("NFC");
  text = text.replace(INVISIBLE_RE, "");
  if (stripZwnj) text = text.replace(ZWNJ_RE, "");
  if (stripTatweel) text = text.replace(TATWEEL_RE, "");
  if (stripDiacritics) text = text.replace(DIACRITICS_RE, "");
  const digitTarget = digits === "preserve" ? null : digitTargets[digits];
  let out = "";
  for (const ch of text) {
    const mapped = LETTER_MAP[ch];
    if (mapped !== void 0) {
      out += mapped;
      continue;
    }
    if (digitTarget) {
      const value = DIGIT_LOOKUP.get(ch);
      if (value !== void 0) {
        out += digitTarget[value];
        continue;
      }
    }
    if (urduPunctuation) {
      const punct = PUNCTUATION_MAP[ch];
      if (punct !== void 0) {
        out += punct;
        continue;
      }
    }
    out += ch;
  }
  if (collapseWhitespace) out = out.replace(/\s+/gu, " ").trim();
  return out;
}
function removeDiacritics(input) {
  if (!input) return "";
  return input.normalize("NFC").replace(DIACRITICS_RE, "");
}
function foldUrdu(input) {
  return normalizeUrdu(input, {
    stripDiacritics: true,
    stripZwnj: true,
    collapseWhitespace: true
  }).toLowerCase();
}

// src/numbers.ts
var SETS = {
  urdu: URDU_DIGITS,
  english: ASCII_DIGITS,
  arabic: ARABIC_INDIC_DIGITS
};
var VALUE_OF = /* @__PURE__ */ new Map();
for (const set of Object.values(SETS)) {
  for (let i = 0; i < 10; i++) VALUE_OF.set(set[i], i);
}
function convert(input, target) {
  if (!input) return "";
  const digits = SETS[target];
  let out = "";
  for (const ch of input) {
    const value = VALUE_OF.get(ch);
    out += value === void 0 ? ch : digits[value];
  }
  return out;
}
function toUrduDigits(input) {
  return convert(input, "urdu");
}
function toEnglishDigits(input) {
  return convert(input, "english");
}
function toArabicIndicDigits(input) {
  return convert(input, "arabic");
}
function convertNumbers(input, to = "urdu") {
  return convert(input, to);
}
function parseUrduNumber(input) {
  if (!input) return NaN;
  const ascii = toEnglishDigits(input).replace(/[٬,\s]/gu, "").replace(/٫/gu, ".");
  if (!/^[+-]?(\d+(\.\d*)?|\.\d+)$/u.test(ascii)) return NaN;
  return Number(ascii);
}
var ONES = ["", "\u0627\u06CC\u06A9", "\u062F\u0648", "\u062A\u06CC\u0646", "\u0686\u0627\u0631", "\u067E\u0627\u0646\u0686", "\u0686\u06BE", "\u0633\u0627\u062A", "\u0622\u0679\u06BE", "\u0646\u0648"];
var TEENS_AND_TENS = {
  10: "\u062F\u0633",
  11: "\u06AF\u06CC\u0627\u0631\u06C1",
  12: "\u0628\u0627\u0631\u06C1",
  13: "\u062A\u06CC\u0631\u06C1",
  14: "\u0686\u0648\u062F\u06C1",
  15: "\u067E\u0646\u062F\u0631\u06C1",
  16: "\u0633\u0648\u0644\u06C1",
  17: "\u0633\u062A\u0631\u06C1",
  18: "\u0627\u0679\u06BE\u0627\u0631\u06C1",
  19: "\u0627\u0646\u06CC\u0633",
  20: "\u0628\u06CC\u0633",
  30: "\u062A\u06CC\u0633",
  40: "\u0686\u0627\u0644\u06CC\u0633",
  50: "\u067E\u0686\u0627\u0633",
  60: "\u0633\u0627\u0679\u06BE",
  70: "\u0633\u062A\u0631",
  80: "\u0627\u0633\u06CC",
  90: "\u0646\u0648\u06D2",
  100: "\u0633\u0648"
};
function numberToUrduWords(value) {
  if (!Number.isFinite(value)) return "";
  if (!Number.isInteger(value)) throw new TypeError("numberToUrduWords expects an integer");
  if (value < 0) return `\u0645\u0646\u0641\u06CC ${numberToUrduWords(-value)}`;
  if (value === 0) return "\u0635\u0641\u0631";
  const scales = [
    [1e7, "\u06A9\u0631\u0648\u0691"],
    [1e5, "\u0644\u0627\u06A9\u06BE"],
    [1e3, "\u06C1\u0632\u0627\u0631"],
    [100, "\u0633\u0648"]
  ];
  const parts = [];
  let rest = value;
  for (const [size, name] of scales) {
    if (rest >= size) {
      const count = Math.floor(rest / size);
      rest %= size;
      parts.push(`${numberToUrduWords(count)} ${name}`);
    }
  }
  if (rest > 0) {
    if (TEENS_AND_TENS[rest]) {
      parts.push(TEENS_AND_TENS[rest]);
    } else if (rest < 10) {
      parts.push(ONES[rest]);
    } else {
      const tens = Math.floor(rest / 10) * 10;
      parts.push(`${TEENS_AND_TENS[tens] ?? ""} ${ONES[rest % 10] ?? ""}`.trim());
    }
  }
  return parts.join(" ").replace(/\s+/gu, " ").trim();
}

// src/detect.ts
function urduRatio(input) {
  if (!input) return 0;
  let letters = 0;
  let urdu = 0;
  for (const ch of input.match(ANY_LETTER_RE_G) ?? []) {
    letters++;
    if (ARABIC_LETTER_RE.test(ch)) urdu++;
  }
  return letters === 0 ? 0 : urdu / letters;
}
function isUrdu(input, options = {}) {
  const { threshold = 0.5, minLetters = 1 } = options;
  if (!input) return false;
  let letters = 0;
  let urdu = 0;
  for (const ch of input.match(ANY_LETTER_RE_G) ?? []) {
    letters++;
    if (ARABIC_LETTER_RE.test(ch)) urdu++;
  }
  if (urdu < minLetters) return false;
  return letters > 0 && urdu / letters >= threshold;
}
var URDU_ONLY = /* @__PURE__ */ new Set([
  "\u0679",
  // ٹ tteh
  "\u0688",
  // ڈ ddal
  "\u0691",
  // ڑ rreh
  "\u06BA",
  // ں noon ghunna
  "\u06D2",
  // ے bari ye
  "\u06D3",
  // ۓ bari ye with hamza
  "\u06C1",
  // ہ heh goal
  "\u06BE",
  // ھ do-chashmi heh
  "\u06A9",
  // ک keheh
  "\u06AF",
  // گ gaf
  "\u0686",
  // چ tcheh
  "\u067E",
  // پ peh
  "\u0698",
  // ژ jeh
  "\u06CC"
  // ی farsi yeh
]);
function hasUrduSpecificLetters(input) {
  for (const ch of input) if (URDU_ONLY.has(ch)) return true;
  return false;
}

// src/stats.ts
function countWords(input) {
  return splitWords(input).length;
}
function splitWords(input) {
  if (!input) return [];
  return input.split(WORD_SPLIT_RE).map((w) => w.trim()).filter((w) => w.length > 0);
}
var ABBREVIATIONS = [
  "\u0688\u0627\u06A9\u0679\u0631",
  "\u067E\u0631\u0648\u0641\u06CC\u0633\u0631",
  "\u0627\u0646\u062C\u06CC\u0646\u0626\u0631",
  "\u0627\u06CC\u0688\u0648\u0648\u06A9\u06CC\u0679",
  "\u062C\u0646\u0627\u0628",
  "\u0635\u0627\u062D\u0628",
  "\u0635\u0627\u062D\u0628\u06C1",
  "\u0645\u062D\u062A\u0631\u0645",
  "\u0645\u062D\u062A\u0631\u0645\u06C1",
  "\u0645\u0648\u0644\u0627\u0646\u0627",
  "\u0645\u0641\u062A\u06CC",
  "\u0639\u0644\u0627\u0645\u06C1",
  "\u0628\u06CC\u06AF\u0645",
  "\u0648\u063A\u06CC\u0631\u06C1",
  "\u0631\u062D\u0645\u062A\u06C1",
  "\u0631\u0636\u06CC",
  "\u062A\u0639\u0627\u0644\u06CC",
  "\u062A\u0639\u0627\u0644\u06CC\u0670",
  "\u0639\u0644\u06CC\u06C1",
  "\u0627\u0644\u0633\u0644\u0627\u0645",
  "\u0635\u0644\u06CC",
  "\u0648\u0633\u0644\u0645"
];
var ABBREV_PATTERN = new RegExp(`(?:${ABBREVIATIONS.join("|")})[.\u06D4]`, "gu");
function countSentences(input, options) {
  return splitSentences(input, options).length;
}
function splitSentences(input, options = {}) {
  if (!input) return [];
  const { preserveTerminators = false } = options;
  const PROTECTED_DOT = "\uE000";
  const PROTECTED_URDU_FULL_STOP = "\uE001";
  let sanitized = input.replace(/(\d)\.(\d)/gu, `$1${PROTECTED_DOT}$2`).replace(ABBREV_PATTERN, (match) => {
    return match.replace(/\./g, PROTECTED_DOT).replace(/۔/g, PROTECTED_URDU_FULL_STOP);
  });
  if (preserveTerminators) {
    const matches = sanitized.match(/[^۔؟?!.…]+[۔؟?!.…]+|[^۔؟?!.…]+$/gu) ?? [];
    return matches.map(
      (s) => s.replace(new RegExp(PROTECTED_DOT, "gu"), ".").replace(new RegExp(PROTECTED_URDU_FULL_STOP, "gu"), "\u06D4").trim()
    ).filter((s) => s.length > 0);
  }
  return sanitized.split(SENTENCE_SPLIT_RE).map(
    (s) => s.replace(new RegExp(PROTECTED_DOT, "gu"), ".").replace(new RegExp(PROTECTED_URDU_FULL_STOP, "gu"), "\u06D4").trim()
  ).filter((s) => s.length > 0);
}
function analyzeUrdu(input) {
  const text = input ?? "";
  const characters = [...text].length;
  const charactersNoSpaces = [...text.replace(/\s/gu, "")].length;
  const words = countWords(text);
  const sentences = countSentences(text);
  const paragraphs = text.split(/\n\s*\n/u).map((p) => p.trim()).filter((p) => p.length > 0).length;
  return {
    characters,
    charactersNoSpaces,
    words,
    sentences,
    paragraphs,
    urduPercentage: Math.round(urduRatio(text) * 100),
    diacritics: (text.match(DIACRITICS_RE) ?? []).length,
    digits: (text.match(ANY_DIGIT_RE_G) ?? []).length,
    averageWordsPerSentence: sentences === 0 ? 0 : Math.round(words / sentences * 10) / 10,
    readingTimeMinutes: Math.round(words / 180 * 10) / 10
  };
}

// src/stopwords.ts
var URDU_STOP_WORDS = /* @__PURE__ */ new Set([
  // Tense auxiliaries & copulas
  "\u06C1\u06D2",
  "\u06C1\u06CC\u06BA",
  "\u06C1\u0648\u06BA",
  "\u06C1\u0648",
  "\u062A\u06BE\u0627",
  "\u062A\u06BE\u06CC",
  "\u062A\u06BE\u06D2",
  "\u062A\u06BE\u06CC\u06BA",
  "\u06C1\u0648\u06AF\u0627",
  "\u06C1\u0648\u06AF\u06CC",
  "\u06C1\u0648\u0646\u06AF\u06D2",
  "\u06C1\u0648\u06BA\u06AF\u06D2",
  "\u06C1\u0648\u0646\u0627",
  "\u06C1\u0648\u0646\u06D2",
  "\u06C1\u0648\u0627",
  "\u06C1\u0648\u0626\u06CC",
  "\u06C1\u0648\u0626\u06D2",
  // Postpositions, relations & prepositions
  "\u06A9\u0627",
  "\u06A9\u06CC",
  "\u06A9\u06D2",
  "\u06A9\u0648",
  "\u0646\u06D2",
  "\u0633\u06D2",
  "\u067E\u0631",
  "\u062A\u06A9",
  "\u0645\u06CC\u06BA",
  "\u0644\u06CC\u06D2",
  "\u0633\u0627\u062A\u06BE",
  "\u0628\u063A\u06CC\u0631",
  "\u0637\u0631\u062D",
  "\u0637\u0631\u0641",
  "\u0628\u0627\u0631\u06D2",
  "\u0628\u0639\u062F",
  "\u067E\u06C1\u0644\u06D2",
  "\u062F\u0648\u0631\u0627\u0646",
  "\u062F\u0631\u0645\u06CC\u0627\u0646",
  "\u0639\u0644\u0627\u0648\u06C1",
  "\u0633\u0648\u0627\u0626\u06D2",
  "\u0633\u0648\u0627",
  "\u0645\u0637\u0627\u0628\u0642",
  "\u0628\u0627\u0639\u062B",
  "\u0630\u0631\u06CC\u0639\u06D2",
  "\u062A\u062D\u062A",
  "\u0627\u0648\u067E\u0631",
  "\u0646\u06CC\u0686\u06D2",
  "\u0622\u06AF\u06D2",
  "\u067E\u06CC\u0686\u06BE\u06D2",
  "\u0627\u0646\u062F\u0631",
  "\u0628\u0627\u06C1\u0631",
  "\u067E\u0627\u0633",
  "\u0642\u0631\u06CC\u0628",
  "\u0646\u0632\u062F\u06CC\u06A9",
  // Conjunctions & discourse markers
  "\u0627\u0648\u0631",
  "\u06CC\u0627",
  "\u0627\u06AF\u0631",
  "\u0644\u06CC\u06A9\u0646",
  "\u0645\u06AF\u0631",
  "\u062A\u0648",
  "\u0628\u06BE\u06CC",
  "\u06C1\u06CC",
  "\u0646\u06C1",
  "\u0646\u06C1\u06CC\u06BA",
  "\u0645\u062A",
  "\u0646\u0627",
  "\u0628\u0644\u06A9\u06C1",
  "\u062D\u0627\u0644\u0627\u0646\u06A9\u06C1",
  "\u0686\u0648\u0646\u06A9\u06C1",
  "\u06A9\u06CC\u0648\u0646\u06A9\u06C1",
  "\u062A\u0627\u06A9\u06C1",
  "\u0648\u0631\u0646\u06C1",
  "\u0627\u0644\u0628\u062A\u06C1",
  "\u0645\u062B\u0644\u0627\u064B",
  "\u06CC\u0639\u0646\u06CC",
  "\u062E\u0635\u0648\u0635\u0627\u064B",
  "\u0639\u0645\u0648\u0645\u0627\u064B",
  "\u0686\u0646\u0627\u0646\u0686\u06C1",
  "\u062E\u0648\u0627\u06C1",
  "\u0686\u0627\u06C1\u06D2",
  "\u06AF\u0648\u06CC\u0627",
  "\u062A\u0627\u06C1\u0645",
  "\u0646\u06CC\u0632",
  "\u062D\u062A\u06CC",
  "\u0648\u063A\u06CC\u0631\u06C1",
  "\u0635\u0631\u0641",
  "\u0645\u062D\u0636",
  "\u0641\u0642\u0637",
  // Pronouns, determiners & question words
  "\u06C1\u0645",
  "\u062A\u0645",
  "\u0622\u067E",
  "\u0648\u06C1",
  "\u06CC\u06C1",
  "\u0645\u06CC\u0631\u0627",
  "\u0645\u06CC\u0631\u06CC",
  "\u0645\u06CC\u0631\u06D2",
  "\u06C1\u0645\u0627\u0631\u0627",
  "\u06C1\u0645\u0627\u0631\u06CC",
  "\u06C1\u0645\u0627\u0631\u06D2",
  "\u062A\u0645\u06C1\u0627\u0631\u0627",
  "\u062A\u0645\u06C1\u0627\u0631\u06CC",
  "\u062A\u0645\u06C1\u0627\u0631\u06D2",
  "\u0622\u067E\u06A9\u0627",
  "\u0622\u067E\u06A9\u06CC",
  "\u0622\u067E\u06A9\u06D2",
  "\u0627\u0633",
  "\u0627\u0633\u06A9\u0627",
  "\u0627\u0633\u06A9\u06CC",
  "\u0627\u0633\u06A9\u06D2",
  "\u0627\u0633\u06D2",
  "\u0627\u0646",
  "\u0627\u0646\u06A9\u0627",
  "\u0627\u0646\u06A9\u06CC",
  "\u0627\u0646\u06A9\u06D2",
  "\u0627\u0646\u06C1\u06CC\u06BA",
  "\u0645\u062C\u06BE\u06D2",
  "\u06C1\u0645\u06CC\u06BA",
  "\u062A\u0645\u06C1\u06CC\u06BA",
  "\u062C\u0633",
  "\u062C\u0633\u06A9\u0627",
  "\u062C\u0633\u06A9\u06CC",
  "\u062C\u0633\u06A9\u06D2",
  "\u062C\u0633\u06D2",
  "\u062C\u0646",
  "\u062C\u0646\u06A9\u0627",
  "\u062C\u0646\u06A9\u06CC",
  "\u062C\u0646\u06A9\u06D2",
  "\u062C\u0646\u06C1\u0648\u06BA",
  "\u0627\u0646\u06C1\u0648\u06BA",
  "\u06A9\u0633",
  "\u06A9\u0633\u06A9\u0627",
  "\u06A9\u0633\u06A9\u06CC",
  "\u06A9\u0633\u06A9\u06D2",
  "\u06A9\u0633\u06D2",
  "\u06A9\u0633\u06A9\u0648",
  "\u06A9\u0648\u0646",
  "\u06A9\u06CC\u0627",
  "\u06A9\u06C1\u0627\u06BA",
  "\u06A9\u062F\u06BE\u0631",
  "\u0627\u062F\u06BE\u0631",
  "\u062C\u062F\u06BE\u0631",
  "\u06A9\u0628",
  "\u06A9\u06CC\u0648\u06BA",
  "\u06A9\u06CC\u0633\u06D2",
  "\u06A9\u06CC\u0633\u0627",
  "\u06A9\u06CC\u0633\u06CC",
  "\u06A9\u062A\u0646\u0627",
  "\u06A9\u062A\u0646\u06CC",
  "\u06A9\u062A\u0646\u06D2",
  "\u062C\u0648",
  "\u0633\u0628",
  "\u0633\u0628\u06BE\u06CC",
  "\u06A9\u0648\u0626\u06CC",
  "\u06A9\u0686\u06BE",
  "\u06C1\u0631",
  "\u0627\u06CC\u06A9",
  "\u0627\u067E\u0646\u0627",
  "\u0627\u067E\u0646\u06CC",
  "\u0627\u067E\u0646\u06D2",
  "\u062E\u0648\u062F",
  // Common light/auxiliary verb forms
  "\u06A9\u0631\u0646\u0627",
  "\u06A9\u0631\u062A\u0627",
  "\u06A9\u0631\u062A\u06CC",
  "\u06A9\u0631\u062A\u06D2",
  "\u06A9\u0631\u06CC\u06BA",
  "\u06A9\u0631\u0648",
  "\u06A9\u0631",
  "\u06A9\u0631\u0646\u06D2",
  "\u06A9\u06CC\u06D2",
  "\u062C\u0627\u0646\u0627",
  "\u062C\u0627\u062A\u0627",
  "\u062C\u0627\u062A\u06CC",
  "\u062C\u0627\u062A\u06D2",
  "\u062C\u0627\u0626\u06D2",
  "\u062C\u0627\u0626\u06CC\u06BA",
  "\u062C\u0627\u0624",
  "\u062C\u0627",
  "\u062C\u0627\u0646\u06D2",
  "\u06AF\u06CC\u0627",
  "\u06AF\u0626\u06CC",
  "\u06AF\u0626\u06D2",
  "\u0622\u0646\u0627",
  "\u0622\u062A\u0627",
  "\u0622\u062A\u06CC",
  "\u0622\u062A\u06D2",
  "\u0622\u0626\u06D2",
  "\u0622\u0626\u06CC\u06BA",
  "\u0622\u06CC\u0627",
  "\u0622\u0626\u06CC",
  "\u0622\u0646\u06D2",
  "\u0622\u0624",
  "\u0622",
  "\u062F\u06CC\u0646\u0627",
  "\u062F\u06CC\u062A\u0627",
  "\u062F\u06CC\u062A\u06CC",
  "\u062F\u06CC\u062A\u06D2",
  "\u062F\u06CC\u0627",
  "\u062F\u06CC\u06D2",
  "\u062F\u06D2",
  "\u062F\u0648",
  "\u062F\u06CC\u06BA",
  "\u062F\u06CC\u0646\u06D2",
  "\u0644\u06CC\u0646\u0627",
  "\u0644\u06CC\u062A\u0627",
  "\u0644\u06CC\u062A\u06CC",
  "\u0644\u06CC\u062A\u06D2",
  "\u0644\u06CC\u0627",
  "\u0644\u06D2",
  "\u0644\u0648",
  "\u0644\u06CC\u06BA",
  "\u0644\u06CC\u0646\u06D2",
  "\u0631\u06C1\u0646\u0627",
  "\u0631\u06C1\u0627",
  "\u0631\u06C1\u06CC",
  "\u0631\u06C1\u06D2",
  "\u0631\u06C1\u062A\u0627",
  "\u0631\u06C1\u062A\u06CC",
  "\u0631\u06C1\u062A\u06D2",
  "\u0631\u06C1\u0646\u06D2",
  "\u0633\u06A9\u0646\u0627",
  "\u0633\u06A9\u062A\u0627",
  "\u0633\u06A9\u062A\u06CC",
  "\u0633\u06A9\u062A\u06D2",
  "\u0648\u0627\u0644\u0627",
  "\u0648\u0627\u0644\u06CC",
  "\u0648\u0627\u0644\u06D2"
]);
function toStopWordSet(custom) {
  if (!custom) return URDU_STOP_WORDS;
  if (custom instanceof Set) return custom;
  return new Set(custom.map((w) => normalizeUrdu(w.trim())));
}
function isStopWord(word, customStopWords) {
  if (!word) return false;
  const normalized = normalizeUrdu(word.trim());
  const stopSet = toStopWordSet(customStopWords);
  return stopSet.has(normalized);
}
function filterStopWords(words, customStopWords) {
  if (!words || words.length === 0) return [];
  const stopSet = toStopWordSet(customStopWords);
  return words.filter((w) => {
    const normalized = normalizeUrdu(w.trim());
    return normalized.length > 0 && !stopSet.has(normalized);
  });
}
function removeStopWords(text, customStopWords) {
  if (!text) return "";
  const words = splitWords(text);
  const filtered = filterStopWords(words, customStopWords);
  return filtered.join(" ");
}

// src/collate.ts
var PRIMARY_LETTERS = URDU_LETTERS.filter((letter) => letter.variantOf === void 0);
var WEIGHTS = /* @__PURE__ */ new Map();
PRIMARY_LETTERS.forEach((letter, index) => WEIGHTS.set(letter.ch, [(index + 1) * 10, 0]));
for (const letter of URDU_LETTERS) {
  if (letter.variantOf === void 0) continue;
  const baseWeight = WEIGHTS.get(letter.variantOf);
  if (baseWeight) WEIGHTS.set(letter.ch, [baseWeight[0], 1]);
}
var NON_LETTER_BASE = (PRIMARY_LETTERS.length + 1) * 10;
function weightsOf(text) {
  const out = [];
  for (const ch of text) {
    const weight = WEIGHTS.get(ch);
    if (weight) {
      out.push(weight[0], weight[1]);
    } else if (ch === " ") {
      out.push(1, 0);
    } else {
      out.push(NON_LETTER_BASE + (ch.codePointAt(0) ?? 0), 0);
    }
  }
  return out;
}
function compareUrdu(a, b) {
  const left = weightsOf(foldUrdu(a));
  const right = weightsOf(foldUrdu(b));
  const length = Math.min(left.length, right.length);
  for (let i = 0; i < length; i++) {
    const diff = left[i] - right[i];
    if (diff !== 0) return diff;
  }
  return left.length - right.length;
}
function sortUrdu(items, options = {}) {
  const { descending = false, getText } = options;
  const key = getText ?? ((item) => String(item));
  const sorted = [...items].sort((a, b) => compareUrdu(key(a), key(b)));
  return descending ? sorted.reverse() : sorted;
}

// src/search.ts
function editDistance(a, b, limit = Infinity) {
  if (a === b) return 0;
  if (Math.abs(a.length - b.length) > limit) return limit + 1;
  let previous = Array.from({ length: b.length + 1 }, (_, i) => i);
  let current = new Array(b.length + 1);
  for (let i = 1; i <= a.length; i++) {
    current[0] = i;
    let rowMin = current[0];
    for (let j = 1; j <= b.length; j++) {
      const cost = a[i - 1] === b[j - 1] ? 0 : 1;
      current[j] = Math.min(current[j - 1] + 1, previous[j] + 1, previous[j - 1] + cost);
      rowMin = Math.min(rowMin, current[j]);
    }
    if (rowMin > limit) return limit + 1;
    [previous, current] = [current, previous];
  }
  return previous[b.length];
}
function scoreOf(query, text, options) {
  if (!query) return 0;
  if (text === query) return 1;
  if (text.startsWith(query)) return 0.9;
  if (text.includes(query)) return 0.8;
  if (!options.fuzzy) return 0;
  const queryWords = splitWords(query);
  const textWords = splitWords(text);
  if (queryWords.length === 0 || textWords.length === 0) return 0;
  let matched = 0;
  for (const qw of queryWords) {
    const limit = Math.min(options.maxDistance, Math.max(1, Math.floor(qw.length / 3)));
    const hit = textWords.some(
      (tw) => tw.includes(qw) || editDistance(qw, tw, limit) <= limit
    );
    if (hit) matched++;
  }
  if (matched === 0) return 0;
  return matched / queryWords.length * 0.7;
}
function searchUrdu(query, items, options = {}) {
  return searchUrduRanked(query, items, options).map((r) => r.item);
}
function searchUrduRanked(query, items, options = {}) {
  const { getText, fuzzy = false, maxDistance = 1, limit, sortByScore = true } = options;
  const read = getText ?? ((item) => String(item));
  const folded = foldUrdu(query);
  if (!folded) return [];
  const results = [];
  for (const item of items) {
    const score = scoreOf(folded, foldUrdu(read(item)), { fuzzy, maxDistance });
    if (score > 0) results.push({ item, score });
  }
  if (sortByScore) results.sort((a, b) => b.score - a.score);
  return limit === void 0 ? results : results.slice(0, limit);
}
function highlightUrdu(text, query, wrap = (m) => `<mark>${m}</mark>`) {
  const foldedQuery = foldUrdu(query);
  if (!foldedQuery || !text) return text;
  const sourceChars = [...text];
  const foldedChars = [];
  const sourceIndexOf = [];
  sourceChars.forEach((ch, i) => {
    const folded = normalizeUrdu(ch, {
      stripDiacritics: true,
      stripZwnj: true,
      collapseWhitespace: false
    }).toLowerCase();
    for (const f of folded) {
      foldedChars.push(f);
      sourceIndexOf.push(i);
    }
  });
  const haystack = foldedChars.join("");
  let out = "";
  let cursor = 0;
  let from = 0;
  for (; ; ) {
    const hit = haystack.indexOf(foldedQuery, from);
    if (hit === -1) break;
    const startSource = sourceIndexOf[hit];
    const endSource = (sourceIndexOf[hit + foldedQuery.length - 1] ?? startSource) + 1;
    out += sourceChars.slice(cursor, startSource).join("");
    out += wrap(sourceChars.slice(startSource, endSource).join(""));
    cursor = endSource;
    from = hit + foldedQuery.length;
  }
  out += sourceChars.slice(cursor).join("");
  return out;
}

// src/dictionary.ts
var WORD_DICTIONARY = {
  // ---- pronouns, determiners, question words ----
  "\u0645\u06CC\u06BA": "mein",
  "\u06C1\u0645": "hum",
  "\u062A\u0645": "tum",
  "\u0622\u067E": "aap",
  "\u0648\u06C1": "woh",
  "\u06CC\u06C1": "yeh",
  "\u0645\u06CC\u0631\u0627": "mera",
  "\u0645\u06CC\u0631\u06CC": "meri",
  "\u0645\u06CC\u0631\u06D2": "mere",
  "\u06C1\u0645\u0627\u0631\u0627": "hamara",
  "\u06C1\u0645\u0627\u0631\u06CC": "hamari",
  "\u06C1\u0645\u0627\u0631\u06D2": "hamaray",
  "\u062A\u0645\u06C1\u0627\u0631\u0627": "tumhara",
  "\u062A\u0645\u06C1\u0627\u0631\u06CC": "tumhari",
  "\u062A\u0645\u06C1\u0627\u0631\u06D2": "tumharay",
  "\u0622\u067E\u06A9\u0627": "aapka",
  "\u0622\u067E\u06A9\u06CC": "aapki",
  "\u0622\u067E\u06A9\u06D2": "aapke",
  "\u0627\u0633": "is",
  "\u0627\u0633\u06A9\u0627": "iska",
  "\u0627\u0633\u06A9\u06CC": "iski",
  "\u0627\u0633\u06A9\u06D2": "iske",
  "\u0627\u0646": "un",
  "\u0627\u0646\u06A9\u0627": "unka",
  "\u0627\u0646\u06A9\u06CC": "unki",
  "\u0627\u0646\u06A9\u06D2": "unke",
  "\u0645\u062C\u06BE\u06D2": "mujhe",
  "\u06C1\u0645\u06CC\u06BA": "humein",
  "\u062A\u0645\u06C1\u06CC\u06BA": "tumhein",
  "\u0627\u0646\u06C1\u06CC\u06BA": "unhein",
  "\u0627\u0633\u06D2": "isay",
  "\u062C\u0633\u06D2": "jisay",
  "\u06A9\u0633\u06D2": "kisay",
  "\u06A9\u0633": "kis",
  "\u06A9\u0633\u06A9\u0627": "kiska",
  "\u06A9\u0633\u06A9\u06CC": "kiski",
  "\u06A9\u0633\u06A9\u06D2": "kiske",
  "\u06A9\u0633\u06A9\u0648": "kisko",
  "\u062C\u0646": "jin",
  "\u062C\u0646\u06A9\u0627": "jinka",
  "\u062C\u0646\u06A9\u06CC": "jinki",
  "\u062C\u0646\u06A9\u06D2": "jinke",
  "\u062C\u0646\u06C1\u0648\u06BA": "jinhon",
  "\u0627\u0646\u06C1\u0648\u06BA": "unhon",
  "\u0627\u067E\u0646\u0627": "apna",
  "\u0627\u067E\u0646\u06CC": "apni",
  "\u0627\u067E\u0646\u06D2": "apnay",
  "\u062E\u0648\u062F": "khud",
  "\u06A9\u0648\u0646": "kaun",
  "\u06A9\u06CC\u0627": "kya",
  "\u06A9\u06C1\u0627\u06BA": "kahan",
  "\u06A9\u062F\u06BE\u0631": "kidhar",
  "\u0627\u062F\u06BE\u0631": "idhar",
  "\u062C\u062F\u06BE\u0631": "jidhar",
  "\u06A9\u0628": "kab",
  "\u06A9\u06CC\u0648\u06BA": "kyun",
  "\u06A9\u06CC\u0633\u06D2": "kaisay",
  "\u06A9\u06CC\u0633\u0627": "kaisa",
  "\u06A9\u06CC\u0633\u06CC": "kaisi",
  "\u06A9\u062A\u0646\u0627": "kitna",
  "\u06A9\u062A\u0646\u06CC": "kitni",
  "\u06A9\u062A\u0646\u06D2": "kitnay",
  "\u062C\u0648": "jo",
  "\u062C\u0633": "jis",
  "\u062C\u0633\u06A9\u0648": "jisko",
  "\u062C\u0633\u06A9\u0627": "jiska",
  "\u062C\u0633\u06A9\u06CC": "jiski",
  "\u062C\u0633\u06A9\u06D2": "jiske",
  "\u0633\u0628": "sab",
  "\u0633\u0628\u06BE\u06CC": "sabhi",
  "\u06A9\u0648\u0626\u06CC": "koi",
  "\u06A9\u0686\u06BE": "kuch",
  "\u06C1\u0631": "har",
  "\u0627\u06CC\u06A9": "aik",
  // ---- function words, prepositions, conjunctions ----
  "\u0627\u0648\u0631": "aur",
  "\u06CC\u0627": "ya",
  "\u0627\u06AF\u0631": "agar",
  "\u0644\u06CC\u06A9\u0646": "lekin",
  "\u0645\u06AF\u0631": "magar",
  "\u062A\u0648": "to",
  "\u0628\u06BE\u06CC": "bhi",
  "\u0646\u06C1": "na",
  "\u0646\u06C1\u06CC\u06BA": "nahi",
  "\u0645\u062A": "mat",
  "\u06A9\u0627": "ka",
  "\u06A9\u06CC": "ki",
  "\u06A9\u06D2": "ke",
  "\u06A9\u0648": "ko",
  "\u0646\u06D2": "ne",
  "\u0633\u06D2": "se",
  "\u067E\u0631": "par",
  "\u062A\u06A9": "tak",
  "\u0644\u06CC\u06D2": "liye",
  "\u0633\u0627\u062A\u06BE": "sath",
  "\u0628\u063A\u06CC\u0631": "baghair",
  "\u0648\u062C\u06C1": "wajah",
  "\u0637\u0631\u062D": "tarah",
  "\u0637\u0631\u0641": "taraf",
  "\u0628\u0627\u0631\u06D2": "baray",
  "\u0628\u0639\u062F": "baad",
  "\u067E\u06C1\u0644\u06D2": "pehlay",
  "\u062F\u0648\u0631\u0627\u0646": "doran",
  "\u062F\u0631\u0645\u06CC\u0627\u0646": "darmiyan",
  "\u0639\u0644\u0627\u0648\u06C1": "alawa",
  "\u0633\u0648\u0627\u0626\u06D2": "siwaye",
  "\u0633\u0648\u0627": "siwa",
  "\u0645\u0637\u0627\u0628\u0642": "mutabiq",
  "\u0628\u0627\u0639\u062B": "baais",
  "\u0630\u0631\u06CC\u0639\u06D2": "zariye",
  "\u062A\u062D\u062A": "tehat",
  "\u062E\u0644\u0627\u0641": "khilaf",
  "\u062D\u0642": "haq",
  "\u062D\u062A\u06CC": "hatta",
  "\u06AF\u0648\u06CC\u0627": "goya",
  "\u0686\u0646\u0627\u0646\u0686\u06C1": "chunancha",
  "\u062E\u0648\u0627\u06C1": "khwah",
  "\u0686\u0627\u06C1\u06D2": "chahe",
  "\u0628\u0644\u06A9\u06C1": "balkeh",
  "\u062D\u0627\u0644\u0627\u0646\u06A9\u06C1": "halankeh",
  "\u0686\u0648\u0646\u06A9\u06C1": "chunkeh",
  "\u06A9\u06CC\u0648\u0646\u06A9\u06C1": "kyunkeh",
  "\u062A\u0627\u06A9\u06C1": "taakeh",
  "\u0648\u0631\u0646\u06C1": "warna",
  "\u0627\u0644\u0628\u062A\u06C1": "albatta",
  "\u0645\u062B\u0644\u0627\u064B": "maslan",
  "\u06CC\u0639\u0646\u06CC": "yaani",
  "\u062E\u0635\u0648\u0635\u0627\u064B": "khasosan",
  "\u0639\u0645\u0648\u0645\u0627\u064B": "amuman",
  "\u0641\u0648\u0631\u0627\u064B": "fauran",
  "\u062F\u0648\u0628\u0627\u0631\u06C1": "dobara",
  "\u06CC\u0642\u06CC\u0646\u0627\u064B": "yaqeenan",
  "\u062A\u0642\u0631\u06CC\u0628\u0627\u064B": "taqreeban",
  "\u0628\u0639\u0636": "baaz",
  "\u062A\u0645\u0627\u0645": "tamam",
  "\u067E\u0648\u0631\u0627": "poora",
  "\u067E\u0648\u0631\u06CC": "poori",
  "\u067E\u0648\u0631\u06D2": "pooray",
  "\u0622\u062F\u06BE\u0627": "aadha",
  "\u062F\u0648\u0646\u0648\u06BA": "donon",
  "\u062A\u06CC\u0646\u0648\u06BA": "teenon",
  "\u0686\u0627\u0631\u0648\u06BA": "charon",
  "\u0633\u0627\u0631\u0627": "sara",
  "\u0633\u0627\u0631\u06CC": "sari",
  "\u0633\u0627\u0631\u06D2": "saray",
  "\u0628\u0627\u0642\u06CC": "baqi",
  // ---- place and direction ----
  "\u06CC\u06C1\u0627\u06BA": "yahan",
  "\u0648\u06C1\u0627\u06BA": "wahan",
  "\u06A9\u06C1\u06CC\u06BA": "kahin",
  "\u0648\u06C1\u06CC\u06BA": "wahin",
  "\u06CC\u06C1\u06CC\u06BA": "yahin",
  "\u0633\u0627\u0645\u0646\u06D2": "samnay",
  "\u067E\u06CC\u0686\u06BE\u06D2": "peechay",
  "\u0622\u06AF\u06D2": "agay",
  "\u0627\u0648\u067E\u0631": "oopar",
  "\u0646\u06CC\u0686\u06D2": "neechay",
  "\u0627\u0646\u062F\u0631": "andar",
  "\u0628\u0627\u06C1\u0631": "bahar",
  "\u067E\u0627\u0633": "paas",
  "\u062F\u0648\u0631": "door",
  "\u0642\u0631\u06CC\u0628": "qareeb",
  "\u062F\u0627\u0626\u06CC\u06BA": "dayen",
  "\u0628\u0627\u0626\u06CC\u06BA": "bayen",
  "\u0633\u06CC\u062F\u06BE\u0627": "seedha",
  "\u0627\u0644\u0679\u0627": "ulta",
  "\u0634\u0645\u0627\u0644": "shumal",
  "\u062C\u0646\u0648\u0628": "janoob",
  "\u0645\u0634\u0631\u0642": "mashriq",
  "\u0645\u063A\u0631\u0628": "maghrib",
  "\u0648\u0633\u0637": "wast",
  // ---- to be, and tense auxiliaries ----
  "\u06C1\u06D2": "hai",
  "\u06C1\u06CC\u06BA": "hain",
  "\u06C1\u0648\u06BA": "hoon",
  "\u06C1\u0648": "ho",
  "\u062A\u06BE\u0627": "tha",
  "\u062A\u06BE\u06CC": "thi",
  "\u062A\u06BE\u06D2": "thay",
  "\u062A\u06BE\u06CC\u06BA": "thein",
  "\u06C1\u0648\u06AF\u0627": "hoga",
  "\u06C1\u0648\u06AF\u06CC": "hogi",
  "\u06C1\u0648\u0646\u06AF\u06D2": "honge",
  "\u06C1\u0648\u06BA\u06AF\u06D2": "honge",
  "\u06C1\u0648\u0646\u0627": "hona",
  "\u06C1\u0648\u0627": "hua",
  "\u06C1\u0648\u0626\u06CC": "hui",
  "\u06C1\u0648\u0626\u06D2": "hue",
  // ---- common verbs & inflections ----
  "\u06A9\u0631\u0646\u0627": "karna",
  "\u06A9\u0631\u062A\u0627": "karta",
  "\u06A9\u0631\u062A\u06CC": "karti",
  "\u06A9\u0631\u062A\u06D2": "karte",
  "\u06A9\u0631\u06CC\u06BA": "karain",
  "\u06A9\u0631\u0648": "karo",
  "\u06A9\u0631": "kar",
  "\u06A9\u0631\u0646\u06D2": "karne",
  "\u06A9\u06CC\u06D2": "kiye",
  "\u062C\u0627\u0646\u0627": "jana",
  "\u062C\u0627\u062A\u0627": "jata",
  "\u062C\u0627\u062A\u06CC": "jati",
  "\u062C\u0627\u062A\u06D2": "jate",
  "\u062C\u0627\u0626\u06D2": "jaye",
  "\u062C\u0627\u0626\u06CC\u06BA": "jayen",
  "\u062C\u0627\u0624": "jao",
  "\u062C\u0627": "ja",
  "\u062C\u0627\u0646\u06D2": "jane",
  "\u06AF\u06CC\u0627": "gaya",
  "\u06AF\u0626\u06CC": "gayi",
  "\u06AF\u0626\u06D2": "gaye",
  "\u0622\u0646\u0627": "aana",
  "\u0622\u062A\u0627": "aata",
  "\u0622\u062A\u06CC": "aati",
  "\u0622\u062A\u06D2": "aate",
  "\u0622\u0626\u06D2": "aaye",
  "\u0622\u0626\u06CC\u06BA": "aayen",
  "\u0622\u06CC\u0627": "aaya",
  "\u0622\u0626\u06CC": "aayi",
  "\u0622\u0646\u06D2": "aane",
  "\u0622\u0624": "aao",
  "\u0622": "aa",
  "\u062F\u06CC\u0646\u0627": "dena",
  "\u062F\u06CC\u062A\u0627": "deta",
  "\u062F\u06CC\u062A\u06CC": "deti",
  "\u062F\u06CC\u062A\u06D2": "dete",
  "\u062F\u06CC\u0627": "diya",
  "\u062F\u06CC\u06D2": "diye",
  "\u062F\u06D2": "de",
  "\u062F\u0648": "do",
  "\u062F\u06CC\u06BA": "dain",
  "\u062F\u06CC\u0646\u06D2": "dene",
  "\u0644\u06CC\u0646\u0627": "lena",
  "\u0644\u06CC\u062A\u0627": "leta",
  "\u0644\u06CC\u062A\u06CC": "leti",
  "\u0644\u06CC\u062A\u06D2": "lete",
  "\u0644\u06CC\u0627": "liya",
  "\u0644\u06D2": "le",
  "\u0644\u0648": "lo",
  "\u0644\u06CC\u06BA": "lain",
  "\u0644\u06CC\u0646\u06D2": "lene",
  "\u06A9\u06C1\u0646\u0627": "kehna",
  "\u06A9\u06C1\u0627": "kaha",
  "\u06A9\u06C1\u062A\u0627": "kehta",
  "\u06A9\u06C1\u062A\u06CC": "kehti",
  "\u06A9\u06C1\u062A\u06D2": "kehte",
  "\u06A9\u06C1\u0648": "kaho",
  "\u06A9\u06C1\u0646\u06D2": "kehne",
  "\u062F\u06CC\u06A9\u06BE\u0646\u0627": "dekhna",
  "\u062F\u06CC\u06A9\u06BE\u0627": "dekha",
  "\u062F\u06CC\u06A9\u06BE\u0648": "dekho",
  "\u062F\u06CC\u06A9\u06BE\u062A\u0627": "dekhta",
  "\u062F\u06CC\u06A9\u06BE\u062A\u06CC": "dekhti",
  "\u062F\u06CC\u06A9\u06BE\u062A\u06D2": "dekhte",
  "\u062F\u06CC\u06A9\u06BE\u0646\u06D2": "dekhne",
  "\u0633\u0646\u0646\u0627": "sunna",
  "\u0633\u0646\u0627": "suna",
  "\u0633\u0646\u0648": "suno",
  "\u0633\u0646\u062A\u0627": "sunta",
  "\u0633\u0646\u062A\u06CC": "sunti",
  "\u0633\u0646\u062A\u06D2": "sunte",
  "\u0633\u0646\u0646\u06D2": "sunne",
  "\u0628\u0648\u0644\u0646\u0627": "bolna",
  "\u0628\u0648\u0644\u0627": "bola",
  "\u0628\u0648\u0644\u0648": "bolo",
  "\u0628\u0648\u0644\u062A\u0627": "bolta",
  "\u067E\u0691\u06BE\u0646\u0627": "parhna",
  "\u067E\u0691\u06BE\u0627": "parha",
  "\u067E\u0691\u06BE\u0648": "parho",
  "\u067E\u0691\u06BE\u062A\u0627": "parhta",
  "\u067E\u0691\u06BE\u062A\u06CC": "parhti",
  "\u067E\u0691\u06BE\u062A\u06D2": "parhte",
  "\u067E\u0691\u06BE\u0646\u06D2": "parhne",
  "\u0644\u06A9\u06BE\u0646\u0627": "likhna",
  "\u0644\u06A9\u06BE\u0627": "likha",
  "\u0644\u06A9\u06BE\u0648": "likho",
  "\u0644\u06A9\u06BE\u062A\u0627": "likhta",
  "\u0644\u06A9\u06BE\u062A\u06CC": "likhti",
  "\u0644\u06A9\u06BE\u062A\u06D2": "likhte",
  "\u0644\u06A9\u06BE\u0646\u06D2": "likhne",
  "\u0633\u0645\u062C\u06BE\u0646\u0627": "samajhna",
  "\u0633\u0645\u062C\u06BE\u0627": "samjha",
  "\u0633\u0645\u062C\u06BE": "samajh",
  "\u0633\u0645\u062C\u06BE\u0648": "samjho",
  "\u0633\u0645\u062C\u06BE\u0646\u06D2": "samajhne",
  "\u0633\u0645\u062C\u06BE\u0627\u0646\u0627": "samjhana",
  "\u0633\u0645\u062C\u06BE\u0627\u06CC\u0627": "samjhaya",
  "\u062C\u0627\u0646\u0646\u0627": "janna",
  "\u062C\u0627\u0646\u062A\u0627": "janta",
  "\u062C\u0627\u0646\u062A\u06CC": "janti",
  "\u062C\u0627\u0646\u062A\u06D2": "jante",
  "\u0645\u0639\u0644\u0648\u0645": "maloom",
  "\u0686\u0627\u06C1\u0646\u0627": "chahna",
  "\u0686\u0627\u06C1\u062A\u0627": "chahta",
  "\u0686\u0627\u06C1\u062A\u06CC": "chahti",
  "\u0686\u0627\u06C1\u062A\u06D2": "chahte",
  "\u0686\u0627\u06C1\u06CC\u06D2": "chahiye",
  "\u0633\u06A9\u0646\u0627": "sakna",
  "\u0633\u06A9\u062A\u0627": "sakta",
  "\u0633\u06A9\u062A\u06CC": "sakti",
  "\u0633\u06A9\u062A\u06D2": "sakte",
  "\u0631\u06C1\u0646\u0627": "rehna",
  "\u0631\u06C1\u0627": "raha",
  "\u0631\u06C1\u06CC": "rahi",
  "\u0631\u06C1\u06D2": "rahe",
  "\u0631\u06C1\u062A\u0627": "rehta",
  "\u0631\u06C1\u062A\u06CC": "rehti",
  "\u0631\u06C1\u062A\u06D2": "rehte",
  "\u0631\u06C1\u0646\u06D2": "rehne",
  "\u0628\u0646\u0646\u0627": "banna",
  "\u0628\u0646\u0627\u0646\u0627": "banana",
  "\u0628\u0646\u0627\u06CC\u0627": "banaya",
  "\u0628\u0646\u0627\u0626\u06CC": "banayi",
  "\u0628\u0646\u0627\u0626\u06D2": "banaye",
  "\u0628\u0646\u0627": "bana",
  "\u0645\u0644\u0646\u0627": "milna",
  "\u0645\u0644\u0627": "mila",
  "\u0645\u0644\u062A\u0627": "milta",
  "\u0645\u0644\u062A\u06CC": "milti",
  "\u0645\u0644\u062A\u06D2": "milte",
  "\u0645\u0644\u06CC": "mili",
  "\u0645\u0644\u06D2": "mile",
  "\u0645\u0644\u0627\u0646\u0627": "milana",
  "\u06A9\u06BE\u0627\u0646\u0627": "khana",
  "\u06A9\u06BE\u0627\u06CC\u0627": "khaya",
  "\u06A9\u06BE\u0627\u0624": "khao",
  "\u06A9\u06BE\u0627\u062A\u0627": "khata",
  "\u06A9\u06BE\u0627\u062A\u06CC": "khati",
  "\u067E\u06CC\u0646\u0627": "peena",
  "\u067E\u06CC\u0627": "piya",
  "\u067E\u06CC\u0648": "peeyo",
  "\u067E\u06CC\u062A\u0627": "peeta",
  "\u0633\u0648\u0646\u0627": "sona",
  "\u0633\u0648\u06CC\u0627": "soya",
  "\u0633\u0648\u062A\u06D2": "sote",
  "\u0627\u0679\u06BE\u0646\u0627": "uthna",
  "\u0627\u0679\u06BE\u0627": "utha",
  "\u0627\u0679\u06BE\u0648": "utho",
  "\u0627\u0679\u06BE\u0627\u0646\u0627": "uthana",
  "\u0627\u0679\u06BE\u0627\u06CC\u0627": "uthaya",
  "\u0628\u06CC\u0679\u06BE\u0646\u0627": "baithna",
  "\u0628\u06CC\u0679\u06BE\u0627": "baitha",
  "\u0628\u06CC\u0679\u06BE\u0648": "baitho",
  "\u0686\u0644\u0646\u0627": "chalna",
  "\u0686\u0644\u0627": "chala",
  "\u0686\u0644\u0648": "chalo",
  "\u0686\u0644\u062A\u0627": "chalta",
  "\u0686\u0644\u062A\u06CC": "chalti",
  "\u0686\u0644\u062A\u06D2": "chalte",
  "\u0686\u0644\u0627\u0646\u0627": "chalana",
  "\u0686\u0644\u0627\u06CC\u0627": "chalaya",
  "\u062F\u0648\u0691\u0646\u0627": "daurna",
  "\u062F\u0648\u0691\u0627": "daura",
  "\u0628\u06BE\u0627\u06AF\u0646\u0627": "bhagna",
  "\u0628\u06BE\u0627\u06AF\u0627": "bhaga",
  "\u0644\u0627\u0646\u0627": "lana",
  "\u0644\u0627\u06CC\u0627": "laya",
  "\u0644\u0627\u0626\u06D2": "laye",
  "\u0644\u0627\u0626\u06CC": "layi",
  "\u0644\u0627\u0624": "lao",
  "\u0631\u06A9\u06BE\u0646\u0627": "rakhna",
  "\u0631\u06A9\u06BE\u0627": "rakha",
  "\u0631\u06A9\u06BE\u0648": "rakho",
  "\u0631\u06A9\u06BE\u062A\u06D2": "rakhte",
  "\u0645\u0627\u0646\u06AF\u0646\u0627": "mangna",
  "\u0645\u0627\u0646\u06AF\u0627": "manga",
  "\u067E\u0648\u0686\u06BE\u0646\u0627": "poochna",
  "\u067E\u0648\u0686\u06BE\u0627": "poocha",
  "\u067E\u0648\u0686\u06BE\u0648": "poocho",
  "\u0628\u062A\u0627\u0646\u0627": "batana",
  "\u0628\u062A\u0627\u06CC\u0627": "bataya",
  "\u0628\u062A\u0627\u0624": "batao",
  "\u06A9\u06BE\u0648\u0644\u0646\u0627": "kholna",
  "\u06A9\u06BE\u0648\u0644\u0627": "khola",
  "\u06A9\u06BE\u0644\u0627": "khula",
  "\u0645\u0631\u0646\u0627": "marna",
  "\u0645\u0631\u0627": "mara",
  "\u0645\u0631\u06AF\u06CC\u0627": "margaya",
  "\u062C\u06CC\u0646\u0627": "jeena",
  "\u062C\u06CC\u0627": "jiya",
  "\u0645\u0627\u0631\u0646\u0627": "maarna",
  "\u0645\u0627\u0631\u0627": "maara",
  "\u0645\u0627\u0631\u0648": "maaro",
  "\u0628\u0686\u0627\u0646\u0627": "bachana",
  "\u0628\u0686\u0627\u06CC\u0627": "bachaya",
  "\u0628\u0686\u0646\u0627": "bachna",
  "\u0628\u0686\u0627": "bacha",
  "\u062C\u0644\u0627\u0646\u0627": "jalana",
  "\u062C\u0644\u0627\u06CC\u0627": "jalaya",
  "\u062C\u0644\u0646\u0627": "jalna",
  "\u062C\u0644\u0627": "jala",
  "\u0628\u062C\u06BE\u0627\u0646\u0627": "bujhana",
  "\u0628\u062C\u06BE\u0646\u0627": "bujhna",
  "\u0646\u0627\u0686\u0646\u0627": "nachna",
  "\u06AF\u0627\u0646\u0627": "gana",
  "\u06AF\u0627\u06CC\u0627": "gaya",
  "\u0644\u0691\u0646\u0627": "larna",
  "\u0644\u0691\u0627": "lara",
  "\u062C\u06CC\u062A\u0646\u0627": "jeetna",
  "\u062C\u06CC\u062A\u0627": "jeeta",
  "\u06C1\u0627\u0631\u0646\u0627": "haarna",
  "\u06C1\u0627\u0631\u0627": "haara",
  "\u0686\u06BE\u067E\u0627\u0646\u0627": "chhupana",
  "\u0686\u06BE\u067E\u0646\u0627": "chhupna",
  "\u0688\u06BE\u0648\u0646\u0688\u0646\u0627": "dhoondna",
  "\u0688\u06BE\u0648\u0646\u0688\u0627": "dhoonda",
  "\u0628\u062F\u0644\u0646\u0627": "badalna",
  "\u0628\u062F\u0644\u0627": "badla",
  "\u0631\u06A9\u0646\u0627": "rukna",
  "\u0631\u0648\u06A9\u0646\u0627": "rokna",
  "\u0631\u0648\u06A9\u0627": "roka",
  "\u0627\u0691\u0646\u0627": "urna",
  "\u0627\u0691\u0627\u0646\u0627": "urana",
  "\u062A\u06CC\u0631\u0646\u0627": "tairna",
  "\u06A9\u06BE\u06CC\u0644\u0646\u0627": "khelna",
  "\u06A9\u06BE\u06CC\u0644\u0627": "khela",
  "\u06A9\u06BE\u06CC\u0644\u062A\u0627": "khelta",
  "\u06C1\u0646\u0633\u0646\u0627": "hansna",
  "\u06C1\u0646\u0633\u0627": "hansa",
  "\u0631\u0648\u0646\u0627": "rona",
  "\u0631\u0648\u06CC\u0627": "roya",
  "\u0688\u0631\u0646\u0627": "darna",
  "\u0688\u0631\u0627": "dara",
  "\u0688\u0631\u0627\u0646\u0627": "darana",
  "\u0628\u06BE\u0648\u0644\u0646\u0627": "bhoolna",
  "\u0628\u06BE\u0648\u0644\u0627": "bhoola",
  "\u06CC\u0627\u062F": "yaad",
  "\u0633\u06CC\u06A9\u06BE\u0646\u0627": "seekhna",
  "\u0633\u06CC\u06A9\u06BE\u0627": "seekha",
  "\u0633\u06A9\u06BE\u0627\u0646\u0627": "sikhana",
  "\u0633\u06A9\u06BE\u0627\u06CC\u0627": "sikhaya",
  "\u067E\u06A9\u0627\u0646\u0627": "pakana",
  "\u067E\u06A9\u0627\u06CC\u0627": "pakaya",
  "\u067E\u06A9\u0646\u0627": "pakna",
  "\u067E\u06A9\u0627": "paka",
  "\u062F\u06BE\u0648\u0646\u0627": "dhona",
  "\u062F\u06BE\u0648\u06CC\u0627": "dhoya",
  "\u067E\u06C1\u0646\u0646\u0627": "pehanna",
  "\u067E\u06C1\u0646\u0627": "pehna",
  "\u0627\u062A\u0627\u0631\u0646\u0627": "utarna",
  "\u0627\u062A\u0627\u0631\u0627": "utara",
  "\u0627\u062A\u0631\u0648": "utro",
  "\u0627\u062A\u0631\u0646\u0627": "utarna",
  "\u0628\u06CC\u0686\u0646\u0627": "bechna",
  "\u0628\u06CC\u0686\u0627": "becha",
  "\u062E\u0631\u06CC\u062F\u0646\u0627": "khareedna",
  "\u062E\u0631\u06CC\u062F\u0627": "khareeda",
  "\u0628\u06BE\u06CC\u062C\u0646\u0627": "bhejna",
  "\u0628\u06BE\u06CC\u062C\u0627": "bheja",
  "\u067E\u06C1\u0646\u0686\u0646\u0627": "pohanchna",
  "\u067E\u06C1\u0646\u0686\u0627": "pohancha",
  "\u067E\u06C1\u0646\u0686\u0627\u0646\u0627": "pohonchana",
  "\u0646\u06A9\u0644\u0646\u0627": "nikalna",
  "\u0646\u06A9\u0644\u0627": "nikla",
  "\u0646\u06A9\u0627\u0644\u0646\u0627": "nikalna",
  "\u0646\u06A9\u0627\u0644\u0627": "nikala",
  "\u06AF\u0631\u0646\u0627": "girna",
  "\u06AF\u0631\u0627": "gira",
  "\u06AF\u0631\u0627\u0646\u0627": "girana",
  "\u067E\u06A9\u0691\u0646\u0627": "pakarna",
  "\u067E\u06A9\u0691\u0627": "pakra",
  "\u0686\u06BE\u0648\u0691\u0646\u0627": "chhorna",
  "\u0686\u06BE\u0648\u0691\u0627": "chhora",
  "\u062A\u0648\u0691\u0646\u0627": "torna",
  "\u062A\u0648\u0691\u0627": "tora",
  "\u0679\u0648\u0679\u0646\u0627": "tootna",
  "\u062C\u0648\u0691\u0646\u0627": "jorna",
  "\u062C\u0648\u0691\u0627": "jora",
  "\u06A9\u0627\u0679\u0646\u0627": "katna",
  "\u06A9\u0627\u0679\u0627": "kata",
  "\u0688\u0627\u0644\u0646\u0627": "daalna",
  "\u0688\u0627\u0644\u0627": "dala",
  "\u0645\u0627\u0646\u0646\u0627": "manna",
  "\u0645\u0627\u0646\u0627": "mana",
  "\u067E\u06C1\u0686\u0627\u0646\u0646\u0627": "pehchanna",
  "\u067E\u06C1\u0686\u0627\u0646\u0627": "pehchana",
  "\u0628\u0644\u0627\u0646\u0627": "bulana",
  "\u0628\u0644\u0627\u06CC\u0627": "bulaya",
  "\u067E\u06A9\u0627\u0631\u0646\u0627": "pukarna",
  "\u062F\u06A9\u06BE\u0627\u0646\u0627": "dikhana",
  "\u062F\u06A9\u06BE\u0627\u06CC\u0627": "dikhaya",
  "\u0633\u0646\u0627\u0646\u0627": "sunana",
  "\u0633\u0646\u0627\u06CC\u0627": "sunaya",
  "\u067E\u06BE\u06CC\u0646\u06A9\u0646\u0627": "phenkna",
  "\u067E\u06BE\u06CC\u0646\u06A9\u0627": "phenka",
  "\u06A9\u06BE\u06CC\u0646\u0686\u0646\u0627": "kheinchna",
  "\u06A9\u06BE\u06CC\u0646\u0686\u0627": "kheincha",
  "\u0644\u06CC\u0679\u0646\u0627": "letna",
  "\u062C\u0627\u06AF\u0646\u0627": "jagna",
  "\u062C\u06AF\u0627\u0646\u0627": "jagana",
  "\u06A9\u06BE\u0644\u0627\u0646\u0627": "khilana",
  "\u067E\u0644\u0627\u0646\u0627": "pilana",
  "\u067E\u0644\u0679\u0646\u0627": "palatna",
  "\u0644\u0648\u0679\u0646\u0627": "lautna",
  "\u0679\u0648\u06A9\u0646\u0627": "tokna",
  "\u06AF\u0632\u0627\u0631\u0646\u0627": "guzarna",
  "\u06AF\u0632\u0631\u0646\u0627": "guzarna",
  "\u06AF\u0632\u0631": "guzar",
  "\u0628\u06CC\u062A\u0646\u0627": "beetna",
  "\u062C\u06BE\u06AF\u0691\u0646\u0627": "jhagarna",
  "\u0633\u06C1\u0646\u0627": "sehna",
  "\u06A9\u0645\u0627\u0646\u0627": "kamana",
  "\u06A9\u0645\u0627\u06CC\u0627": "kamaya",
  "\u0686\u06BE\u0648\u0646\u0627": "chhoona",
  "\u0686\u06A9\u06BE\u0646\u0627": "chakhna",
  "\u0633\u0648\u0646\u06AF\u06BE\u0646\u0627": "soonghna",
  "\u06AF\u0646\u0646\u0627": "ginna",
  "\u062A\u0648\u0644\u0646\u0627": "tolna",
  "\u0646\u0627\u067E\u0646\u0627": "naapna",
  "\u0628\u0627\u0646\u062F\u06BE\u0646\u0627": "bandhna",
  "\u0628\u0627\u0646\u062F\u06BE\u0627": "bandha",
  "\u0628\u06BE\u0631\u0646\u0627": "bharna",
  "\u0628\u06BE\u0631\u0627": "bhara",
  "\u0688\u0648\u0628\u0646\u0627": "doobna",
  "\u0688\u0648\u0628\u0627": "dooba",
  "\u0686\u0645\u06A9\u0646\u0627": "chamakna",
  "\u0686\u0645\u06A9\u0627": "chamka",
  "\u0645\u06C1\u06A9\u0646\u0627": "mehakna",
  "\u06AF\u06BE\u0648\u0645\u0646\u0627": "ghoomna",
  "\u067E\u06BE\u0631\u0646\u0627": "phirna",
  "\u0686\u06BE\u06CC\u0646\u0646\u0627": "chheenna",
  "\u067E\u06BE\u06CC\u0644\u0646\u0627": "phailna",
  "\u067E\u06BE\u06CC\u0644\u0627\u0646\u0627": "phailana",
  "\u0633\u0645\u0679\u0646\u0627": "simatna",
  "\u0648\u0627\u0644\u0627": "wala",
  "\u0648\u0627\u0644\u06CC": "wali",
  "\u0648\u0627\u0644\u06D2": "walay",
  "\u0634\u0631\u0648\u0639": "shuru",
  "\u062E\u062A\u0645": "khatam",
  "\u0628\u0646\u062F": "band",
  "\u067E\u06CC\u062F\u0627": "paida",
  // ---- people and family ----
  "\u0622\u062F\u0645\u06CC": "aadmi",
  "\u0639\u0648\u0631\u062A": "aurat",
  "\u0644\u0691\u06A9\u0627": "larka",
  "\u0644\u0691\u06A9\u06CC": "larki",
  "\u0644\u0691\u06A9\u06D2": "larke",
  "\u0644\u0691\u06A9\u06CC\u0627\u06BA": "larkiyan",
  "\u0628\u0686\u06C1": "bacha",
  "\u0628\u0686\u06CC": "bachi",
  "\u0628\u0686\u06D2": "bache",
  "\u0628\u0686\u0648\u06BA": "bachon",
  "\u0645\u0627\u06BA": "maan",
  "\u0628\u0627\u067E": "baap",
  "\u0648\u0627\u0644\u062F": "walid",
  "\u0648\u0627\u0644\u062F\u06C1": "walida",
  "\u0648\u0627\u0644\u062F\u06CC\u0646": "walidain",
  "\u0627\u0645\u06CC": "ammi",
  "\u0627\u0628\u0648": "abbu",
  "\u0628\u06BE\u0627\u0626\u06CC": "bhai",
  "\u0628\u06C1\u0646": "behan",
  "\u0628\u0627\u062C\u06CC": "baji",
  "\u0622\u067E\u06CC": "api",
  "\u0628\u06CC\u0679\u0627": "beta",
  "\u0628\u06CC\u0679\u06CC": "beti",
  "\u0628\u06CC\u0679\u06D2": "bete",
  "\u0628\u06CC\u0679\u06CC\u0627\u06BA": "betiyan",
  "\u067E\u0648\u062A\u0627": "pota",
  "\u067E\u0648\u062A\u06CC": "poti",
  "\u0646\u0648\u0627\u0633\u0627": "nawasa",
  "\u0646\u0648\u0627\u0633\u06CC": "nawasi",
  "\u062F\u0627\u062F\u0627": "dada",
  "\u062F\u0627\u062F\u06CC": "dadi",
  "\u0646\u0627\u0646\u0627": "nana",
  "\u0646\u0627\u0646\u06CC": "nani",
  "\u0686\u0686\u0627": "chacha",
  "\u0686\u0686\u06CC": "chachi",
  "\u0645\u0627\u0645\u0648\u06BA": "mamoon",
  "\u0645\u0645\u0627\u0646\u06CC": "mami",
  "\u062E\u0627\u0644\u06C1": "khala",
  "\u062E\u0627\u0644\u0648": "khalu",
  "\u067E\u06BE\u0648\u067E\u06BE\u06CC": "phupi",
  "\u067E\u06BE\u0648\u067E\u06BE\u0627": "phupha",
  "\u0634\u0648\u06C1\u0631": "shauhar",
  "\u0628\u06CC\u0648\u06CC": "biwi",
  "\u062F\u0648\u0644\u06C1\u0627": "dulha",
  "\u062F\u0644\u06C1\u0646": "dulhan",
  "\u0634\u0627\u062F\u06CC": "shaadi",
  "\u0646\u06A9\u0627\u062D": "nikah",
  "\u0631\u0634\u062A\u06C1": "rishta",
  "\u062E\u0627\u0646\u062F\u0627\u0646": "khandan",
  "\u0645\u06C1\u0645\u0627\u0646": "mehman",
  "\u0645\u06CC\u0632\u0628\u0627\u0646": "mezban",
  "\u062F\u0648\u0633\u062A": "dost",
  "\u062F\u0634\u0645\u0646": "dushman",
  "\u067E\u0691\u0648\u0633\u06CC": "parosi",
  "\u06C1\u0645\u0633\u0627\u06CC\u06C1": "humsaya",
  "\u0633\u0627\u062A\u06BE\u06CC": "sathi",
  "\u0628\u0632\u0631\u06AF": "buzurg",
  "\u062C\u0648\u0627\u0646": "jawan",
  "\u0646\u0648\u062C\u0648\u0627\u0646": "naujawan",
  "\u0628\u0648\u0691\u06BE\u0627": "boorha",
  "\u0628\u0648\u0691\u06BE\u06CC": "boorhi",
  "\u0627\u0646\u0633\u0627\u0646": "insan",
  "\u0644\u0648\u06AF": "log",
  "\u0639\u0648\u0627\u0645": "awam",
  "\u0634\u062E\u0635": "shakhs",
  "\u0641\u0631\u062F": "fard",
  // ---- professions & roles ----
  "\u0627\u0633\u062A\u0627\u062F": "ustad",
  "\u0627\u0633\u062A\u0627\u0646\u06CC": "ustani",
  "\u0637\u0627\u0644\u0628": "talib",
  "\u0634\u0627\u06AF\u0631\u062F": "shagird",
  "\u0688\u0627\u06A9\u0679\u0631": "doctor",
  "\u062D\u06A9\u06CC\u0645": "hakeem",
  "\u0637\u0628\u06CC\u0628": "tabeeb",
  "\u0646\u0631\u0633": "nurse",
  "\u0633\u0631\u062C\u0646": "surgeon",
  "\u0648\u06A9\u06CC\u0644": "wakeel",
  "\u062C\u062C": "judge",
  "\u0645\u0646\u0635\u0641": "munsif",
  "\u06A9\u0633\u0627\u0646": "kisan",
  "\u0632\u0645\u06CC\u0646\u062F\u0627\u0631": "zameendar",
  "\u0645\u0632\u062F\u0648\u0631": "mazdoor",
  "\u06A9\u0627\u0631\u06CC\u06AF\u0631": "karigar",
  "\u062F\u0631\u0632\u06CC": "darzi",
  "\u0645\u0648\u0686\u06CC": "mochi",
  "\u062F\u06BE\u0648\u0628\u06CC": "dhobi",
  "\u062D\u062C\u0627\u0645": "hajam",
  "\u0646\u0627\u0626\u06CC": "nai",
  "\u0628\u0627\u0648\u0631\u0686\u06CC": "bawarchi",
  "\u062E\u0627\u0646\u0633\u0627\u0645\u0627\u06BA": "khansama",
  "\u0686\u0648\u06A9\u06CC\u062F\u0627\u0631": "chowkidar",
  "\u06AF\u0627\u0631\u0688": "guard",
  "\u067E\u0648\u0644\u06CC\u0633": "police",
  "\u0633\u067E\u0627\u06C1\u06CC": "sipahi",
  "\u0641\u0648\u062C\u06CC": "fauji",
  "\u0627\u0641\u0633\u0631": "afsar",
  "\u0645\u06CC\u0646\u06CC\u062C\u0631": "manager",
  "\u0688\u0627\u0626\u0631\u06CC\u06A9\u0679\u0631": "director",
  "\u0635\u062F\u0631": "sadar",
  "\u0648\u0632\u06CC\u0631": "wazeer",
  "\u0633\u0641\u06CC\u0631": "safeer",
  "\u062A\u0627\u062C\u0631": "tajir",
  "\u062F\u06A9\u0627\u0646\u062F\u0627\u0631": "dukandar",
  "\u0688\u0631\u0627\u0626\u06CC\u0648\u0631": "driver",
  "\u067E\u0627\u0626\u0644\u0679": "pilot",
  "\u0627\u0646\u062C\u06CC\u0646\u0626\u0631": "engineer",
  "\u0633\u0627\u0626\u0646\u0633\u062F\u0627\u0646": "sciencedan",
  "\u0634\u0627\u0639\u0631": "shair",
  "\u0627\u062F\u06CC\u0628": "adeeb",
  "\u0645\u0635\u0646\u0641": "musannif",
  "\u0635\u062D\u0627\u0641\u06CC": "sahafi",
  "\u0641\u0646\u06A9\u0627\u0631": "fankar",
  "\u06AF\u0644\u0648\u06A9\u0627\u0631": "gulokar",
  "\u0627\u062F\u0627\u06A9\u0627\u0631": "adakar",
  "\u06A9\u06BE\u0644\u0627\u0691\u06CC": "khilari",
  // ---- places & buildings ----
  "\u06AF\u06BE\u0631": "ghar",
  "\u0645\u06A9\u0627\u0646": "makan",
  "\u06A9\u0645\u0631\u06C1": "kamra",
  "\u062F\u0631\u0648\u0627\u0632\u06C1": "darwaza",
  "\u06A9\u06BE\u0691\u06A9\u06CC": "khirki",
  "\u0686\u06BE\u062A": "chhat",
  "\u062F\u06CC\u0648\u0627\u0631": "deewar",
  "\u0641\u0631\u0634": "farsh",
  "\u0635\u062D\u0646": "sehan",
  "\u062E\u0627\u0646\u06C1": "khana",
  "\u0645\u062F\u0631\u0633\u06C1": "madrasa",
  "\u0633\u06A9\u0648\u0644": "school",
  "\u06A9\u0627\u0644\u062C": "college",
  "\u06CC\u0648\u0646\u06CC\u0648\u0631\u0633\u0679\u06CC": "university",
  "\u0645\u06A9\u062A\u0628": "maktab",
  "\u062C\u0627\u0645\u0639\u06C1": "jamia",
  "\u0644\u0627\u0626\u0628\u0631\u06CC\u0631\u06CC": "library",
  "\u06C1\u0633\u067E\u062A\u0627\u0644": "hospital",
  "\u0634\u0641\u0627\u062E\u0627\u0646\u06C1": "shifakhana",
  "\u06A9\u0644\u06CC\u0646\u06A9": "clinic",
  "\u062F\u0648\u0627\u062E\u0627\u0646\u06C1": "dawakhana",
  "\u062F\u06A9\u0627\u0646": "dukan",
  "\u0645\u0627\u0631\u06A9\u06CC\u0679": "market",
  "\u0628\u0627\u0632\u0627\u0631": "bazaar",
  "\u0645\u0627\u0644": "mall",
  "\u067E\u0644\u0627\u0632\u06C1": "plaza",
  "\u06C1\u0648\u0679\u0644": "hotel",
  "\u0631\u06CC\u0633\u062A\u0648\u0631\u0627\u0646": "restaurant",
  "\u0688\u06BE\u0627\u0628\u06C1": "dhaba",
  "\u0645\u0633\u062C\u062F": "masjid",
  "\u0645\u0646\u062F\u0631": "mandir",
  "\u06AF\u0631\u062C\u0627": "girja",
  "\u0645\u0632\u0627\u0631": "mazar",
  "\u062F\u0631\u06AF\u0627\u06C1": "dargah",
  "\u0642\u0628\u0631\u0633\u062A\u0627\u0646": "qabristan",
  "\u0634\u06C1\u0631": "shehar",
  "\u0642\u0635\u0628\u06C1": "qasba",
  "\u06AF\u0627\u0624\u06BA": "gaon",
  "\u062F\u06CC\u06C1\u0627\u062A": "dehat",
  "\u0645\u0644\u06A9": "mulk",
  "\u0648\u0637\u0646": "watan",
  "\u062F\u0646\u06CC\u0627": "dunya",
  "\u062C\u06C1\u0627\u06BA": "jahan",
  "\u0631\u0627\u0633\u062A\u06C1": "rasta",
  "\u0633\u0691\u06A9": "sarak",
  "\u06AF\u0644\u06CC": "gali",
  "\u06A9\u0648\u0686\u06C1": "koocha",
  "\u0645\u062D\u0644\u06C1": "mohalla",
  "\u0686\u0648\u06A9": "chowk",
  "\u0634\u0627\u06C1\u0631\u0627\u06C1": "shahrah",
  "\u067E\u0644": "pul",
  "\u0628\u0627\u063A": "bagh",
  "\u067E\u0627\u0631\u06A9": "park",
  "\u0645\u06CC\u062F\u0627\u0646": "maidan",
  "\u0627\u0633\u0679\u06CC\u0688\u06CC\u0645": "stadium",
  "\u062F\u0641\u062A\u0631": "daftar",
  "\u062A\u06BE\u0627\u0646\u06C1": "thana",
  "\u0686\u0648\u06A9\u06CC": "chowki",
  "\u062C\u06CC\u0644": "jail",
  "\u0642\u06CC\u062F\u062E\u0627\u0646\u06C1": "qaidkhana",
  "\u0639\u062F\u0627\u0644\u062A": "adalat",
  "\u06A9\u0686\u06C1\u0631\u06CC": "kachehri",
  "\u0627\u0633\u0679\u06CC\u0634\u0646": "station",
  "\u0627\u06CC\u0626\u0631\u067E\u0648\u0631\u0679": "airport",
  "\u0628\u0646\u062F\u0631\u06AF\u0627\u06C1": "bandargah",
  "\u06A9\u0627\u0631\u062E\u0627\u0646\u06C1": "karkhana",
  "\u0641\u06CC\u06A9\u0679\u0631\u06CC": "factory",
  // ---- English loanwords in everyday Urdu ----
  "\u06A9\u0645\u067E\u06CC\u0648\u0679\u0631": "computer",
  "\u0645\u0648\u0628\u0627\u0626\u0644": "mobile",
  "\u0641\u0648\u0646": "phone",
  "\u0627\u0646\u0679\u0631\u0646\u06CC\u0679": "internet",
  "\u0628\u0633": "bus",
  "\u0679\u0631\u06CC\u0646": "train",
  "\u06A9\u0627\u0631": "car",
  "\u0633\u0627\u0626\u06CC\u06A9\u0644": "cycle",
  "\u0645\u0648\u0679\u0631": "motor",
  "\u0679\u0631\u06CC\u0641\u06A9": "traffic",
  "\u0633\u06AF\u0646\u0644": "signal",
  "\u067E\u06CC\u0679\u0631\u0648\u0644": "petrol",
  "\u0688\u06CC\u0632\u0644": "diesel",
  "\u06AF\u06CC\u0633": "gas",
  "\u0628\u06CC\u0679\u0631\u06CC": "battery",
  "\u0686\u0627\u0631\u062C\u0631": "charger",
  "\u06A9\u06CC\u0645\u0631\u06C1": "camera",
  "\u0631\u06CC\u0688\u06CC\u0648": "radio",
  "\u0679\u06CC\u0644\u06CC\u0648\u06CC\u0698\u0646": "television",
  "\u0679\u06CC\u0644\u06CC\u06AF\u0631\u0627\u0645": "telegram",
  "\u0648\u06CC\u0688\u06CC\u0648": "video",
  "\u0622\u0688\u06CC\u0648": "audio",
  "\u0645\u0627\u0626\u06CC\u06A9": "mic",
  "\u0633\u067E\u06CC\u06A9\u0631": "speaker",
  "\u0633\u06A9\u0631\u06CC\u0646": "screen",
  "\u0633\u0627\u0641\u0679\u0648\u06CC\u0626\u0631": "software",
  "\u06C1\u0627\u0631\u0688\u0648\u06CC\u0626\u0631": "hardware",
  "\u0648\u06CC\u0628": "web",
  "\u0627\u06CC\u067E": "app",
  "\u0627\u06CC\u067E\u0644\u06CC\u06A9\u06CC\u0634\u0646": "application",
  "\u0627\u06CC\u0645\u06CC\u0644": "email",
  "\u0645\u06CC\u0633\u062C": "message",
  "\u0686\u06CC\u0679": "chat",
  "\u0622\u0646\u0644\u0627\u0626\u0646": "online",
  "\u0622\u0641\u0644\u0627\u0626\u0646": "offline",
  "\u0627\u06A9\u0627\u0624\u0646\u0679": "account",
  "\u067E\u0627\u0633\u0648\u0631\u0688": "password",
  "\u0633\u06CC\u06A9\u06CC\u0648\u0631\u0679\u06CC": "security",
  "\u0633\u0631\u0648\u0631": "server",
  "\u0646\u06CC\u0679\u0648\u0631\u06A9": "network",
  "\u0641\u0627\u0626\u0644": "file",
  "\u0641\u0648\u0644\u0688\u0631": "folder",
  "\u0644\u0646\u06A9": "link",
  "\u067E\u0648\u0633\u0679": "post",
  "\u06A9\u0645\u0646\u0679": "comment",
  "\u0686\u06CC\u0646\u0644": "channel",
  "\u06AF\u0631\u0648\u067E": "group",
  "\u0688\u0627\u0624\u0646\u0644\u0648\u0688": "download",
  "\u0627\u067E\u0644\u0648\u0688": "upload",
  "\u0633\u0631\u0686": "search",
  "\u06A9\u0644\u06A9": "click",
  "\u0679\u0627\u0626\u067E": "type",
  "\u0679\u06CC\u0633\u0679": "test",
  "\u0646\u0645\u0628\u0631": "number",
  "\u06A9\u0644\u0627\u0633": "class",
  "\u0688\u06AF\u0631\u06CC": "degree",
  "\u0633\u0633\u0679\u0645": "system",
  "\u067E\u0631\u0648\u06AF\u0631\u0627\u0645": "program",
  "\u0679\u06CC\u06A9\u0646\u0627\u0644\u0648\u062C\u06CC": "technology",
  "\u0688\u06CC\u0679\u0627": "data",
  "\u0679\u06A9\u0679": "ticket",
  "\u067E\u0627\u0633\u067E\u0648\u0631\u0679": "passport",
  "\u0648\u06CC\u0632\u0627": "visa",
  "\u0628\u06CC\u0646\u06A9": "bank",
  "\u0686\u06CC\u06A9": "cheque",
  "\u06A9\u0627\u0631\u0688": "card",
  "\u0679\u06CC\u06A9\u0633": "tax",
  "\u0628\u0644": "bill",
  "\u0648\u0627\u0631\u0688": "ward",
  "\u0622\u067E\u0631\u06CC\u0634\u0646": "operation",
  "\u0627\u06CC\u0645\u0628\u0648\u0644\u06CC\u0646\u0633": "ambulance",
  // ---- time, calendar, days, months, weather ----
  "\u062F\u0646": "din",
  "\u0631\u0627\u062A": "raat",
  "\u0635\u0628\u062D": "subah",
  "\u0634\u0627\u0645": "shaam",
  "\u0633\u062D\u0631": "sehar",
  "\u062F\u0648\u067E\u06C1\u0631": "dopahar",
  "\u067E\u06C1\u0631": "pehar",
  "\u0648\u0642\u062A": "waqt",
  "\u06AF\u06BE\u0646\u0679\u06C1": "ghanta",
  "\u0645\u0646\u0679": "minute",
  "\u0633\u06CC\u06A9\u0646\u0688": "second",
  "\u0644\u0645\u062D\u06C1": "lamha",
  "\u06C1\u0641\u062A\u06C1": "hafta",
  "\u0645\u06C1\u06CC\u0646\u06C1": "maheena",
  "\u0633\u0627\u0644": "saal",
  "\u0635\u062F\u06CC": "sadi",
  "\u0632\u0645\u0627\u0646\u06C1": "zamana",
  "\u0645\u062F\u062A": "muddat",
  "\u0639\u0645\u0631": "umar",
  "\u0622\u062C": "aaj",
  "\u06A9\u0644": "kal",
  "\u067E\u0631\u0633\u0648\u06BA": "parson",
  "\u062A\u0631\u0633\u0648\u06BA": "tarson",
  "\u0627\u0628\u06BE\u06CC": "abhi",
  "\u0627\u0628": "ab",
  "\u067E\u06BE\u0631": "phir",
  "\u062A\u0628": "tab",
  "\u062C\u0628": "jab",
  "\u06C1\u0645\u06CC\u0634\u06C1": "hamesha",
  "\u06A9\u0628\u06BE\u06CC": "kabhi",
  "\u0627\u06A9\u062B\u0631": "aksar",
  "\u0631\u0648\u0632": "roz",
  "\u0631\u0648\u0632\u0627\u0646\u06C1": "rozana",
  "\u0645\u0627\u06C1\u0627\u0646\u06C1": "mahana",
  "\u0633\u0627\u0644\u0627\u0646\u06C1": "salana",
  "\u067E\u06CC\u0631": "peer",
  "\u0645\u0646\u06AF\u0644": "mangal",
  "\u0628\u062F\u06BE": "budh",
  "\u062C\u0645\u0639\u0631\u0627\u062A": "jumeraat",
  "\u062C\u0645\u0639\u06C1": "jumma",
  "\u0627\u062A\u0648\u0627\u0631": "itwar",
  "\u062C\u0646\u0648\u0631\u06CC": "january",
  "\u0641\u0631\u0648\u0631\u06CC": "february",
  "\u0645\u0627\u0631\u0686": "march",
  "\u0627\u067E\u0631\u06CC\u0644": "april",
  "\u0645\u0626\u06CC": "may",
  "\u062C\u0648\u0646": "june",
  "\u062C\u0648\u0644\u0627\u0626\u06CC": "july",
  "\u0627\u06AF\u0633\u062A": "august",
  "\u0633\u062A\u0645\u0628\u0631": "september",
  "\u0627\u06A9\u062A\u0648\u0628\u0631": "october",
  "\u0646\u0648\u0645\u0628\u0631": "november",
  "\u062F\u0633\u0645\u0628\u0631": "december",
  "\u0645\u0648\u0633\u0645": "mausam",
  "\u06AF\u0631\u0645\u06CC": "garmi",
  "\u0633\u0631\u062F\u06CC": "sardi",
  "\u0628\u06C1\u0627\u0631": "bahaar",
  "\u062E\u0632\u0627\u06BA": "khazan",
  "\u0628\u0631\u0633\u0627\u062A": "barsaat",
  "\u0628\u0627\u0631\u0634": "barish",
  "\u062F\u06BE\u0648\u067E": "dhoop",
  "\u0686\u06BE\u0627\u0624\u06BA": "chhaon",
  "\u0628\u0627\u062F\u0644": "badal",
  "\u0628\u0631\u0641": "baraf",
  "\u0627\u0648\u0644\u06D2": "olay",
  "\u06A9\u06C1\u0631": "kohar",
  "\u062F\u06BE\u0646\u062F": "dhund",
  "\u0622\u0646\u062F\u06BE\u06CC": "aandhi",
  "\u0637\u0648\u0641\u0627\u0646": "toofan",
  "\u0633\u06CC\u0644\u0627\u0628": "sailab",
  "\u0632\u0644\u0632\u0644\u06C1": "zalzala",
  "\u0622\u0633\u0645\u0627\u0646": "asman",
  "\u0632\u0645\u06CC\u0646": "zameen",
  "\u0633\u0648\u0631\u062C": "sooraj",
  "\u0686\u0627\u0646\u062F": "chand",
  "\u0633\u062A\u0627\u0631\u06C1": "sitara",
  "\u06A9\u06C1\u06A9\u0634\u0627\u0646": "kahkashan",
  // ---- household objects, clothing, tools ----
  "\u06A9\u062A\u0627\u0628": "kitaab",
  "\u0642\u0644\u0645": "qalam",
  "\u06A9\u0627\u063A\u0630": "kaghaz",
  "\u062F\u0648\u0627\u062A": "dawat",
  "\u0633\u06CC\u0627\u06C1\u06CC": "siyahi",
  "\u067E\u0646\u0633\u0644": "pencil",
  "\u0628\u0633\u062A\u06C1": "basta",
  "\u0628\u06CC\u06AF": "bag",
  "\u0645\u06CC\u0632": "mez",
  "\u06A9\u0631\u0633\u06CC": "kursi",
  "\u0627\u0644\u0645\u0627\u0631\u06CC": "almari",
  "\u0635\u0648\u0641\u06C1": "sofa",
  "\u067E\u0644\u0646\u06AF": "palang",
  "\u0628\u0633\u062A\u0631": "bistar",
  "\u06AF\u062F\u0627": "gadda",
  "\u0686\u0627\u062F\u0631": "chadar",
  "\u062A\u06A9\u06CC\u06C1": "takiya",
  "\u06A9\u0645\u0628\u0644": "kambal",
  "\u0644\u062D\u0627\u0641": "lihaf",
  "\u067E\u0631\u062F\u06C1": "parda",
  "\u0642\u0627\u0644\u06CC\u0646": "qaleen",
  "\u0686\u0679\u0627\u0626\u06CC": "chatai",
  "\u067E\u0646\u06A9\u06BE\u0627": "pankha",
  "\u0686\u0648\u0644\u06C1\u0627": "choolha",
  "\u0641\u0631\u06CC\u062C": "fridge",
  "\u0628\u0631\u062A\u0646": "bartan",
  "\u0686\u0645\u0686": "chamach",
  "\u06A9\u0627\u0646\u0679\u0627": "kanta",
  "\u0686\u06BE\u0631\u06CC": "chhuri",
  "\u0686\u0627\u0642\u0648": "chaqoo",
  "\u067E\u0644\u06CC\u0679": "plate",
  "\u067E\u06CC\u0627\u0644\u06CC": "pyali",
  "\u067E\u06CC\u0627\u0644\u06C1": "pyala",
  "\u06A9\u067E": "cup",
  "\u06AF\u0644\u0627\u0633": "glass",
  "\u062C\u06AF": "jug",
  "\u0628\u0648\u062A\u0644": "botal",
  "\u0688\u0628\u06C1": "dabba",
  "\u0628\u0627\u0644\u0679\u06CC": "balti",
  "\u0645\u06AF": "mug",
  "\u062C\u06BE\u0627\u0691\u0648": "jharoo",
  "\u0635\u0627\u0628\u0646": "sabun",
  "\u062A\u0648\u0644\u06CC\u06C1": "toliya",
  "\u0622\u0626\u06CC\u0646\u06C1": "aaina",
  "\u0634\u06CC\u0634\u06C1": "sheesha",
  "\u06A9\u0646\u06AF\u06BE\u06CC": "kanghi",
  "\u0633\u0648\u0626\u06CC": "sui",
  "\u062F\u06BE\u0627\u06AF\u06C1": "dhaga",
  "\u0642\u06CC\u0646\u0686\u06CC": "qainchi",
  "\u062A\u0627\u0644\u0627": "tala",
  "\u0686\u0627\u0628\u06CC": "chabi",
  "\u06AF\u06BE\u0691\u06CC": "ghari",
  "\u0679\u0648\u067E\u06CC": "topi",
  "\u067E\u06AF\u0691\u06CC": "pagri",
  "\u0642\u0645\u06CC\u0636": "qameez",
  "\u0634\u0644\u0648\u0627\u0631": "shalwar",
  "\u067E\u0627\u062C\u0627\u0645\u06C1": "pajama",
  "\u067E\u06CC\u0646\u0679": "pant",
  "\u0634\u0631\u0679": "shirt",
  "\u06A9\u0648\u0679": "coat",
  "\u0648\u0627\u0633\u06A9\u0648\u0679": "waistcoat",
  "\u0634\u0627\u0644": "shawl",
  "\u062F\u0648\u067E\u0679\u06C1": "dupatta",
  "\u062C\u0631\u0627\u0628": "jurab",
  "\u062F\u0633\u062A\u0627\u0646\u06D2": "dastaney",
  "\u062C\u0648\u062A\u0627": "joota",
  "\u0686\u067E\u0644": "chappal",
  "\u0635\u0646\u062F\u0644": "sandal",
  "\u06A9\u067E\u0691\u0627": "kapra",
  "\u0631\u06CC\u0634\u0645": "resham",
  "\u0633\u0648\u062A": "soot",
  "\u0627\u0648\u0646": "oon",
  // ---- food, spices, ingredients, kitchen ----
  "\u067E\u0627\u0646\u06CC": "paani",
  "\u062F\u0648\u062F\u06BE": "doodh",
  "\u062F\u06C1\u06CC": "dahi",
  "\u0645\u06A9\u06BE\u0646": "makhan",
  "\u06AF\u06BE\u06CC": "ghee",
  "\u067E\u0646\u06CC\u0631": "paneer",
  "\u0645\u0644\u0627\u0626\u06CC": "malai",
  "\u0686\u0627\u0626\u06D2": "chai",
  "\u0642\u06C1\u0648\u06C1": "qehwa",
  "\u06A9\u0627\u0641\u06CC": "coffee",
  "\u0634\u0631\u0628\u062A": "sharbat",
  "\u0644\u0633\u06CC": "lassi",
  "\u062C\u0648\u0633": "juice",
  "\u0631\u0648\u0679\u06CC": "roti",
  "\u0646\u0627\u0646": "naan",
  "\u067E\u0631\u0627\u0679\u06BE\u0627": "paratha",
  "\u06A9\u0644\u0686\u06C1": "kulcha",
  "\u0686\u0627\u0648\u0644": "chawal",
  "\u0628\u0631\u06CC\u0627\u0646\u06CC": "biryani",
  "\u067E\u0644\u0627\u0624": "pulao",
  "\u0633\u0627\u0644\u0646": "salan",
  "\u0634\u0648\u0631\u0628\u06C1": "shorba",
  "\u0642\u0648\u0631\u0645\u06C1": "qorma",
  "\u06A9\u0691\u0627\u06C1\u06CC": "karahi",
  "\u0646\u06C1\u0627\u0631\u06CC": "nihari",
  "\u062D\u0644\u06CC\u0645": "haleem",
  "\u06A9\u0628\u0627\u0628": "kabab",
  "\u062A\u06A9\u06C1": "tikka",
  "\u0633\u0645\u0648\u0633\u06C1": "samosa",
  "\u067E\u06A9\u0648\u0691\u0627": "pakaura",
  "\u0631\u0648\u0644": "roll",
  "\u062F\u0627\u0644": "daal",
  "\u06AF\u0648\u0634\u062A": "gosht",
  "\u0642\u06CC\u0645\u06C1": "qeema",
  "\u0645\u0631\u063A\u06CC": "murghi",
  "\u0645\u0686\u06BE\u0644\u06CC": "machhli",
  "\u0627\u0646\u0688\u0627": "anda",
  "\u0633\u0628\u0632\u06CC": "sabzi",
  "\u0622\u0679\u0627": "aata",
  "\u0645\u06CC\u062F\u06C1": "maida",
  "\u0633\u0648\u062C\u06CC": "sooji",
  "\u0628\u06CC\u0633\u0646": "besan",
  "\u062A\u06CC\u0644": "tel",
  "\u0646\u0645\u06A9": "namak",
  "\u0686\u06CC\u0646\u06CC": "cheeni",
  "\u0634\u06A9\u0631": "shukr",
  "\u06AF\u0691": "gur",
  "\u0634\u06C1\u062F": "shehad",
  "\u0645\u0631\u0686": "mirch",
  "\u06C1\u0644\u062F\u06CC": "haldi",
  "\u062F\u06BE\u0646\u06CC\u0627": "dhaniya",
  "\u0632\u06CC\u0631\u06C1": "zeera",
  "\u0644\u06C1\u0633\u0646": "lehsun",
  "\u0627\u062F\u0631\u06A9": "adrak",
  "\u067E\u06CC\u0627\u0632": "pyaz",
  "\u0679\u0645\u0627\u0679\u0631": "tamatar",
  "\u0622\u0644\u0648": "aloo",
  "\u06AF\u0627\u062C\u0631": "gajar",
  "\u0645\u0648\u0644\u06CC": "mooli",
  "\u0634\u0644\u062C\u0645": "shaljam",
  "\u0645\u0679\u0631": "matar",
  "\u067E\u0627\u0644\u06A9": "palak",
  "\u0645\u06CC\u062A\u06BE\u06CC": "methi",
  "\u06AF\u0648\u0628\u06BE\u06CC": "gobhi",
  "\u0628\u06CC\u0646\u06AF\u0646": "baingan",
  "\u0628\u06BE\u0646\u0688\u06CC": "bhindi",
  "\u06A9\u0631\u06CC\u0644\u0627": "karela",
  "\u06A9\u062F\u0648": "kaddu",
  "\u0644\u0648\u06A9\u06CC": "lauki",
  "\u0679\u06CC\u0646\u0688\u0627": "tinda",
  "\u06A9\u06BE\u06CC\u0631\u0627": "kheera",
  "\u067E\u06BE\u0644": "phal",
  "\u0622\u0645": "aam",
  "\u0633\u06CC\u0628": "saib",
  "\u06A9\u06CC\u0644\u0627": "kela",
  "\u0627\u0646\u06AF\u0648\u0631": "angoor",
  "\u0627\u0646\u0627\u0631": "anar",
  "\u0627\u0645\u0631\u0648\u062F": "amrood",
  "\u0645\u0627\u0644\u0679\u0627": "malta",
  "\u06A9\u06CC\u0646\u0648": "kinnu",
  "\u0644\u06CC\u0645\u0648": "leemo",
  "\u0644\u06CC\u0645\u0648\u06BA": "leemo",
  "\u062A\u0631\u0628\u0648\u0632": "tarbooz",
  "\u062E\u0631\u0628\u0648\u0632\u06C1": "kharbooza",
  "\u0622\u0691\u0648": "aadoo",
  "\u062E\u0648\u0628\u0627\u0646\u06CC": "khubani",
  "\u0646\u0627\u0634\u067E\u0627\u062A\u06CC": "nashpati",
  "\u0686\u06CC\u0631\u06CC": "cherry",
  "\u067E\u067E\u06CC\u062A\u0627": "papeeta",
  "\u0644\u06CC\u0686\u06CC": "lychee",
  "\u0628\u0627\u062F\u0627\u0645": "badam",
  "\u067E\u0633\u062A\u06C1": "pista",
  "\u0627\u062E\u0631\u0648\u0679": "akhrot",
  "\u06A9\u0627\u062C\u0648": "kaju",
  "\u0645\u0648\u0646\u06AF\u0641\u0644\u06CC": "moongphali",
  "\u06A9\u0634\u0645\u0634": "kishmish",
  "\u06A9\u06BE\u062C\u0648\u0631": "khajoor",
  "\u06A9\u06BE\u06CC\u0631": "kheer",
  "\u062D\u0644\u0648\u06C1": "halwa",
  "\u0632\u0631\u062F\u06C1": "zarda",
  "\u062C\u0627\u0645\u0646": "jamun",
  "\u062C\u0644\u06CC\u0628\u06CC": "jalebi",
  "\u0628\u0631\u0641\u06CC": "barfi",
  "\u0631\u0633\u06AF\u0644\u06C1": "rasgulla",
  "\u06A9\u0644\u0641\u06CC": "kulfi",
  "\u0622\u0626\u0633\u06A9\u0631\u06CC\u0645": "icecream",
  "\u06A9\u06CC\u06A9": "cake",
  "\u0628\u0633\u06A9\u0679": "biscuit",
  "\u0686\u0627\u06A9\u0644\u06CC\u0679": "chocolate",
  "\u0645\u0679\u06BE\u0627\u0626\u06CC": "mithai",
  "\u0633\u0644\u0627\u062F": "salad",
  "\u0631\u0627\u0626\u062A\u06C1": "raita",
  "\u0686\u0679\u0646\u06CC": "chatni",
  "\u0627\u0686\u0627\u0631": "achaar",
  "\u0645\u0631\u0628\u06C1": "murabba",
  // ---- anatomy & health ----
  "\u062F\u0644": "dil",
  "\u062F\u0645\u0627\u063A": "dimagh",
  "\u062C\u0633\u0645": "jism",
  "\u0628\u062F\u0646": "badan",
  "\u062C\u0627\u0646": "jaan",
  "\u0631\u0648\u062D": "rooh",
  "\u0633\u0631": "sar",
  "\u06A9\u06BE\u0648\u067E\u0691\u06CC": "khopri",
  "\u067E\u06CC\u0634\u0627\u0646\u06CC": "peshani",
  "\u0645\u0627\u062A\u06BE\u0627": "matha",
  "\u0622\u0646\u06A9\u06BE": "aankh",
  "\u0622\u0646\u06A9\u06BE\u06CC\u06BA": "aankhein",
  "\u067E\u0644\u06A9": "palak",
  "\u0627\u0628\u0631\u0648": "abroo",
  "\u06A9\u0627\u0646": "kaan",
  "\u0646\u0627\u06A9": "naak",
  "\u0645\u0646\u06C1": "munh",
  "\u06C1\u0648\u0646\u0679": "hont",
  "\u062F\u0627\u0646\u062A": "daant",
  "\u0632\u0628\u0627\u0646": "zuban",
  "\u06AF\u0644\u0627": "gala",
  "\u06AF\u0631\u062F\u0646": "gardan",
  "\u06A9\u0646\u062F\u06BE\u0627": "kandha",
  "\u0628\u0627\u0632\u0648": "bazu",
  "\u06A9\u06C1\u0646\u06CC": "kohni",
  "\u06A9\u0644\u0627\u0626\u06CC": "kalai",
  "\u06C1\u0627\u062A\u06BE": "hath",
  "\u0627\u0646\u06AF\u0644\u06CC": "ungli",
  "\u0627\u0646\u06AF\u0644\u06CC\u0627\u06BA": "ungliyan",
  "\u0627\u0646\u06AF\u0648\u0679\u06BE\u0627": "angootha",
  "\u0646\u0627\u062E\u0646": "nakhun",
  "\u0633\u06CC\u0646\u06C1": "seena",
  "\u0686\u06BE\u0627\u062A\u06CC": "chhati",
  "\u067E\u06CC\u0679": "pet",
  "\u06A9\u0645\u0631": "kamar",
  "\u067E\u0634\u062A": "pusht",
  "\u0631\u0627\u0646": "raan",
  "\u06AF\u06BE\u0679\u0646\u0627": "ghutna",
  "\u0679\u0627\u0646\u06AF": "taang",
  "\u0679\u0627\u0646\u06AF\u06CC\u06BA": "taangein",
  "\u067E\u0627\u0624\u06BA": "paon",
  "\u0627\u06CC\u0691\u06CC": "eeri",
  "\u062A\u0627\u0644\u0648": "talu",
  "\u06C1\u0688\u06CC": "haddi",
  "\u062E\u0648\u0646": "khoon",
  "\u0631\u06AF": "rag",
  "\u067E\u0679\u06BE\u0627": "pattha",
  "\u062C\u0644\u062F": "jild",
  "\u0686\u0645\u0691\u0627": "chamra",
  "\u0628\u0627\u0644": "baal",
  "\u062F\u0627\u0691\u06BE\u06CC": "darhi",
  "\u0645\u0648\u0646\u0686\u06BE": "moochh",
  "\u0686\u06C1\u0631\u06C1": "chehra",
  "\u0631\u062E\u0633\u0627\u0631": "rukhsar",
  "\u06AF\u0627\u0644": "gaal",
  "\u0679\u06BE\u0648\u0691\u06CC": "thori",
  "\u062C\u06AF\u0631": "jigar",
  "\u06AF\u0631\u062F\u06C1": "gurda",
  "\u067E\u06BE\u06CC\u067E\u06BE\u0691\u0627": "phepra",
  "\u0645\u0639\u062F\u06C1": "maida",
  "\u0635\u062D\u062A": "sehat",
  "\u062A\u0646\u062F\u0631\u0633\u062A\u06CC": "tandurusti",
  "\u0628\u06CC\u0645\u0627\u0631\u06CC": "beemari",
  "\u0645\u0631\u0636": "marz",
  "\u0645\u0631\u06CC\u0636": "mareez",
  "\u0628\u062E\u0627\u0631": "bukhar",
  "\u062F\u0631\u062F": "dard",
  "\u062A\u06A9\u0644\u06CC\u0641": "takleef",
  "\u06A9\u06BE\u0627\u0646\u0633\u06CC": "khansi",
  "\u0646\u0632\u0644\u06C1": "nazla",
  "\u0632\u06A9\u0627\u0645": "zukam",
  "\u0627\u0644\u0631\u062C\u06CC": "allergy",
  "\u0627\u0646\u0641\u06CC\u06A9\u0634\u0646": "infection",
  "\u0648\u0627\u0626\u0631\u0633": "virus",
  "\u0632\u062E\u0645": "zakhm",
  "\u0686\u0648\u0679": "chot",
  "\u0639\u0644\u0627\u062C": "ilaj",
  "\u062F\u0648\u0627": "dawa",
  "\u0627\u062F\u0648\u06CC\u0627\u062A": "adwiyat",
  "\u0634\u0641\u0627": "shifa",
  "\u06AF\u0648\u0644\u06CC": "goli",
  "\u0679\u06CC\u06A9\u06C1": "teeka",
  "\u0645\u0631\u06C1\u0645": "marham",
  "\u067E\u0679\u06CC": "patti",
  // ---- feelings, morals, abstraction ----
  "\u0645\u062D\u0628\u062A": "mohabbat",
  "\u0639\u0634\u0642": "ishq",
  "\u067E\u06CC\u0627\u0631": "pyaar",
  "\u0627\u0644\u0641\u062A": "ulfat",
  "\u0686\u0627\u06C1\u062A": "chahat",
  "\u0646\u0641\u0631\u062A": "nafrat",
  "\u062D\u0633\u062F": "hasad",
  "\u06A9\u06CC\u0646\u06C1": "keena",
  "\u0628\u063A\u0636": "bughz",
  "\u062E\u0648\u0634\u06CC": "khushi",
  "\u0645\u0633\u0631\u062A": "musarrat",
  "\u063A\u0645": "gham",
  "\u062F\u06A9\u06BE": "dukh",
  "\u0631\u0646\u062C": "ranj",
  "\u0627\u0644\u0645": "alam",
  "\u0627\u0641\u0633\u0648\u0633": "afsos",
  "\u067E\u0686\u06BE\u062A\u0627\u0648\u0627": "pachtawa",
  "\u0646\u062F\u0627\u0645\u062A": "nadamat",
  "\u0688\u0631": "dar",
  "\u062E\u0648\u0641": "khauf",
  "\u062F\u06C1\u0634\u062A": "dehshat",
  "\u0627\u0645\u06CC\u062F": "umeed",
  "\u0622\u0633": "aas",
  "\u06CC\u0627\u0633": "yaas",
  "\u0645\u0627\u06CC\u0648\u0633\u06CC": "mayoosi",
  "\u06CC\u0642\u06CC\u0646": "yaqeen",
  "\u0627\u0639\u062A\u0645\u0627\u062F": "aitamad",
  "\u0628\u06BE\u0631\u0648\u0633\u06C1": "bharosa",
  "\u0634\u06A9": "shak",
  "\u0633\u0686": "sach",
  "\u062C\u06BE\u0648\u0679": "jhoot",
  "\u0627\u0646\u0635\u0627\u0641": "insaf",
  "\u0639\u062F\u0644": "adl",
  "\u0638\u0644\u0645": "zulm",
  "\u0633\u062A\u0645": "sitam",
  "\u0639\u0632\u062A": "izzat",
  "\u0627\u062D\u062A\u0631\u0627\u0645": "ehtiram",
  "\u0628\u06D2\u0639\u0632\u062A\u06CC": "beizzati",
  "\u0630\u0644\u062A": "zillat",
  "\u0631\u0633\u0648\u0627\u0626\u06CC": "ruswai",
  "\u0634\u06A9\u0631\u06CC\u06C1": "shukriya",
  "\u0635\u0628\u0631": "sabr",
  "\u0627\u062D\u0633\u0627\u0646": "ehsan",
  "\u0645\u0639\u0627\u0641": "maaf",
  "\u0645\u0639\u0627\u0641\u06CC": "maafi",
  "\u062F\u0639\u0627": "dua",
  "\u0628\u062F\u062F\u0639\u0627": "baddua",
  "\u062E\u0648\u0627\u0628": "khwab",
  "\u062E\u06CC\u0627\u0644": "khayal",
  "\u0627\u0631\u0627\u062F\u06C1": "irada",
  "\u062E\u0648\u0627\u06C1\u0634": "khwahish",
  "\u062A\u0645\u0646\u0627": "tamanna",
  "\u0622\u0631\u0632\u0648": "aarzoo",
  "\u062D\u0633\u0631\u062A": "hasrat",
  "\u0632\u0646\u062F\u06AF\u06CC": "zindagi",
  "\u062D\u06CC\u0627\u062A": "hayat",
  "\u0645\u0648\u062A": "maut",
  "\u0648\u0641\u0627\u062A": "wafat",
  "\u0637\u0627\u0642\u062A": "taqat",
  "\u0642\u0648\u062A": "quwwat",
  "\u0632\u0648\u0631": "zor",
  "\u06C1\u0645\u062A": "himmat",
  "\u062D\u0648\u0635\u0644\u06C1": "hosla",
  "\u062C\u0630\u0628\u06C1": "jazba",
  "\u0634\u0648\u0642": "shauq",
  "\u06A9\u0645\u0632\u0648\u0631\u06CC": "kamzori",
  "\u0646\u0627\u062A\u0648\u0627\u0646\u06CC": "natawani",
  "\u0636\u0631\u0648\u0631\u062A": "zaroorat",
  "\u062D\u0627\u062C\u062A": "hajat",
  "\u0645\u062F\u062F": "madad",
  "\u062A\u0639\u0627\u0648\u0646": "taawun",
  "\u06A9\u0648\u0634\u0634": "koshish",
  "\u062C\u062F\u0648\u062C\u06C1\u062F": "jaddojahad",
  "\u0645\u062D\u0646\u062A": "mehnat",
  "\u0645\u0634\u0642\u062A": "mushaqqat",
  "\u06A9\u0627\u0645\u06CC\u0627\u0628\u06CC": "kamyabi",
  "\u0641\u062A\u062D": "fateh",
  "\u0646\u0627\u06A9\u0627\u0645\u06CC": "nakami",
  "\u0634\u06A9\u0633\u062A": "shikast",
  "\u06C1\u0627\u0631": "haar",
  "\u062C\u06CC\u062A": "jeet",
  "\u0641\u06CC\u0635\u0644\u06C1": "faisla",
  "\u0631\u0627\u0626\u06D2": "raye",
  "\u0645\u0634\u0648\u0631\u06C1": "mashwara",
  "\u063A\u0635\u06C1": "ghussa",
  "\u0637\u06CC\u0634": "taish",
  "\u063A\u0631\u0648\u0631": "ghuroor",
  "\u062A\u06A9\u0628\u0631": "takabbur",
  "\u0639\u0627\u062C\u0632\u06CC": "aajzi",
  "\u0627\u0646\u06A9\u0633\u0627\u0631\u06CC": "inkisari",
  "\u0633\u0627\u062F\u06AF\u06CC": "sadgi",
  "\u0635\u0641\u0627\u0626\u06CC": "safai",
  "\u067E\u0627\u06A9\u06CC": "paki",
  "\u0634\u0631\u0645": "sharm",
  "\u062D\u06CC\u0627": "haya",
  "\u063A\u06CC\u0631\u062A": "ghairat",
  "\u062D\u0645\u06CC\u062A": "hameeyat",
  "\u0627\u062E\u0644\u0627\u0642": "akhlaq",
  "\u0634\u0631\u0627\u0641\u062A": "sharafat",
  "\u062F\u06CC\u0627\u0646\u062A": "diyanat",
  "\u0627\u0645\u0627\u0646\u062A": "amanat",
  "\u062E\u06CC\u0627\u0646\u062A": "khiyanat",
  "\u0648\u0641\u0627": "wafa",
  "\u0628\u06D2\u0648\u0641\u0627\u0626\u06CC": "bewafai",
  "\u062F\u0648\u0633\u062A\u06CC": "dosti",
  "\u062F\u0634\u0645\u0646\u06CC": "dushmani",
  "\u062D\u06CC\u0631\u062A": "hairat",
  "\u062A\u0639\u062C\u0628": "taajjub",
  "\u0631\u0627\u062D\u062A": "rahat",
  "\u0633\u06A9\u0648\u0646": "sakoon",
  "\u0627\u0637\u0645\u06CC\u0646\u0627\u0646": "itminan",
  "\u0628\u06D2\u0686\u06CC\u0646\u06CC": "bechaini",
  "\u0627\u0636\u0637\u0631\u0627\u0628": "iztirab",
  "\u0627\u062D\u0633\u0627\u0633": "ehsas",
  "\u0634\u0639\u0648\u0631": "shaoor",
  "\u0644\u0627\u067E\u0631\u0648\u0627\u06C1\u06CC": "laparwahi",
  "\u062D\u0642\u06CC\u0642\u062A": "haqeeqat",
  "\u0631\u0627\u0632": "raaz",
  "\u0628\u06BE\u06CC\u062F": "bhed",
  // ---- knowledge, education, language, arts ----
  "\u0639\u0644\u0645": "ilm",
  "\u062A\u0639\u0644\u06CC\u0645": "taleem",
  "\u062A\u0631\u0628\u06CC\u062A": "tarbiyat",
  "\u0633\u0628\u0642": "sabaq",
  "\u062F\u0631\u0633": "dars",
  "\u0627\u0645\u062A\u062D\u0627\u0646": "imtihan",
  "\u0622\u0632\u0645\u0627\u0626\u0634": "azmaish",
  "\u0646\u062A\u06CC\u062C\u06C1": "nateeja",
  "\u0645\u0633\u0626\u0644\u06C1": "masla",
  "\u062D\u0644": "hal",
  "\u0633\u0648\u0627\u0644": "sawal",
  "\u062C\u0648\u0627\u0628": "jawab",
  "\u0628\u062D\u062B": "behas",
  "\u0645\u0628\u0627\u062D\u062B\u06C1": "mubahisa",
  "\u0628\u0627\u062A": "baat",
  "\u0628\u0627\u062A\u06CC\u06BA": "baatein",
  "\u06AF\u0641\u062A\u06AF\u0648": "guftagu",
  "\u06A9\u0644\u0627\u0645": "kalam",
  "\u0644\u0641\u0638": "lafz",
  "\u0627\u0644\u0641\u0627\u0638": "alfaz",
  "\u062C\u0645\u0644\u06C1": "jumla",
  "\u0641\u0642\u0631\u06C1": "fiqra",
  "\u062D\u0631\u0641": "harf",
  "\u062D\u0631\u0648\u0641": "haroof",
  "\u0645\u0639\u0646\u06CC": "maani",
  "\u0645\u0637\u0644\u0628": "matlab",
  "\u0646\u0627\u0645": "naam",
  "\u067E\u062A\u06C1": "pata",
  "\u062E\u0628\u0631": "khabar",
  "\u0627\u062E\u0628\u0627\u0631": "akhbar",
  "\u0631\u0633\u0627\u0644\u06C1": "risala",
  "\u0645\u062C\u0644\u06C1": "majalla",
  "\u06A9\u06C1\u0627\u0646\u06CC": "kahani",
  "\u0642\u0635\u06C1": "qissa",
  "\u062F\u0627\u0633\u062A\u0627\u0646": "dastan",
  "\u0646\u0627\u0648\u0644": "novel",
  "\u0627\u0641\u0633\u0627\u0646\u06C1": "afsana",
  "\u0645\u0636\u0645\u0648\u0646": "mazmoon",
  "\u0645\u0642\u0627\u0644\u06C1": "maqala",
  "\u0634\u0639\u0631": "sher",
  "\u0627\u0634\u0639\u0627\u0631": "ashaar",
  "\u063A\u0632\u0644": "ghazal",
  "\u0646\u0638\u0645": "nazm",
  "\u0645\u0631\u062B\u06CC\u06C1": "marsiya",
  "\u0642\u0635\u06CC\u062F\u06C1": "qaseeda",
  "\u0627\u062F\u0628": "adab",
  "\u062A\u0627\u0631\u06CC\u062E": "tareekh",
  "\u062C\u063A\u0631\u0627\u0641\u06CC\u06C1": "jughrafia",
  "\u0631\u06CC\u0627\u0636\u06CC": "riyazi",
  "\u0633\u0627\u0626\u0646\u0633": "science",
  "\u0641\u0644\u0633\u0641\u06C1": "falsafa",
  "\u0645\u0646\u0637\u0642": "mantiq",
  "\u062B\u0642\u0627\u0641\u062A": "saqafat",
  "\u062A\u06C1\u0630\u06CC\u0628": "tehzeeb",
  "\u062A\u0645\u062F\u0646": "tamaddun",
  "\u0631\u0633\u0645": "rasm",
  "\u0631\u0648\u0627\u062C": "riwaj",
  "\u0645\u0648\u0633\u06CC\u0642\u06CC": "moseeqi",
  "\u0631\u0627\u06AF": "raag",
  "\u0633\u0627\u0632": "saaz",
  "\u062A\u0635\u0648\u06CC\u0631": "tasweer",
  "\u0646\u0642\u0634\u06C1": "naqsha",
  "\u0631\u0646\u06AF": "rang",
  "\u0622\u0648\u0627\u0632": "awaz",
  "\u0634\u0648\u0631": "shor",
  "\u062E\u0627\u0645\u0648\u0634\u06CC": "khamoshi",
  "\u0633\u06A9\u0648\u062A": "sakoot",
  "\u062A\u062D\u0642\u06CC\u0642": "tehqeeq",
  "\u062A\u0644\u0627\u0634": "talash",
  "\u06A9\u06BE\u0648\u062C": "khoj",
  // ---- religion & spiritual ----
  "\u0646\u0645\u0627\u0632": "namaz",
  "\u0635\u0644\u0648\u06C1": "salat",
  "\u0631\u0648\u0632\u06C1": "roza",
  "\u0635\u0648\u0645": "saum",
  "\u0632\u06A9\u0648\u06C1": "zakat",
  "\u062D\u062C": "hajj",
  "\u0639\u0645\u0631\u06C1": "umrah",
  "\u0639\u06CC\u062F": "eid",
  "\u0642\u0631\u0628\u0627\u0646\u06CC": "qurbani",
  "\u0645\u0630\u06C1\u0628": "mazhab",
  "\u0627\u0633\u0644\u0627\u0645": "islam",
  "\u0627\u0644\u0644\u06C1": "allah",
  "\u0631\u0628": "rabb",
  "\u062E\u062F\u0627": "khuda",
  "\u0631\u0633\u0648\u0644": "rasool",
  "\u0646\u0628\u06CC": "nabi",
  "\u067E\u06CC\u063A\u0645\u0628\u0631": "paighambar",
  "\u0635\u062D\u0627\u0628\u06CC": "sahabi",
  "\u0635\u062D\u0627\u0628\u06C1": "sahaba",
  "\u0627\u06C1\u0644": "ahl",
  "\u0628\u06CC\u062A": "bait",
  "\u0642\u0631\u0622\u0646": "quran",
  "\u062D\u062F\u06CC\u062B": "hadees",
  "\u0633\u0646\u062A": "sunnat",
  "\u0634\u0631\u06CC\u0639\u062A": "shariat",
  "\u0641\u0642\u06C1": "fiqh",
  "\u062F\u06CC\u0646": "deen",
  "\u0627\u06CC\u0645\u0627\u0646": "imaan",
  "\u0639\u0642\u06CC\u062F\u06C1": "aqeeda",
  "\u062C\u0646\u062A": "jannat",
  "\u0641\u0631\u062F\u0648\u0633": "firdaus",
  "\u062C\u06C1\u0646\u0645": "jahannum",
  "\u062F\u0648\u0632\u062E": "dozakh",
  "\u0641\u0631\u0634\u062A\u06C1": "farishta",
  "\u0645\u0644\u0627\u0626\u06A9\u06C1": "malaika",
  "\u0634\u06CC\u0637\u0627\u0646": "shaitan",
  "\u0627\u0628\u0644\u06CC\u0633": "iblees",
  "\u062C\u0646\u0627\u062A": "jinnat",
  "\u0642\u06CC\u0627\u0645\u062A": "qayamat",
  "\u062D\u0634\u0631": "hashr",
  "\u062D\u0633\u0627\u0628": "hisaab",
  "\u0645\u06CC\u0632\u0627\u0646": "meezan",
  "\u0635\u0631\u0627\u0637": "sirat",
  "\u0639\u0628\u0627\u062F\u062A": "ibadat",
  "\u0628\u0646\u062F\u06AF\u06CC": "bandagi",
  "\u0633\u062C\u062F\u06C1": "sajda",
  "\u0631\u06A9\u0648\u0639": "rukoo",
  "\u062A\u0644\u0627\u0648\u062A": "tilawat",
  "\u062A\u0633\u0628\u06CC\u062D": "tasbeeh",
  "\u0630\u06A9\u0631": "zikr",
  "\u062A\u0648\u0628\u06C1": "tauba",
  "\u0627\u0633\u062A\u063A\u0641\u0627\u0631": "istighfar",
  "\u062B\u0648\u0627\u0628": "sawab",
  "\u0627\u062C\u0631": "ajar",
  "\u06AF\u0646\u0627\u06C1": "gunah",
  "\u0645\u0639\u0635\u06CC\u062A": "masiyat",
  "\u0639\u0630\u0627\u0628": "azaab",
  "\u0631\u062D\u0645\u062A": "rehmat",
  "\u0628\u0631\u06A9\u062A": "barkat",
  "\u0641\u0636\u0644": "fazal",
  "\u06A9\u0631\u0645": "karam",
  "\u0646\u06CC\u06A9\u06CC": "naiki",
  "\u0628\u062F\u06CC": "badi",
  "\u062A\u0642\u0648\u06CC": "taqwa",
  "\u067E\u0631\u06C1\u06CC\u0632\u06AF\u0627\u0631\u06CC": "parhezgari",
  "\u0648\u0644\u0627\u06CC\u062A": "wilayat",
  "\u0648\u0644\u06CC": "wali",
  "\u0635\u0648\u0641\u06CC": "sufi",
  "\u062F\u0631\u0648\u06CC\u0634": "darwesh",
  "\u0641\u0642\u06CC\u0631": "faqeer",
  // ---- news, politics, governance, law ----
  "\u0633\u06CC\u0627\u0633\u062A": "siyasat",
  "\u0633\u06CC\u0627\u0633\u06CC": "siyasi",
  "\u0627\u0644\u06CC\u06A9\u0634\u0646": "election",
  "\u0627\u0646\u062A\u062E\u0627\u0628": "intikhab",
  "\u0627\u0646\u062A\u062E\u0627\u0628\u0627\u062A": "intikhabat",
  "\u0648\u0648\u0679": "vote",
  "\u0627\u0645\u06CC\u062F\u0648\u0627\u0631": "ummedwar",
  "\u067E\u0627\u0631\u0679\u06CC": "party",
  "\u062C\u0645\u0627\u0639\u062A": "jamaat",
  "\u0627\u0633\u0645\u0628\u0644\u06CC": "assembly",
  "\u067E\u0627\u0631\u0644\u06CC\u0645\u0646\u0679": "parliament",
  "\u0627\u06CC\u0648\u0627\u0646": "aiwan",
  "\u0633\u06CC\u0646\u06CC\u0679": "senate",
  "\u0642\u0627\u0646\u0648\u0646": "qanoon",
  "\u062F\u0633\u062A\u0648\u0631": "dastoor",
  "\u0622\u0626\u06CC\u0646": "aaeen",
  "\u062C\u0645\u06C1\u0648\u0631\u06CC\u062A": "jamhooriat",
  "\u0622\u0645\u0631\u06CC\u062A": "aamriyat",
  "\u062D\u06A9\u0648\u0645\u062A": "hukumat",
  "\u0631\u06CC\u0627\u0633\u062A": "riyasat",
  "\u0633\u0644\u0637\u0646\u062A": "saltanat",
  "\u062D\u06A9\u0645\u0631\u0627\u0646": "hukmaran",
  "\u0627\u067E\u0648\u0632\u06CC\u0634\u0646": "opposition",
  "\u062D\u0632\u0628": "hizb",
  "\u0627\u062E\u062A\u0644\u0627\u0641": "ikhtilaf",
  "\u0627\u062A\u062D\u0627\u062F": "ittehad",
  "\u062A\u0646\u0638\u06CC\u0645": "tanzeem",
  "\u0627\u062F\u0627\u0631\u06C1": "idara",
  "\u06A9\u0645\u067E\u0646\u06CC": "company",
  "\u062C\u0631\u0645": "jurm",
  "\u0645\u062C\u0631\u0645": "mujrim",
  "\u0645\u0644\u0632\u0645": "mulzim",
  "\u0642\u06CC\u062F\u06CC": "qaidi",
  "\u06AF\u0648\u0627\u06C1": "gawah",
  "\u0634\u06C1\u0627\u062F\u062A": "shahadat",
  "\u062B\u0628\u0648\u062A": "saboot",
  "\u0633\u0632\u0627": "saza",
  "\u062C\u0631\u0645\u0627\u0646\u06C1": "jurmana",
  "\u0641\u0648\u062C": "fauj",
  "\u0644\u0634\u06A9\u0631": "lashkar",
  "\u0639\u0633\u0627\u06A9\u0631": "asakir",
  "\u062C\u0646\u06AF": "jang",
  "\u0645\u0639\u0631\u06A9\u06C1": "maraka",
  "\u0644\u0691\u0627\u0626\u06CC": "larai",
  "\u0627\u0645\u0646": "aman",
  "\u0635\u0644\u062D": "sulah",
  "\u0645\u0639\u0627\u06C1\u062F\u06C1": "muahida",
  "\u067E\u06CC\u0645\u0627\u0646": "paiman",
  "\u0645\u0639\u06CC\u0634\u062A": "maeeshat",
  "\u0627\u0642\u062A\u0635\u0627\u062F\u06CC\u0627\u062A": "iqtisadiyat",
  "\u062A\u062C\u0627\u0631\u062A": "tijarat",
  "\u06A9\u0627\u0631\u0648\u0628\u0627\u0631": "karobar",
  "\u0635\u0646\u0639\u062A": "sanat",
  "\u062D\u0631\u0641\u062A": "hirfat",
  "\u0628\u062C\u0679": "budget",
  "\u062E\u0633\u0627\u0631\u06C1": "khasara",
  "\u0645\u0646\u0627\u0641\u0639": "munafa",
  "\u0646\u0642\u0635\u0627\u0646": "nuqsan",
  "\u062A\u0631\u0642\u06CC": "taraqqi",
  "\u062A\u0646\u0632\u0644": "tanazzul",
  "\u0645\u0646\u0635\u0648\u0628\u06C1": "mansooba",
  "\u067E\u0631\u0648\u062C\u06CC\u06A9\u0679": "project",
  "\u0627\u0639\u0644\u0627\u0646": "elaan",
  "\u0627\u0634\u062A\u06C1\u0627\u0631": "ishtihar",
  "\u0631\u067E\u0648\u0631\u0679": "report",
  "\u0628\u06CC\u0627\u0646": "bayan",
  "\u0627\u062C\u0644\u0627\u0633": "ijlas",
  "\u06A9\u0627\u0646\u0641\u0631\u0646\u0633": "conference",
  "\u062F\u0648\u0631\u06C1": "dora",
  "\u0645\u0644\u0627\u0642\u0627\u062A": "mulaqat",
  "\u0645\u0630\u0627\u06A9\u0631\u0627\u062A": "muzakrat",
  "\u062A\u0642\u0631\u06CC\u0628": "taqreeb",
  "\u062C\u0644\u0633\u06C1": "jalsa",
  "\u062C\u0644\u0648\u0633": "juloos",
  "\u06C1\u0691\u062A\u0627\u0644": "hartal",
  "\u0645\u0638\u0627\u06C1\u0631\u06C1": "muzahira",
  "\u0627\u062D\u062A\u062C\u0627\u062C": "ehtejaj",
  "\u062A\u0642\u0631\u06CC\u0631": "taqreer",
  "\u062E\u0637\u0627\u0628": "khitab",
  "\u067E\u06CC\u063A\u0627\u0645": "paigham",
  // ---- nature, environment, animals ----
  "\u062F\u0631\u062E\u062A": "darakht",
  "\u0634\u062C\u0631": "shajar",
  "\u067E\u0648\u062F\u0627": "pauda",
  "\u067E\u0648\u062F\u06D2": "pauday",
  "\u067E\u062A\u06D2": "pattay",
  "\u067E\u06BE\u0648\u0644": "phool",
  "\u06A9\u0644\u06CC": "kali",
  "\u0634\u0627\u062E": "shaakh",
  "\u0679\u06C1\u0646\u06CC": "tahni",
  "\u062C\u0691": "jar",
  "\u062A\u0646\u0627": "tana",
  "\u06AF\u06BE\u0627\u0633": "ghaas",
  "\u0633\u0628\u0632\u06C1": "sabza",
  "\u062C\u0646\u06AF\u0644": "jungle",
  "\u0628\u06CC\u0627\u0628\u0627\u0646": "bayaban",
  "\u0635\u062D\u0631\u0627": "sehra",
  "\u0631\u06CC\u06AF\u0633\u062A\u0627\u0646": "registan",
  "\u067E\u06C1\u0627\u0691": "pahar",
  "\u06A9\u0648\u06C1": "koh",
  "\u0686\u0648\u0679\u06CC": "choti",
  "\u0648\u0627\u062F\u06CC": "wadi",
  "\u062F\u0631\u06C1": "darra",
  "\u063A\u0627\u0631": "ghaar",
  "\u062F\u0631\u06CC\u0627": "darya",
  "\u0646\u06C1\u0631": "nehar",
  "\u0646\u062F\u06CC": "nadi",
  "\u0646\u0627\u0644\u06C1": "nala",
  "\u0633\u0645\u0646\u062F\u0631": "samandar",
  "\u0628\u062D\u0631": "behar",
  "\u0633\u0627\u062D\u0644": "sahil",
  "\u06A9\u0646\u0627\u0631\u06C1": "kinara",
  "\u062C\u0632\u06CC\u0631\u06C1": "jazeera",
  "\u062C\u06BE\u06CC\u0644": "jheel",
  "\u062A\u0627\u0644\u0627\u0628": "talab",
  "\u062D\u0648\u0636": "hauz",
  "\u06A9\u0646\u0648\u0627\u06BA": "kuan",
  "\u0686\u0634\u0645\u06C1": "chashma",
  "\u0622\u0628\u0634\u0627\u0631": "aabshar",
  "\u0645\u0679\u06CC": "mitti",
  "\u0631\u06CC\u062A": "rait",
  "\u067E\u062A\u06BE\u0631": "patthar",
  "\u0686\u0679\u0627\u0646": "chatan",
  "\u0686\u0627\u0646\u062F\u06CC": "chandi",
  "\u062A\u0627\u0646\u0628\u0627": "tanba",
  "\u0644\u0648\u06C1\u0627": "loha",
  "\u067E\u06CC\u062A\u0644": "peetal",
  "\u06A9\u0648\u0626\u0644\u06C1": "koyla",
  "\u0622\u06AF": "aag",
  "\u0634\u0639\u0644\u06C1": "shola",
  "\u062F\u06BE\u0648\u0627\u06BA": "dhuwan",
  "\u0631\u0627\u06A9\u06BE": "raakh",
  "\u0631\u0648\u0634\u0646\u06CC": "roshni",
  "\u0646\u0648\u0631": "noor",
  "\u0627\u0646\u062F\u06BE\u06CC\u0631\u0627": "andhera",
  "\u062A\u0627\u0631\u06CC\u06A9\u06CC": "tareeki",
  "\u0633\u0627\u06CC\u06C1": "saya",
  "\u06A9\u062A\u0627": "kutta",
  "\u06A9\u062A\u06CC\u0627": "kutiya",
  "\u0628\u0644\u06CC": "billi",
  "\u0628\u0644\u0627": "billa",
  "\u06AF\u06BE\u0648\u0691\u0627": "ghora",
  "\u06AF\u06BE\u0648\u0691\u06CC": "ghori",
  "\u06AF\u062F\u06BE\u0627": "gadha",
  "\u06AF\u062F\u06BE\u06CC": "gadhi",
  "\u062E\u0686\u0631": "khachhar",
  "\u06AF\u0627\u0626\u06D2": "gaye",
  "\u0628\u06CC\u0644": "bail",
  "\u0628\u0686\u06BE\u0691\u0627": "bachhra",
  "\u0628\u06BE\u06CC\u0646\u0633": "bhains",
  "\u0628\u06A9\u0631\u06CC": "bakri",
  "\u0628\u06A9\u0631\u0627": "bakra",
  "\u0628\u06BE\u06CC\u0691": "bheed",
  "\u062F\u0646\u0628\u06C1": "dumbah",
  "\u0634\u06CC\u0631": "sheer",
  "\u0628\u0628\u0631": "babar",
  "\u0686\u06CC\u062A\u0627": "cheeta",
  "\u062A\u06CC\u0646\u062F\u0648\u0627": "tendwa",
  "\u0628\u06BE\u06CC\u0691\u06CC\u0627": "bhediya",
  "\u0644\u0648\u0645\u0691\u06CC": "lomri",
  "\u0631\u06CC\u0686\u06BE": "reech",
  "\u06C1\u0627\u062A\u06BE\u06CC": "hathi",
  "\u06C1\u062A\u06BE\u0646\u06CC": "hathni",
  "\u0627\u0648\u0646\u0679": "oont",
  "\u0633\u0627\u0646\u0688\u0646\u06CC": "sandni",
  "\u06C1\u0631\u0646": "hiran",
  "\u0633\u0646\u06AF\u06BE\u0627": "singha",
  "\u062E\u0631\u06AF\u0648\u0634": "khargosh",
  "\u0628\u0646\u062F\u0631": "bandar",
  "\u0686\u0648\u06C1\u0627": "chooha",
  "\u0686\u0648\u06C1\u06CC\u0627": "chuhiya",
  "\u067E\u0631\u0646\u062F\u06C1": "parinda",
  "\u0686\u0631\u0646\u062F": "charand",
  "\u067E\u0631\u0646\u062F": "parand",
  "\u06A9\u0648\u0627": "kawa",
  "\u0637\u0648\u0637\u0627": "tota",
  "\u0645\u06CC\u0646\u0627": "maina",
  "\u0686\u0691\u06CC\u0627": "chiriya",
  "\u06A9\u0628\u0648\u062A\u0631": "kabootar",
  "\u0641\u0627\u062E\u062A\u06C1": "fakhta",
  "\u0639\u0642\u0627\u0628": "uqaab",
  "\u0628\u0627\u0632": "baaz",
  "\u0634\u0627\u06C1\u06CC\u0646": "shaheen",
  "\u0686\u06CC\u0644": "cheel",
  "\u06AF\u062F\u06BE": "gidh",
  "\u0627\u0644\u0648": "ulloo",
  "\u0628\u06AF\u0644\u0627": "bagla",
  "\u0628\u0637\u062E": "battakh",
  "\u06C1\u0646\u0633": "hans",
  "\u0645\u0648\u0631": "mor",
  "\u0645\u0631\u063A": "murgh",
  "\u0645\u0631\u063A\u0627": "murgha",
  "\u0645\u0631\u063A\u0627\u0628\u06CC": "murghabi",
  "\u06A9\u0648\u0626\u0644": "koyal",
  "\u0628\u0644\u0628\u0644": "bulbul",
  "\u0633\u0627\u0646\u067E": "saanp",
  "\u0646\u0627\u06AF": "naag",
  "\u0686\u06BE\u067E\u06A9\u0644\u06CC": "chhipkali",
  "\u0645\u06AF\u0631\u0645\u0686\u06BE": "magarmachh",
  "\u06A9\u0686\u06BE\u0648\u0627": "kachhwa",
  "\u0645\u06CC\u0646\u0688\u06A9": "maindak",
  "\u0645\u0686\u06BE\u0631": "machhar",
  "\u0645\u06A9\u06BE\u06CC": "makkhi",
  "\u0645\u06A9\u0691\u06CC": "makri",
  "\u062A\u062A\u0644\u06CC": "titli",
  "\u06A9\u06CC\u0691\u0627": "keera",
  "\u06A9\u06CC\u0691\u06D2": "keeray",
  "\u067E\u062A\u0646\u06AF\u0627": "patanga",
  "\u0686\u06CC\u0648\u0646\u0679\u06CC": "cheenti",
  "\u0628\u0686\u06BE\u0648": "bichhoo",
  // ---- adjectives ----
  "\u0627\u0686\u06BE\u0627": "acha",
  "\u0627\u0686\u06BE\u06CC": "achi",
  "\u0627\u0686\u06BE\u06D2": "achay",
  "\u0628\u0631\u0627": "bura",
  "\u0628\u0631\u06CC": "buri",
  "\u0628\u0631\u06D2": "buray",
  "\u0628\u0691\u0627": "bara",
  "\u0628\u0691\u06CC": "bari",
  "\u0628\u0691\u06D2": "baray",
  "\u0686\u06BE\u0648\u0679\u0627": "chhota",
  "\u0686\u06BE\u0648\u0679\u06CC": "chhoti",
  "\u0686\u06BE\u0648\u0679\u06D2": "chhotay",
  "\u0646\u06CC\u0627": "naya",
  "\u0646\u0626\u06CC": "nayi",
  "\u0646\u0626\u06D2": "naye",
  "\u067E\u0631\u0627\u0646\u0627": "purana",
  "\u067E\u0631\u0627\u0646\u06CC": "purani",
  "\u067E\u0631\u0627\u0646\u06D2": "puranay",
  "\u0644\u0645\u0628\u0627": "lamba",
  "\u0644\u0645\u0628\u06CC": "lambi",
  "\u0644\u0645\u0628\u06D2": "lambay",
  "\u0645\u0648\u0679\u0627": "mota",
  "\u0645\u0648\u0679\u06CC": "moti",
  "\u0645\u0648\u0679\u06D2": "motay",
  "\u067E\u062A\u0644\u0627": "patla",
  "\u067E\u062A\u0644\u06CC": "patli",
  "\u067E\u062A\u0644\u06D2": "patlay",
  "\u062F\u0628\u0644\u0627": "dubla",
  "\u062A\u06CC\u0632": "tez",
  "\u0633\u0633\u062A": "sust",
  "\u0622\u06C1\u0633\u062A\u06C1": "ahista",
  "\u06AF\u0631\u0645": "garam",
  "\u0679\u06BE\u0646\u0688\u0627": "thanda",
  "\u0679\u06BE\u0646\u0688\u06CC": "thandi",
  "\u0679\u06BE\u0646\u0688\u06D2": "thanday",
  "\u0633\u0631\u062F": "sard",
  "\u062E\u0634\u06A9": "khushk",
  "\u06AF\u06CC\u0644\u0627": "geela",
  "\u06AF\u06CC\u0644\u06CC": "geeli",
  "\u062A\u0631": "tarr",
  "\u0645\u06CC\u0679\u06BE\u0627": "meetha",
  "\u0645\u06CC\u0679\u06BE\u06CC": "meethi",
  "\u0645\u06CC\u0679\u06BE\u06D2": "meethay",
  "\u06A9\u0691\u0648\u0627": "karwa",
  "\u06A9\u0691\u0648\u06CC": "karwi",
  "\u06A9\u06BE\u0679\u0627": "khatta",
  "\u06A9\u06BE\u0679\u06CC": "khatti",
  "\u0646\u0645\u06A9\u06CC\u0646": "namkeen",
  "\u067E\u06BE\u06CC\u06A9\u0627": "pheeka",
  "\u0635\u0627\u0641": "saaf",
  "\u0633\u062A\u06BE\u0631\u0627": "suthra",
  "\u06AF\u0646\u062F\u0627": "ganda",
  "\u06AF\u0646\u062F\u06CC": "gandi",
  "\u062E\u0627\u0644\u06CC": "khali",
  "\u0628\u06BE\u0631\u06CC": "bhari",
  "\u0628\u06BE\u0631\u06D2": "bharay",
  "\u0645\u0634\u06A9\u0644": "mushkil",
  "\u062F\u0634\u0648\u0627\u0631": "dushwar",
  "\u0622\u0633\u0627\u0646": "aasan",
  "\u0633\u06C1\u0644": "sehal",
  "\u0636\u0631\u0648\u0631\u06CC": "zaroori",
  "\u0644\u0627\u0632\u0645\u06CC": "lazmi",
  "\u0645\u06A9\u0645\u0644": "mukammal",
  "\u0627\u062F\u06BE\u0648\u0631\u0627": "adhoora",
  "\u062A\u06CC\u0627\u0631": "tayyar",
  "\u062E\u0648\u0634": "khush",
  "\u0646\u0627\u0631\u0627\u0636": "naraz",
  "\u062E\u0641\u0627": "khafa",
  "\u067E\u0631\u06CC\u0634\u0627\u0646": "pareshan",
  "\u0627\u062F\u0627\u0633": "udaas",
  "\u063A\u0645\u06AF\u06CC\u0646": "ghamgeen",
  "\u062A\u06BE\u06A9\u0627": "thaka",
  "\u062A\u06BE\u06A9\u06CC": "thaki",
  "\u062A\u06BE\u06A9\u06D2": "thakay",
  "\u0628\u06CC\u0645\u0627\u0631": "beemar",
  "\u062A\u0646\u062F\u0631\u0633\u062A": "tandurust",
  "\u0627\u0645\u06CC\u0631": "ameer",
  "\u063A\u0631\u06CC\u0628": "ghareeb",
  "\u0646\u0627\u062F\u0627\u0631": "nadar",
  "\u0645\u0641\u0644\u0633": "muflis",
  "\u0645\u0634\u06C1\u0648\u0631": "mashhoor",
  "\u0645\u0639\u0631\u0648\u0641": "maroof",
  "\u06AF\u0645\u0646\u0627\u0645": "gumnam",
  "\u062E\u0648\u0628\u0635\u0648\u0631\u062A": "khoobsurat",
  "\u0628\u062F\u0635\u0648\u0631\u062A": "badsurat",
  "\u0642\u0628\u06CC\u062D": "qabeeh",
  "\u0630\u06C1\u06CC\u0646": "zaheen",
  "\u0639\u0642\u0644\u0645\u0646\u062F": "aqlmand",
  "\u062F\u0627\u0646\u0627": "dana",
  "\u06C1\u0648\u0634\u06CC\u0627\u0631": "hoshiyar",
  "\u0686\u0627\u0644\u0627\u06A9": "chalak",
  "\u0628\u06D2\u0648\u0642\u0648\u0641": "bewaqoof",
  "\u0627\u062D\u0645\u0642": "ahmaq",
  "\u0646\u0627\u062F\u0627\u0646": "nadan",
  "\u0628\u06C1\u0627\u062F\u0631": "bahadur",
  "\u0634\u062C\u0627\u0639": "shuja",
  "\u062F\u0644\u06CC\u0631": "daler",
  "\u0628\u0632\u062F\u0644": "buzdil",
  "\u0688\u0631\u067E\u0648\u06A9": "darpok",
  "\u0645\u062D\u0646\u062A\u06CC": "mehnati",
  "\u0633\u0686\u0627": "sacha",
  "\u0633\u0686\u06CC": "sachi",
  "\u0633\u0686\u06D2": "sachay",
  "\u062C\u06BE\u0648\u0679\u0627": "jhoota",
  "\u062C\u06BE\u0648\u0679\u06CC": "jhooti",
  "\u062C\u06BE\u0648\u0679\u06D2": "jhootay",
  "\u0627\u06CC\u0645\u0627\u0646\u062F\u0627\u0631": "imandar",
  "\u062F\u06CC\u0627\u0646\u062A\u062F\u0627\u0631": "diyanatdar",
  "\u0628\u06D2\u0627\u06CC\u0645\u0627\u0646": "beiman",
  "\u067E\u06CC\u0627\u0631\u0627": "pyara",
  "\u067E\u06CC\u0627\u0631\u06CC": "pyari",
  "\u067E\u06CC\u0627\u0631\u06D2": "pyaray",
  "\u0639\u062C\u06CC\u0628": "ajeeb",
  "\u0627\u0646\u0648\u06A9\u06BE\u0627": "anokha",
  "\u0646\u0631\u0627\u0644\u0627": "nirala",
  "\u062E\u0627\u0635": "khaas",
  "\u0645\u062E\u0635\u0648\u0635": "makhsoos",
  "\u0639\u0627\u0645": "aam",
  "\u0633\u0633\u062A\u0627": "sasta",
  "\u0633\u0633\u062A\u06CC": "sasti",
  "\u0645\u06C1\u0646\u06AF\u0627": "mehanga",
  "\u0645\u06C1\u0646\u06AF\u06CC": "mehangi",
  "\u0628\u06BE\u0627\u0631\u06CC": "bhari",
  "\u0648\u0632\u0646\u06CC": "wazni",
  "\u06C1\u0644\u06A9\u0627": "halka",
  "\u06C1\u0644\u06A9\u06CC": "halki",
  "\u0633\u062E\u062A": "sakht",
  "\u0646\u0631\u0645": "naram",
  "\u0645\u0644\u0627\u0626\u0645": "mulaim",
  "\u0631\u0648\u0634\u0646": "roshan",
  "\u062A\u0627\u0631\u06CC\u06A9": "tareek",
  "\u06AF\u06C1\u0631\u0627": "gehra",
  "\u06AF\u06C1\u0631\u06CC": "gehri",
  "\u0627\u0648\u0646\u0686\u0627": "ooncha",
  "\u0627\u0648\u0646\u0686\u06CC": "oonchi",
  "\u067E\u0633\u062A": "past",
  "\u0686\u0648\u0691\u0627": "chaura",
  "\u0686\u0648\u0691\u06CC": "chauri",
  "\u062A\u0646\u06AF": "tang",
  "\u0645\u0636\u0628\u0648\u0637": "mazboot",
  "\u067E\u0627\u0626\u06CC\u062F\u0627\u0631": "paayedar",
  "\u06A9\u0645\u0632\u0648\u0631": "kamzor",
  "\u0646\u0627\u0632\u06A9": "nazuk",
  // ---- colours ----
  "\u0633\u0641\u06CC\u062F": "safaid",
  "\u06A9\u0627\u0644\u0627": "kala",
  "\u06A9\u0627\u0644\u06CC": "kali",
  "\u06A9\u0627\u0644\u06D2": "kalay",
  "\u0633\u06CC\u0627\u06C1": "siyah",
  "\u0633\u0631\u062E": "surkh",
  "\u0644\u0627\u0644": "laal",
  "\u0646\u06CC\u0644\u0627": "neela",
  "\u0646\u06CC\u0644\u06CC": "neeli",
  "\u0646\u06CC\u0644\u06D2": "neelay",
  "\u06C1\u0631\u0627": "hara",
  "\u06C1\u0631\u06CC": "hari",
  "\u06C1\u0631\u06D2": "haray",
  "\u0633\u0628\u0632": "sabz",
  "\u067E\u06CC\u0644\u0627": "peela",
  "\u067E\u06CC\u0644\u06CC": "peeli",
  "\u067E\u06CC\u0644\u06D2": "peelay",
  "\u0632\u0631\u062F": "zard",
  "\u0628\u06BE\u0648\u0631\u0627": "bhura",
  "\u0628\u06BE\u0648\u0631\u06CC": "bhuri",
  "\u06AF\u0644\u0627\u0628\u06CC": "gulabi",
  "\u0646\u0627\u0631\u0646\u062C\u06CC": "naranji",
  "\u062C\u0627\u0645\u0646\u06CC": "jamni",
  "\u0628\u06CC\u06AF\u0646\u06CC": "baingani",
  "\u0633\u0631\u0645\u0626\u06CC": "surmai",
  "\u0633\u0646\u06C1\u0631\u06CC": "sunehri",
  "\u0631\u0648\u067E\u06C1\u0644\u06CC": "rupahli",
  // ---- numbers & ordinals ----
  "\u0635\u0641\u0631": "sifar",
  "\u062A\u06CC\u0646": "teen",
  "\u0686\u0627\u0631": "char",
  "\u067E\u0627\u0646\u0686": "panch",
  "\u0686\u06BE": "chhe",
  "\u0633\u0627\u062A": "saat",
  "\u0622\u0679\u06BE": "aath",
  "\u0646\u0648": "nau",
  "\u062F\u0633": "das",
  "\u06AF\u06CC\u0627\u0631\u06C1": "gyarah",
  "\u0628\u0627\u0631\u06C1": "barah",
  "\u062A\u06CC\u0631\u06C1": "terah",
  "\u0686\u0648\u062F\u06C1": "chaudah",
  "\u067E\u0646\u062F\u0631\u06C1": "pandrah",
  "\u0633\u0648\u0644\u06C1": "solah",
  "\u0633\u062A\u0631\u06C1": "satrah",
  "\u0627\u0679\u06BE\u0627\u0631\u06C1": "atharah",
  "\u0627\u0646\u06CC\u0633": "unnees",
  "\u0628\u06CC\u0633": "bees",
  "\u0627\u06A9\u06CC\u0633": "ikkees",
  "\u0628\u0627\u0626\u06CC\u0633": "baees",
  "\u062A\u06CC\u0626\u06CC\u0633": "taees",
  "\u0686\u0648\u0628\u06CC\u0633": "chaubees",
  "\u067E\u0686\u06CC\u0633": "pachees",
  "\u0686\u06BE\u0628\u06CC\u0633": "chhabees",
  "\u0633\u062A\u0627\u0626\u06CC\u0633": "sataees",
  "\u0627\u0679\u0627\u0626\u06CC\u0633": "athaees",
  "\u0627\u0646\u062A\u06CC\u0633": "untees",
  "\u062A\u06CC\u0633": "tees",
  "\u0686\u0627\u0644\u06CC\u0633": "chalees",
  "\u067E\u0686\u0627\u0633": "pachas",
  "\u0633\u0627\u0679\u06BE": "saath",
  "\u0633\u062A\u0631": "sattar",
  "\u0627\u0633\u06CC": "assi",
  "\u0646\u0648\u06D2": "nabbay",
  "\u0633\u0648": "so",
  "\u06C1\u0632\u0627\u0631": "hazar",
  "\u0644\u0627\u06A9\u06BE": "lakh",
  "\u06A9\u0631\u0648\u0691": "karor",
  "\u0627\u0631\u0628": "arab",
  "\u067E\u06C1\u0644\u0627": "pehla",
  "\u067E\u06C1\u0644\u06CC": "pehli",
  "\u062F\u0648\u0633\u0631\u0627": "dosra",
  "\u062F\u0648\u0633\u0631\u06CC": "dosri",
  "\u062F\u0648\u0633\u0631\u06D2": "dosray",
  "\u062A\u06CC\u0633\u0631\u0627": "teesra",
  "\u062A\u06CC\u0633\u0631\u06CC": "teesri",
  "\u062A\u06CC\u0633\u0631\u06D2": "teesray",
  "\u0686\u0648\u062A\u06BE\u0627": "chautha",
  "\u0686\u0648\u062A\u06BE\u06CC": "chauthi",
  "\u0686\u0648\u062A\u06BE\u06D2": "chauthay",
  "\u067E\u0627\u0646\u0686\u0648\u0627\u06BA": "panchwan",
  "\u067E\u0627\u0646\u0686\u0648\u06CC\u06BA": "panchwein",
  "\u0686\u06BE\u0679\u0627": "chhatta",
  "\u0686\u06BE\u0679\u06CC": "chhatti",
  "\u0633\u0627\u062A\u0648\u0627\u06BA": "saatwan",
  "\u0633\u0627\u062A\u0648\u06CC\u06BA": "saatwein",
  "\u0622\u0679\u06BE\u0648\u0627\u06BA": "aathwan",
  "\u0622\u0679\u06BE\u0648\u06CC\u06BA": "aathwein",
  "\u0646\u0648\u0627\u06BA": "nawwan",
  "\u0646\u0648\u06CC\u06BA": "nawein",
  "\u062F\u0633\u0648\u0627\u06BA": "daswan",
  "\u062F\u0633\u0648\u06CC\u06BA": "daswein",
  "\u0622\u062E\u0631\u06CC": "aakhri",
  "\u0627\u0648\u0644": "awwal",
  "\u062F\u0648\u0645": "dom",
  "\u0633\u0648\u0645": "som",
  // ---- greetings, discourse markers, interjections ----
  "\u0633\u0644\u0627\u0645": "salam",
  "\u062E\u062F\u0627\u062D\u0627\u0641\u0638": "khudahafiz",
  "\u062D\u0627\u0641\u0638": "hafiz",
  "\u0645\u06C1\u0631\u0628\u0627\u0646\u06CC": "meherbani",
  "\u0645\u0628\u0627\u0631\u06A9": "mubarak",
  "\u0645\u0628\u0627\u0631\u06A9\u0628\u0627\u062F": "mubarakbaad",
  "\u062E\u0648\u0634\u0627\u0645\u062F": "khushamad",
  "\u062E\u0648\u0634\u0627\u0645\u062F\u06CC\u062F": "khushamdeed",
  "\u0627\u06C1\u0644\u0627\u064B": "ahlan",
  "\u0648\u0633\u06C1\u0644\u0627\u064B": "wasahlan",
  "\u06C1\u0627\u06BA": "haan",
  "\u062C\u06CC": "ji",
  "\u0679\u06BE\u06CC\u06A9": "theek",
  "\u062F\u0631\u0633\u062A": "durust",
  "\u0635\u062D\u06CC\u062D": "sahi",
  "\u063A\u0644\u0637": "ghalat",
  "\u0628\u0627\u0644\u06A9\u0644": "bilkul",
  "\u0636\u0631\u0648\u0631": "zaroor",
  "\u0634\u0627\u06CC\u062F": "shayad",
  "\u06A9\u0627\u0634": "kaash",
  "\u0648\u0627\u06C1": "waah",
  "\u0634\u0627\u0628\u0627\u0634": "shabash",
  "\u0622\u0641\u0631\u06CC\u0646": "aafreen",
  "\u0645\u0631\u062D\u0628\u0627": "marhaba",
  "\u0633\u0628\u062D\u0627\u0646": "subhan",
  "\u0627\u0644\u062D\u0645\u062F": "alhamd",
  "\u0645\u0627\u0634\u0627\u0621": "masha",
  "\u0627\u0646\u0634\u0627\u0621": "insha",
  "\u062C\u0644\u062F\u06CC": "jaldi",
  "\u0634\u062A\u0627\u0628\u06CC": "shitabi",
  "\u062F\u06CC\u0631": "der",
  "\u062A\u0627\u062E\u06CC\u0631": "takheer",
  "\u0622\u0631\u0627\u0645": "aaram",
  "\u062A\u06BE\u0648\u0691\u0627": "thora",
  "\u062A\u06BE\u0648\u0691\u06CC": "thori",
  "\u062A\u06BE\u0648\u0691\u06D2": "thoray",
  "\u0632\u06CC\u0627\u062F\u06C1": "ziyada",
  "\u0628\u06C1\u062A": "bohat",
  "\u06A9\u0645": "kam",
  "\u0635\u0631\u0641": "sirf",
  "\u0645\u062D\u0636": "mahez",
  "\u0641\u0642\u0637": "faqat",
  "\u0648\u0627\u0642\u0639\u06CC": "waqai",
  "\u0645\u0686": "mach",
  // ---- cities, regions, countries ----
  "\u067E\u0627\u06A9\u0633\u062A\u0627\u0646": "pakistan",
  "\u06A9\u0631\u0627\u0686\u06CC": "karachi",
  "\u0644\u0627\u06C1\u0648\u0631": "lahore",
  "\u0622\u0628\u0627\u062F": "abad",
  "\u0631\u0627\u0648\u0644\u067E\u0646\u0688\u06CC": "rawalpindi",
  "\u067E\u0634\u0627\u0648\u0631": "peshawar",
  "\u06A9\u0648\u0626\u0679\u06C1": "quetta",
  "\u0645\u0644\u062A\u0627\u0646": "multan",
  "\u0641\u06CC\u0635\u0644": "faisal",
  "\u0633\u06CC\u0627\u0644\u06A9\u0648\u0679": "sialkot",
  "\u06AF\u0648\u062C\u0631\u0627\u0646\u0648\u0627\u0644\u06C1": "gujranwala",
  "\u062D\u06CC\u062F\u0631\u0622\u0628\u0627\u062F": "hyderabad",
  "\u0628\u06C1\u0627\u0648\u0644\u067E\u0648\u0631": "bahawalpur",
  "\u0633\u0631\u06AF\u0648\u062F\u06BE\u0627": "sargodha",
  "\u0633\u06A9\u06BE\u0631": "sukkur",
  "\u0644\u0627\u0691\u06A9\u0627\u0646\u06C1": "larkana",
  "\u0634\u06CC\u062E\u0648\u067E\u0648\u0631\u06C1": "sheikhupura",
  "\u062C\u06BE\u0646\u06AF": "jhang",
  "\u06AF\u062C\u0631\u0627\u062A": "gujrat",
  "\u0645\u0631\u062F\u0627\u0646": "mardan",
  "\u0642\u0635\u0648\u0631": "kasur",
  "\u0635\u0648\u0627\u0628\u06CC": "swabi",
  "\u0627\u06CC\u0628\u0679": "abbott",
  "\u06AF\u0644\u06AF\u062A": "gilgit",
  "\u0628\u0644\u062A\u0633\u062A\u0627\u0646": "baltistan",
  "\u0645\u0638\u0641\u0631\u0622\u0628\u0627\u062F": "muzaffarabad",
  "\u06AF\u0648\u0627\u062F\u0631": "gwadar",
  "\u0633\u06A9\u0631\u062F\u0648": "skardu",
  "\u0633\u0648\u0627\u062A": "swat",
  "\u0686\u062A\u0631\u0627\u0644": "chitral",
  "\u067E\u0646\u062C\u0627\u0628": "punjab",
  "\u0633\u0646\u062F\u06BE": "sindh",
  "\u0628\u0644\u0648\u0686\u0633\u062A\u0627\u0646": "balochistan",
  "\u062E\u06CC\u0628\u0631": "khyber",
  "\u067E\u062E\u062A\u0648\u0646\u062E\u0648\u0627": "pakhtunkhwa",
  "\u06A9\u0634\u0645\u06CC\u0631": "kashmir",
  "\u0628\u06BE\u0627\u0631\u062A": "bharat",
  "\u06C1\u0646\u062F\u0648\u0633\u062A\u0627\u0646": "hindustan",
  "\u0686\u06CC\u0646": "cheen",
  "\u0627\u0641\u063A\u0627\u0646\u0633\u062A\u0627\u0646": "afghanistan",
  "\u0627\u06CC\u0631\u0627\u0646": "iran",
  "\u0633\u0639\u0648\u062F\u06CC": "saudi",
  "\u0639\u0631\u0628": "arab",
  "\u0627\u0645\u0627\u0631\u0627\u062A": "imarat",
  "\u062F\u0628\u0626\u06CC": "dubai",
  "\u0642\u0637\u0631": "qatar",
  "\u06A9\u0648\u06CC\u062A": "kuwait",
  "\u0628\u062D\u0631\u06CC\u0646": "bahrain",
  "\u0639\u0645\u0627\u0646": "oman",
  "\u0639\u0631\u0627\u0642": "iraq",
  "\u0641\u0644\u0633\u0637\u06CC\u0646": "palestine",
  "\u0627\u0631\u062F\u0646": "urdan",
  "\u0645\u0635\u0631": "misr",
  "\u062A\u0631\u06A9\u06CC": "turkey",
  "\u0628\u0631\u0637\u0627\u0646\u06CC\u06C1": "bartania",
  "\u0644\u0646\u062F\u0646": "london",
  "\u0627\u0645\u0631\u06CC\u06A9\u06C1": "amreeka",
  "\u0648\u0627\u0634\u0646\u06AF\u0679\u0646": "washington",
  "\u0646\u06CC\u0648\u06CC\u0627\u0631\u06A9": "newyork",
  "\u06A9\u06CC\u0646\u06CC\u0688\u0627": "canada",
  "\u062C\u0631\u0645\u0646\u06CC": "germany",
  "\u0641\u0631\u0627\u0646\u0633": "france",
  "\u067E\u06CC\u0631\u0633": "paris",
  "\u0627\u0679\u0644\u06CC": "italy",
  "\u0631\u0648\u0633": "roos",
  "\u0645\u0627\u0633\u06A9\u0648": "moscow",
  "\u062C\u0627\u067E\u0627\u0646": "japan",
  "\u0679\u0648\u06A9\u06CC\u0648": "tokyo",
  "\u0622\u0633\u0679\u0631\u06CC\u0644\u06CC\u0627": "australia",
  "\u0628\u06CC\u062C\u0646\u06AF": "beijing",
  "\u062F\u06C1\u0644\u06CC": "delhi",
  "\u0642\u0627\u06C1\u0631\u06C1": "cairo",
  "\u0645\u06A9\u06C1": "makkah",
  "\u0645\u062F\u06CC\u0646\u06C1": "madina",
  "\u0645\u0642\u062F\u0633": "muqaddas",
  // ---- names that appear constantly in Urdu content ----
  "\u0645\u062D\u0645\u062F": "muhammad",
  "\u0627\u062D\u0645\u062F": "ahmed",
  "\u0639\u0644\u06CC": "ali",
  "\u062E\u0627\u0646": "khan",
  "\u0632\u06CC\u062F": "zaid",
  "\u062D\u0633\u0646": "hasan",
  "\u062D\u0633\u06CC\u0646": "hussain",
  "\u0639\u062B\u0645\u0627\u0646": "usman",
  "\u0627\u0628\u0648\u0628\u06A9\u0631": "abubakar",
  "\u0628\u0644\u0627\u0644": "bilal",
  "\u0627\u0633\u0644\u0645": "aslam",
  "\u062D\u0645\u0632\u06C1": "hamza",
  "\u0633\u0639\u062F": "saad",
  "\u062E\u0627\u0644\u062F": "khalid",
  "\u0637\u0627\u0631\u0642": "tariq",
  "\u0648\u0644\u06CC\u062F": "waleed",
  "\u0634\u0627\u06C1": "shah",
  "\u0686\u0648\u06C1\u062F\u0631\u06CC": "chaudhary",
  "\u0634\u06CC\u062E": "sheikh",
  "\u0633\u06CC\u062F": "syed",
  "\u0642\u0631\u06CC\u0634\u06CC": "qureshi",
  "\u0628\u0679": "butt",
  "\u0645\u063A\u0644": "mughal",
  "\u0627\u0646\u0635\u0627\u0631\u06CC": "ansari",
  "\u0641\u0627\u0631\u0648\u0642": "farooq",
  "\u0633\u0644\u0645\u0627\u0646": "salman",
  "\u0639\u0645\u0631\u0627\u0646": "imran",
  "\u0646\u0648\u06CC\u062F": "naveed",
  "\u06A9\u0627\u0645\u0631\u0627\u0646": "kamran",
  "\u0627\u0631\u0633\u0644\u0627\u0646": "arslan",
  "\u0639\u0631\u0641\u0627\u0646": "irfan",
  "\u0631\u0636\u0648\u0627\u0646": "rizwan",
  "\u0639\u062F\u0646\u0627\u0646": "adnan",
  "\u0641\u06CC\u0636\u0627\u0646": "faizan",
  "\u0634\u06C1\u0632\u0627\u062F": "shehzad",
  "\u0648\u0642\u0627\u0631": "waqar",
  "\u0628\u0627\u0628\u0631": "babar",
  "\u0631\u0636\u0627": "raza",
  "\u0637\u0627\u06C1\u0631": "tahir",
  "\u0646\u0627\u0635\u0631": "nasir",
  "\u0632\u0628\u06CC\u0631": "zubair",
  "\u0633\u06C1\u06CC\u0644": "sohail",
  "\u0646\u062F\u06CC\u0645": "nadeem",
  "\u0648\u0633\u06CC\u0645": "waseem",
  "\u0646\u0639\u06CC\u0645": "naeem",
  "\u0633\u0644\u06CC\u0645": "saleem",
  "\u062C\u0645\u06CC\u0644": "jameel",
  "\u0631\u0627\u0634\u062F": "rashid",
  "\u0633\u0627\u062C\u062F": "sajid",
  "\u0645\u0627\u062C\u062F": "majid",
  "\u0639\u0627\u0628\u062F": "abid",
  "\u0632\u0627\u06C1\u062F": "zahid",
  "\u0634\u0627\u06C1\u062F": "shahid",
  "\u0632\u06CC\u0646": "zain",
  "\u062D\u0627\u0631\u062B": "haris",
  "\u0631\u06CC\u0627\u0646": "rayyan",
  "\u0642\u0627\u0633\u0645": "qasim",
  "\u0637\u06CC\u0628": "tayyab",
  "\u0627\u0628\u0631\u0627\u06C1\u06CC\u0645": "ibrahim",
  "\u0627\u0633\u0645\u0627\u0639\u06CC\u0644": "ismail",
  "\u0627\u0633\u062D\u0627\u0642": "ishaq",
  "\u06CC\u0639\u0642\u0648\u0628": "yaqoob",
  "\u06CC\u0648\u0633\u0641": "yousuf",
  "\u0645\u0648\u0633\u06CC": "musa",
  "\u0639\u06CC\u0633\u06CC": "eesa",
  "\u062F\u0627\u0624\u062F": "dawood",
  "\u0633\u0644\u06CC\u0645\u0627\u0646": "sulaiman",
  "\u06CC\u0648\u0646\u0633": "younus",
  "\u0627\u06CC\u0648\u0628": "ayub",
  "\u06C1\u0627\u0631\u0648\u0646": "haroon",
  "\u06CC\u062D\u06CC\u06CC": "yahya",
  "\u0641\u0627\u0637\u0645\u06C1": "fatima",
  "\u0639\u0627\u0626\u0634\u06C1": "ayesha",
  "\u0645\u0631\u06CC\u0645": "maryam",
  "\u0632\u06CC\u0646\u0628": "zainab",
  "\u062E\u062F\u06CC\u062C\u06C1": "khadija",
  "\u062D\u0641\u0635\u06C1": "hafsa",
  "\u0633\u0627\u0631\u06C1": "sara",
  "\u06C1\u062F\u06CC": "huda",
  "\u062B\u0646\u0627": "sana",
  "\u062D\u0646\u0627": "hina",
  "\u0627\u0642\u0631\u0627": "iqra",
  "\u0633\u062F\u0631\u06C1": "sidra",
  "\u0627\u0642\u0635\u06CC": "aqsa",
  "\u0641\u0631\u062D": "farah",
  "\u0646\u062F\u0627": "nida",
  "\u0635\u0628\u0627": "saba",
  "\u0645\u06C1\u0648\u0634": "mehwish",
  "\u0627\u0646\u0639\u0645": "anam",
  "\u0627\u0631\u0645": "iram",
  "\u0628\u0634\u0631\u06CC": "bushra",
  "\u0633\u0645\u06CC\u0631\u0627": "sumaira",
  "\u0646\u0627\u0632\u06CC\u06C1": "nazia",
  "\u0634\u0627\u0632\u06CC\u06C1": "shazia",
  "\u0631\u0648\u0628\u06CC\u0646\u06C1": "rubina",
  "\u0646\u0633\u0631\u06CC\u0646": "nasreen",
  "\u06CC\u0627\u0633\u0645\u06CC\u0646": "yasmeen",
  "\u062B\u0645\u06CC\u0646\u06C1": "samina",
  "\u067E\u0631\u0648\u06CC\u0646": "parveen",
  "\u0634\u0628\u0627\u0646\u06C1": "shabana",
  "\u0641\u0631\u0632\u0627\u0646\u06C1": "farzana",
  "\u0637\u0627\u06C1\u0631\u06C1": "tahira",
  "\u0639\u0635\u0645\u062A": "ismat",
  "\u0646\u0635\u0631\u062A": "nusrat",
  // ---- classical, poetic and literary vocabulary ----
  "\u06AF\u0644\u0633\u062A\u0627\u06BA": "gulistan",
  "\u06AF\u0644\u0634\u0646": "gulshan",
  "\u0628\u06C1\u0627\u0631\u0627\u06BA": "baharan",
  "\u067E\u0631\u0648\u0627\u0646\u06C1": "parwana",
  "\u0634\u0645\u0639": "shama",
  "\u0633\u0627\u0642\u06CC": "saqi",
  "\u0645\u06CC\u062E\u0627\u0646\u06C1": "maikhana",
  "\u062C\u0627\u0645": "jaam",
  "\u0635\u0631\u0627\u062D\u06CC": "surahi",
  "\u0631\u0646\u062F": "rind",
  "\u0645\u062D\u062A\u0633\u0628": "muhtasib",
  "\u0642\u0627\u0635\u062F": "qasid",
  "\u067E\u06CC\u0627\u0645\u0628\u0631": "payambar",
  "\u0631\u0642\u06CC\u0628": "raqeeb",
  "\u062D\u0628\u06CC\u0628": "habeeb",
  "\u0645\u062D\u0628\u0648\u0628": "mahboob",
  "\u0645\u0639\u0634\u0648\u0642": "mashooq",
  "\u0635\u0646\u0645": "sanam",
  "\u0633\u0646\u06AF\u062F\u0644": "sangdil",
  "\u0628\u06CC\u062F\u0631\u062F": "bedard",
  "\u063A\u0645\u06AF\u0633\u0627\u0631": "ghamgusar",
  "\u0645\u0633\u06CC\u062D\u0627": "maseeha",
  "\u0646\u0627\u0635\u062D": "nasih",
  "\u0648\u0627\u0639\u0638": "waiz",
  "\u062A\u0634\u0646\u06C1": "tishna",
  "\u06AF\u06CC\u0633\u0648": "gesu",
  "\u0632\u0644\u0641": "zulf",
  "\u062F\u06CC\u062F\u0627\u0631": "deedar",
  "\u062C\u0644\u0648\u06C1": "jalwa",
  "\u062D\u062C\u0627\u0628": "hijab",
  "\u0646\u0642\u0627\u0628": "niqab",
  "\u0633\u0648\u0632": "soz",
  "\u0622\u06C1\u0646\u06AF": "aahang",
  "\u0646\u063A\u0645\u06C1": "naghma",
  "\u062A\u0631\u0627\u0646\u06C1": "tarana",
  "\u062F\u0627\u0633\u062A\u0627\u06BA": "dastan",
  "\u062D\u0648\u0631": "hoor",
  "\u067E\u0631\u06CC": "pari",
  "\u062F\u06CC\u0648": "deo",
  "\u062C\u0627\u062F\u0648": "jadoo",
  "\u0637\u0644\u0633\u0645": "tilism",
  "\u0627\u0641\u0633\u0648\u0646": "afsoon",
  "\u0633\u062D\u0631\u0627\u0646\u06AF\u06CC\u0632": "sehrangeez",
  "\u0641\u0633\u0648\u06BA": "fusoon",
  "\u062C\u0646\u0648\u06BA": "junoon",
  "\u0633\u0648\u062F\u0627": "sauda",
  "\u0648\u062D\u0634\u062A": "wahshat",
  "\u0627\u0631\u0645\u0627\u0646": "arman",
  "\u0630\u0648\u0642": "zauq",
  "\u0648\u062C\u062F": "wajd",
  "\u0645\u0633\u062A\u06CC": "masti",
  "\u06A9\u06CC\u0641": "kaif",
  "\u062E\u0645\u0627\u0631": "khumar",
  "\u0646\u0634\u06C1": "nasha",
  "\u0628\u06D2\u062E\u0648\u062F\u06CC": "bekhudi",
  // ---- commerce, finance and modern technology ----
  "\u062E\u0631\u06CC\u062F\u0627\u0631\u06CC": "khareedari",
  "\u0641\u0631\u0648\u062E\u062A": "farokht",
  "\u0633\u0631\u0645\u0627\u06CC\u06C1": "sarmaya",
  "\u0642\u0631\u0636\u06C1": "qarza",
  "\u0628\u06CC\u0646\u06A9\u0627\u0631\u06CC": "bainkari",
  "\u0642\u0633\u0637": "qist",
  "\u0627\u062F\u0627\u0626\u06CC\u06AF\u06CC": "adaigi",
  "\u0622\u0645\u062F\u0646\u06CC": "aamdani",
  "\u062E\u0631\u0686\u06C1": "kharcha",
  "\u0628\u0686\u062A": "bachat",
  "\u0645\u062D\u0635\u0648\u0644": "mahsool",
  "\u0645\u0627\u0644\u06CC\u062A": "maliyat",
  "\u06A9\u062A\u0627\u0628\u062A": "kitabat",
  "\u0645\u0646\u0688\u06CC": "mandi",
  "\u0646\u06CC\u0644\u0627\u0645\u06CC": "neelami",
  "\u0628\u0648\u0644\u06CC": "boli",
  "\u0634\u0631\u0627\u06A9\u062A": "sharakat",
  "\u062D\u0635\u0635": "hisas",
  "\u0627\u0633\u0679\u0627\u06A9": "stock",
  "\u062F\u0648\u0644\u062A": "daulat",
  "\u062B\u0631\u0648\u062A": "sarwat",
  "\u063A\u0631\u0628\u062A": "ghurbat",
  "\u0627\u0641\u0644\u0627\u0633": "iflas",
  "\u067E\u0631\u0648\u0641\u0627\u0626\u0644": "profile",
  "\u0633\u06CC\u0679\u0646\u06AF\u0632": "settings",
  "\u0646\u0648\u0679\u06CC\u0641\u06A9\u06CC\u0634\u0646": "notification",
  "\u0633\u0627\u0626\u0679": "site",
  "\u067E\u0648\u0631\u0679\u0644": "portal",
  // ---- administration, law, governance and politics ----
  "\u0639\u062F\u0644\u06CC\u06C1": "adliya",
  "\u0645\u0642\u0646\u0646\u06C1": "muqannana",
  "\u0627\u0646\u062A\u0638\u0627\u0645\u06CC\u06C1": "intizamia",
  "\u062D\u06A9\u0645\u0631\u0627\u0646\u06CC": "hukmrani",
  "\u062C\u0645\u06C1\u0648\u0631\u06CC\u06C1": "jamhooria",
  "\u0635\u062F\u0627\u0631\u062A": "sadarat",
  "\u0648\u0632\u0627\u0631\u062A": "wazarat",
  "\u0633\u0641\u0627\u0631\u062A": "safarat",
  "\u0642\u0648\u0646\u0635\u0644": "consul",
  "\u0633\u0641\u0627\u0631\u062A\u062E\u0627\u0646\u06C1": "safaratkhana",
  "\u0622\u0626\u06CC\u0646\u06CC": "aaeeni",
  "\u062F\u0633\u062A\u0648\u0631\u06CC": "dastoori",
  "\u0641\u0648\u062C\u062F\u0627\u0631\u06CC": "faujdari",
  "\u062F\u06CC\u0648\u0627\u0646\u06CC": "deewani",
  "\u0645\u0642\u062F\u0645\u06C1": "muqaddama",
  "\u0633\u0645\u0627\u0639\u062A": "samaat",
  "\u062F\u0631\u062E\u0648\u0627\u0633\u062A": "darkhwast",
  "\u0627\u067E\u06CC\u0644": "appeal",
  "\u0636\u0645\u0627\u0646\u062A": "zamanat",
  "\u0628\u0631\u06CC\u062A": "bariyat",
  "\u0639\u0645\u0631\u0642\u06CC\u062F": "umrqaid",
  "\u067E\u06BE\u0627\u0646\u0633\u06CC": "phansi",
  "\u0648\u06A9\u0627\u0644\u062A": "wukalat",
  "\u062D\u0642\u0648\u0642": "huqooq",
  "\u0641\u0631\u0627\u0626\u0636": "faraiz",
  "\u0634\u06C1\u0631\u06CC": "shahri",
  "\u0634\u06C1\u0631\u06CC\u062A": "shahriyat",
  "\u0634\u0646\u0627\u062E\u062A": "shanakht",
  "\u0646\u0627\u062F\u0631\u0627": "nadra",
  "\u0645\u062C\u0644\u0633": "majlis",
  "\u0634\u0648\u0631\u06CC": "shoora",
  "\u062D\u0644\u06CC\u0641": "haleef",
  "\u0645\u062E\u0627\u0644\u0641": "mukhalif",
  "\u0628\u063A\u0627\u0648\u062A": "baghawat",
  // ---- geography, nature and terrain ----
  "\u062E\u0637\u06C1": "khitta",
  "\u0635\u0648\u0628\u06C1": "sooba",
  "\u0636\u0644\u0639": "zila",
  "\u062A\u062D\u0635\u06CC\u0644": "tehsil",
  "\u06CC\u0648\u0646\u06CC\u0646": "union",
  "\u06A9\u0648\u0646\u0633\u0644": "council",
  "\u0642\u0631\u06CC\u06C1": "qarya",
  "\u0628\u0633\u062A\u06CC": "basti",
  "\u0634\u06C1\u0631\u0633\u062A\u0627\u0646": "shehristan",
  "\u0646\u062E\u0644\u0633\u062A\u0627\u0646": "nakhalistan",
  "\u06A9\u0648\u06C1\u0633\u0627\u0631": "kohsar",
  "\u06A9\u06C1\u0633\u0627\u0631": "kuhsar",
  "\u06AF\u06BE\u0627\u0679\u06CC": "ghati",
  "\u0648\u0627\u062F\u06CC\u0627\u06BA": "wadiyan",
  "\u06A9\u06BE\u0627\u0626\u06CC": "khaai",
  "\u062E\u0644\u06CC\u062C": "khaleej",
  "\u0631\u0627\u0633": "raas",
  // ---- verbs and verbal inflections ----
  "\u0645\u0627\u0646\u062A\u06D2": "mante",
  "\u0645\u0627\u0646\u062A\u06CC": "manti",
  "\u0645\u0627\u0646\u0648": "mano",
  "\u0679\u06BE\u06C1\u0631\u0646\u0627": "theharna",
  "\u0679\u06BE\u06C1\u0631\u0627": "thehra",
  "\u0679\u06BE\u06C1\u0631\u0648": "thehro",
  "\u0679\u06BE\u06C1\u0631\u062A\u06D2": "thehrte",
  "\u0633\u0645\u062C\u06BE\u0627\u0624": "samjhao",
  "\u067E\u06C1\u0646\u0686\u0627\u0624": "pohonchao",
  "\u0644\u0679\u0627\u0646\u0627": "lutana",
  "\u0644\u0679\u0627\u06CC\u0627": "lutaya",
  "\u0644\u0648\u0679\u0627": "loota",
  "\u067E\u06A9\u0627\u0631\u0627": "pukara",
  "\u067E\u06A9\u0627\u0631\u0648": "pukaro",
  "\u062C\u06BE\u06A9\u0646\u0627": "jhukna",
  "\u062C\u06BE\u06A9\u0627": "jhuka",
  "\u062C\u06BE\u06A9\u0627\u0624": "jhukao",
  "\u062C\u06BE\u06A9\u0627\u0646\u0627": "jhukana",
  "\u062A\u06BE\u0627\u0645\u0646\u0627": "thamna",
  "\u062A\u06BE\u0627\u0645\u0627": "thama",
  "\u062A\u06BE\u0627\u0645\u0648": "thamo",
  "\u0633\u0646\u0648\u0627\u0631\u0646\u0627": "sanwarna",
  "\u0633\u0646\u0648\u0627\u0631\u0627": "sanwara",
  "\u0646\u06A9\u06BE\u0627\u0631\u0646\u0627": "nikharna",
  "\u0646\u06A9\u06BE\u0627\u0631\u0627": "nikhara",
  "\u0633\u0646\u0628\u06BE\u0627\u0644\u0646\u0627": "sambhalna",
  "\u0633\u0646\u0628\u06BE\u0627\u0644\u0627": "sambhala",
  "\u0633\u0646\u0628\u06BE\u0627\u0644\u0648": "sambhalo",
  "\u067E\u0686\u06BE\u062A\u0627\u0646\u0627": "pachtana",
  "\u067E\u0686\u06BE\u062A\u0627\u06CC\u0627": "pachtaya",
  "\u06AF\u06BE\u0628\u0631\u0627\u0646\u0627": "ghabrana",
  "\u06AF\u06BE\u0628\u0631\u0627\u06CC\u0627": "ghabraya",
  "\u0645\u0633\u06A9\u0631\u0627\u0646\u0627": "muskurana",
  "\u0645\u0633\u06A9\u0631\u0627\u06CC\u0627": "muskuraya",
  "\u0645\u0633\u06A9\u0631\u0627\u06C1\u0679": "muskurahat",
  "\u062C\u06BE\u0646\u062C\u06BE\u0644\u0627\u0646\u0627": "jhanjhlana",
  "\u062A\u0644\u0645\u0644\u0627\u0646\u0627": "tilmilana",
  "\u0628\u0644\u0628\u0644\u0627\u0646\u0627": "bilbilana",
  "\u06A9\u06BE\u0644\u06A9\u06BE\u0644\u0627\u0646\u0627": "khilkhilana",
  "\u06A9\u06BE\u0679\u06A9\u06BE\u0679\u0627\u0646\u0627": "khatkhatana",
  "\u062C\u06BE\u0644\u0645\u0644\u0627\u0646\u0627": "jhilmilana",
  "\u0686\u0645\u0686\u0645\u0627\u062A\u0627": "chamchamata",
  "\u0644\u06C1\u0631\u0627\u0646\u0627": "lehrana",
  "\u0644\u06C1\u0631\u0627\u06CC\u0627": "lehraya",
  "\u0644\u06C1\u0631": "lehar"
};
var ROMAN_VARIANTS = {
  hay: "\u06C1\u06D2",
  he: "\u06C1\u06D2",
  hei: "\u06C1\u06D2",
  hein: "\u06C1\u06CC\u06BA",
  hn: "\u06C1\u06CC\u06BA",
  hain: "\u06C1\u06CC\u06BA",
  hun: "\u06C1\u0648\u06BA",
  hoon: "\u06C1\u0648\u06BA",
  ap: "\u0622\u067E",
  aap: "\u0622\u067E",
  aapko: "\u0622\u067E\u06A9\u0648",
  aapka: "\u0622\u067E\u06A9\u0627",
  aapki: "\u0622\u067E\u06A9\u06CC",
  aapke: "\u0622\u067E\u06A9\u06D2",
  kaise: "\u06A9\u06CC\u0633\u06D2",
  kese: "\u06A9\u06CC\u0633\u06D2",
  kaisey: "\u06A9\u06CC\u0633\u06D2",
  kaisa: "\u06A9\u06CC\u0633\u0627",
  kaisi: "\u06A9\u06CC\u0633\u06CC",
  nam: "\u0646\u0627\u0645",
  naam: "\u0646\u0627\u0645",
  mai: "\u0645\u06CC\u06BA",
  main: "\u0645\u06CC\u06BA",
  me: "\u0645\u06CC\u06BA",
  mein: "\u0645\u06CC\u06BA",
  mujhe: "\u0645\u062C\u06BE\u06D2",
  mujhey: "\u0645\u062C\u06BE\u06D2",
  mjhe: "\u0645\u062C\u06BE\u06D2",
  mjhy: "\u0645\u062C\u06BE\u06D2",
  mj: "\u0645\u062C\u06BE\u06D2",
  humein: "\u06C1\u0645\u06CC\u06BA",
  hume: "\u06C1\u0645\u06CC\u06BA",
  hmein: "\u06C1\u0645\u06CC\u06BA",
  hmain: "\u06C1\u0645\u06CC\u06BA",
  tumhein: "\u062A\u0645\u06C1\u06CC\u06BA",
  tumhe: "\u062A\u0645\u06C1\u06CC\u06BA",
  tumhey: "\u062A\u0645\u06C1\u06CC\u06BA",
  tmhein: "\u062A\u0645\u06C1\u06CC\u06BA",
  tmhe: "\u062A\u0645\u06C1\u06CC\u06BA",
  unhein: "\u0627\u0646\u06C1\u06CC\u06BA",
  unhe: "\u0627\u0646\u06C1\u06CC\u06BA",
  unhey: "\u0627\u0646\u06C1\u06CC\u06BA",
  inhein: "\u0627\u0646\u06C1\u06CC\u06BA",
  inhe: "\u0627\u0646\u06C1\u06CC\u06BA",
  usey: "\u0627\u0633\u06D2",
  usay: "\u0627\u0633\u06D2",
  use: "\u0627\u0633\u06D2",
  isay: "\u0627\u0633\u06D2",
  ise: "\u0627\u0633\u06D2",
  jisay: "\u062C\u0633\u06D2",
  jise: "\u062C\u0633\u06D2",
  kisay: "\u06A9\u0633\u06D2",
  kise: "\u06A9\u0633\u06D2",
  kyu: "\u06A9\u06CC\u0648\u06BA",
  kyn: "\u06A9\u06CC\u0648\u06BA",
  kyo: "\u06A9\u06CC\u0648\u06BA",
  kyun: "\u06A9\u06CC\u0648\u06BA",
  kyoon: "\u06A9\u06CC\u0648\u06BA",
  kaha: "\u06A9\u06C1\u0627\u06BA",
  kahan: "\u06A9\u06C1\u0627\u06BA",
  khn: "\u06A9\u06C1\u0627\u06BA",
  kidhar: "\u06A9\u062F\u06BE\u0631",
  idhar: "\u0627\u062F\u06BE\u0631",
  jidhar: "\u062C\u062F\u06BE\u0631",
  kab: "\u06A9\u0628",
  kya: "\u06A9\u06CC\u0627",
  kia: "\u06A9\u06CC\u0627",
  kiya: "\u06A9\u06CC\u0627",
  kuch: "\u06A9\u0686\u06BE",
  kuchh: "\u06A9\u0686\u06BE",
  kch: "\u06A9\u0686\u06BE",
  bhi: "\u0628\u06BE\u06CC",
  b: "\u0628\u06BE\u06CC",
  nahin: "\u0646\u06C1\u06CC\u06BA",
  nahi: "\u0646\u06C1\u06CC\u06BA",
  nai: "\u0646\u06C1\u06CC\u06BA",
  nhi: "\u0646\u06C1\u06CC\u06BA",
  nahe: "\u0646\u06C1\u06CC\u06BA",
  nhn: "\u0646\u06C1\u06CC\u06BA",
  bahut: "\u0628\u06C1\u062A",
  bhot: "\u0628\u06C1\u062A",
  bohot: "\u0628\u06C1\u062A",
  bohat: "\u0628\u06C1\u062A",
  bht: "\u0628\u06C1\u062A",
  achha: "\u0627\u0686\u06BE\u0627",
  acha: "\u0627\u0686\u06BE\u0627",
  accha: "\u0627\u0686\u06BE\u0627",
  achi: "\u0627\u0686\u06BE\u06CC",
  achhi: "\u0627\u0686\u06BE\u06CC",
  ache: "\u0627\u0686\u06BE\u06D2",
  achay: "\u0627\u0686\u06BE\u06D2",
  shukria: "\u0634\u06A9\u0631\u06CC\u06C1",
  shukriya: "\u0634\u06A9\u0631\u06CC\u06C1",
  thx: "\u0634\u06A9\u0631\u06CC\u06C1",
  thanks: "\u0634\u06A9\u0631\u06CC\u06C1",
  plz: "\u0645\u06C1\u0631\u0628\u0627\u0646\u06CC",
  please: "\u0645\u06C1\u0631\u0628\u0627\u0646\u06CC",
  salaam: "\u0633\u0644\u0627\u0645",
  salam: "\u0633\u0644\u0627\u0645",
  mohabat: "\u0645\u062D\u0628\u062A",
  muhabbat: "\u0645\u062D\u0628\u062A",
  mohabbat: "\u0645\u062D\u0628\u062A",
  pyar: "\u067E\u06CC\u0627\u0631",
  pyaar: "\u067E\u06CC\u0627\u0631",
  zindagi: "\u0632\u0646\u062F\u06AF\u06CC",
  zindgi: "\u0632\u0646\u062F\u06AF\u06CC",
  dost: "\u062F\u0648\u0633\u062A",
  dst: "\u062F\u0648\u0633\u062A",
  khush: "\u062E\u0648\u0634",
  khushi: "\u062E\u0648\u0634",
  theak: "\u0679\u06BE\u06CC\u06A9",
  thik: "\u0679\u06BE\u06CC\u06A9",
  theek: "\u0679\u06BE\u06CC\u06A9",
  bhai: "\u0628\u06BE\u0627\u0626\u06CC",
  bhaiya: "\u0628\u06BE\u0627\u0626\u06CC",
  behen: "\u0628\u06C1\u0646",
  behan: "\u0628\u06C1\u0646",
  baji: "\u0628\u0627\u062C\u06CC",
  api: "\u0622\u067E\u06CC",
  ammi: "\u0627\u0645\u06CC",
  ami: "\u0627\u0645\u06CC",
  abbu: "\u0627\u0628\u0648",
  abu: "\u0627\u0628\u0648",
  paisay: "\u067E\u06CC\u0633\u06D2",
  paise: "\u067E\u06CC\u0633\u06D2",
  paisa: "\u067E\u06CC\u0633\u06C1",
  kaam: "\u06A9\u0627\u0645",
  kam: "\u06A9\u0645",
  ghar: "\u06AF\u06BE\u0631",
  ghr: "\u06AF\u06BE\u0631",
  pehle: "\u067E\u06C1\u0644\u06D2",
  pehlay: "\u067E\u06C1\u0644\u06D2",
  pehly: "\u067E\u06C1\u0644\u06D2",
  baad: "\u0628\u0639\u062F",
  bad: "\u0628\u0639\u062F",
  lekin: "\u0644\u06CC\u06A9\u0646",
  lkn: "\u0644\u06CC\u06A9\u0646",
  magar: "\u0645\u06AF\u0631",
  mgr: "\u0645\u06AF\u0631",
  waqt: "\u0648\u0642\u062A",
  wqt: "\u0648\u0642\u062A",
  zroor: "\u0636\u0631\u0648\u0631",
  zaroor: "\u0636\u0631\u0648\u0631",
  zarur: "\u0636\u0631\u0648\u0631",
  zroori: "\u0636\u0631\u0648\u0631\u06CC",
  zaroori: "\u0636\u0631\u0648\u0631\u06CC",
  chahiye: "\u0686\u0627\u06C1\u06CC\u06D2",
  chahye: "\u0686\u0627\u06C1\u06CC\u06D2",
  chaheye: "\u0686\u0627\u06C1\u06CC\u06D2",
  khuda: "\u062E\u062F\u0627",
  allah: "\u0627\u0644\u0644\u06C1",
  hafiz: "\u062D\u0627\u0641\u0638",
  haafiz: "\u062D\u0627\u0641\u0638",
  khudahafiz: "\u062E\u062F\u0627\u062D\u0627\u0641\u0638",
  // aam is both آم (mango) and عام (common); the fruit is the likelier query.
  aam: "\u0622\u0645",
  hawa: "\u06C1\u0648\u0627",
  // sona is both سونا (to sleep) and سونا (gold) — same spelling, no conflict.
  ho: "\u06C1\u0648",
  hoga: "\u06C1\u0648\u06AF\u0627",
  hogi: "\u06C1\u0648\u06AF\u06CC",
  honge: "\u06C1\u0648\u06BA\u06AF\u06D2",
  karna: "\u06A9\u0631\u0646\u0627",
  krna: "\u06A9\u0631\u0646\u0627",
  karo: "\u06A9\u0631\u0648",
  kro: "\u06A9\u0631\u0648",
  dekhna: "\u062F\u06CC\u06A9\u06BE\u0646\u0627",
  dekho: "\u062F\u06CC\u06A9\u06BE\u0648",
  sunna: "\u0633\u0646\u0646\u0627",
  suno: "\u0633\u0646\u0648",
  samajh: "\u0633\u0645\u062C\u06BE",
  smjh: "\u0633\u0645\u062C\u06BE",
  laikin: "\u0644\u06CC\u06A9\u0646",
  shukr: "\u0634\u06A9\u0631",
  sabr: "\u0635\u0628\u0631",
  dil: "\u062F\u0644",
  kitab: "\u06A9\u062A\u0627\u0628",
  kitaab: "\u06A9\u062A\u0627\u0628",
  school: "\u0633\u06A9\u0648\u0644",
  college: "\u06A9\u0627\u0644\u062C",
  hospital: "\u06C1\u0633\u067E\u062A\u0627\u0644",
  pal: "\u067E\u0644",
  daur: "\u062F\u0648\u0631",
  kurta: "\u06A9\u0631\u062A\u0627",
  haseen: "\u062D\u0633\u06CC\u0646",
  malik: "\u0645\u0644\u06A9",
  kidhr: "\u06A9\u062F\u06BE\u0631",
  idhr: "\u0627\u062F\u06BE\u0631",
  jdhr: "\u062C\u062F\u06BE\u0631",
  thek: "\u0679\u06BE\u06CC\u06A9",
  thk: "\u0679\u06BE\u06CC\u06A9",
  sahi: "\u0635\u062D\u06CC\u062D",
  galat: "\u063A\u0644\u0637",
  ghalat: "\u063A\u0644\u0637",
  sb: "\u0633\u0628",
  hmsha: "\u06C1\u0645\u06CC\u0634\u06C1",
  kbhi: "\u06A9\u0628\u06BE\u06CC",
  aksar: "\u0627\u06A9\u062B\u0631",
  behtareen: "\u0628\u06C1\u062A\u0631\u06CC\u0646",
  zabardast: "\u0632\u0628\u0631\u062F\u0633\u062A",
  shandar: "\u0634\u0627\u0646\u062F\u0627\u0631",
  khoob: "\u062E\u0648\u0628",
  khub: "\u062E\u0648\u0628",
  sharam: "\u0634\u0631\u0645",
  haya: "\u062D\u06CC\u0627",
  ghairat: "\u063A\u06CC\u0631\u062A",
  himmat: "\u06C1\u0645\u062A",
  hosla: "\u062D\u0648\u0635\u0644\u06C1",
  mashaallah: "\u0645\u0627\u0634\u0627\u0621\u0627\u0644\u0644\u06C1",
  inshaallah: "\u0627\u0646\u0634\u0627\u0621\u0627\u0644\u0644\u06C1",
  mashallah: "\u0645\u0627\u0634\u0627\u0621\u0627\u0644\u0644\u06C1",
  inshallah: "\u0627\u0646\u0634\u0627\u0621\u0627\u0644\u0644\u06C1",
  alhamdulillah: "\u0627\u0644\u062D\u0645\u062F\u0644\u0644\u06C1",
  jazakallah: "\u062C\u0632\u0627\u06A9\u200C\u0627\u0644\u0644\u06C1",
  // ---- additional Roman variants for common words ----
  // verbs
  hona: "\u06C1\u0648\u0646\u0627",
  hua: "\u06C1\u0648\u0627",
  hui: "\u06C1\u0648\u0626\u06CC",
  hue: "\u06C1\u0648\u0626\u06D2",
  jana: "\u062C\u0627\u0646\u0627",
  jata: "\u062C\u0627\u062A\u0627",
  jati: "\u062C\u0627\u062A\u06CC",
  gaya: "\u06AF\u06CC\u0627",
  gayi: "\u06AF\u0626\u06CC",
  aana: "\u0622\u0646\u0627",
  aati: "\u0622\u062A\u06CC",
  aaya: "\u0622\u06CC\u0627",
  aayi: "\u0622\u0626\u06CC",
  dena: "\u062F\u06CC\u0646\u0627",
  deta: "\u062F\u06CC\u062A\u0627",
  deti: "\u062F\u06CC\u062A\u06CC",
  diya: "\u062F\u06CC\u0627",
  lena: "\u0644\u06CC\u0646\u0627",
  leta: "\u0644\u06CC\u062A\u0627",
  leti: "\u0644\u06CC\u062A\u06CC",
  liya: "\u0644\u06CC\u0627",
  kehna: "\u06A9\u06C1\u0646\u0627",
  kehta: "\u06A9\u06C1\u062A\u0627",
  kehti: "\u06A9\u06C1\u062A\u06CC",
  dekhta: "\u062F\u06CC\u06A9\u06BE\u062A\u0627",
  dekhti: "\u062F\u06CC\u06A9\u06BE\u062A\u06CC",
  dekha: "\u062F\u06CC\u06A9\u06BE\u0627",
  bolna: "\u0628\u0648\u0644\u0646\u0627",
  bolta: "\u0628\u0648\u0644\u062A\u0627",
  boli: "\u0628\u0648\u0644\u06CC",
  bola: "\u0628\u0648\u0644\u0627",
  padhna: "\u067E\u0691\u06BE\u0646\u0627",
  padhta: "\u067E\u0691\u06BE\u062A\u0627",
  padhti: "\u067E\u0691\u06BE\u062A\u06CC",
  padha: "\u067E\u0691\u06BE\u0627",
  likhna: "\u0644\u06A9\u06BE\u0646\u0627",
  likhta: "\u0644\u06A9\u06BE\u062A\u0627",
  likhti: "\u0644\u06A9\u06BE\u062A\u06CC",
  likha: "\u0644\u06A9\u06BE\u0627",
  samajhna: "\u0633\u0645\u062C\u06BE\u0646\u0627",
  samjha: "\u0633\u0645\u062C\u06BE\u0627",
  chahna: "\u0686\u0627\u06C1\u0646\u0627",
  chahta: "\u0686\u0627\u06C1\u062A\u0627",
  chahti: "\u0686\u0627\u06C1\u062A\u06CC",
  sakna: "\u0633\u06A9\u0646\u0627",
  sakta: "\u0633\u06A9\u062A\u0627",
  sakti: "\u0633\u06A9\u062A\u06CC",
  rehna: "\u0631\u06C1\u0646\u0627",
  rehta: "\u0631\u06C1\u062A\u0627",
  rehti: "\u0631\u06C1\u062A\u06CC",
  raha: "\u0631\u06C1\u0627",
  rahi: "\u0631\u06C1\u06CC",
  banna: "\u0628\u0646\u0646\u0627",
  bana: "\u0628\u0646\u0627",
  banana: "\u0628\u0646\u0627\u0646\u0627",
  banaya: "\u0628\u0646\u0627\u06CC\u0627",
  milna: "\u0645\u0644\u0646\u0627",
  milta: "\u0645\u0644\u062A\u0627",
  milti: "\u0645\u0644\u062A\u06CC",
  mila: "\u0645\u0644\u0627",
  mili: "\u0645\u0644\u06CC",
  khata: "\u06A9\u06BE\u0627\u062A\u0627",
  khati: "\u06A9\u06BE\u0627\u062A\u06CC",
  khaya: "\u06A9\u06BE\u0627\u06CC\u0627",
  peena: "\u067E\u06CC\u0646\u0627",
  peeta: "\u067E\u06CC\u062A\u0627",
  piya: "\u067E\u06CC\u0627",
  sota: "\u0633\u0648\u062A\u0627",
  soti: "\u0633\u0648\u062A\u06CC",
  soya: "\u0633\u0648\u06CC\u0627",
  uthna: "\u0627\u0679\u06BE\u0646\u0627",
  utha: "\u0627\u0679\u06BE\u0627",
  baithna: "\u0628\u06CC\u0679\u06BE\u0646\u0627",
  baitha: "\u0628\u06CC\u0679\u06BE\u0627",
  chalta: "\u0686\u0644\u062A\u0627",
  chalti: "\u0686\u0644\u062A\u06CC",
  chala: "\u0686\u0644\u0627",
  rakhna: "\u0631\u06A9\u06BE\u0646\u0627",
  rakha: "\u0631\u06A9\u06BE\u0627",
  maangna: "\u0645\u0627\u0646\u06AF\u0646\u0627",
  manga: "\u0645\u0627\u0646\u06AF\u0627",
  puchna: "\u067E\u0648\u0686\u06BE\u0646\u0627",
  poocha: "\u067E\u0648\u0686\u06BE\u0627",
  batana: "\u0628\u062A\u0627\u0646\u0627",
  bataya: "\u0628\u062A\u0627\u06CC\u0627",
  kholna: "\u06A9\u06BE\u0648\u0644\u0646\u0627",
  khola: "\u06A9\u06BE\u0648\u0644\u0627",
  marna: "\u0645\u0631\u0646\u0627",
  mara: "\u0645\u0631\u0627",
  jeetna: "\u062C\u06CC\u062A\u0646\u0627",
  jeeta: "\u062C\u06CC\u062A\u0627",
  haarna: "\u06C1\u0627\u0631\u0646\u0627",
  haara: "\u06C1\u0627\u0631\u0627",
  badalna: "\u0628\u062F\u0644\u0646\u0627",
  badla: "\u0628\u062F\u0644\u0627",
  rukna: "\u0631\u06A9\u0646\u0627",
  rokna: "\u0631\u0648\u06A9\u0646\u0627",
  roka: "\u0631\u0648\u06A9\u0627",
  khelna: "\u06A9\u06BE\u06CC\u0644\u0646\u0627",
  khela: "\u06A9\u06BE\u06CC\u0644\u0627",
  hansna: "\u06C1\u0646\u0633\u0646\u0627",
  hansa: "\u06C1\u0646\u0633\u0627",
  rona: "\u0631\u0648\u0646\u0627",
  roya: "\u0631\u0648\u06CC\u0627",
  darna: "\u0688\u0631\u0646\u0627",
  dara: "\u0688\u0631\u0627",
  bhoolna: "\u0628\u06BE\u0648\u0644\u0646\u0627",
  bhoola: "\u0628\u06BE\u0648\u0644\u0627",
  seekhna: "\u0633\u06CC\u06A9\u06BE\u0646\u0627",
  seekha: "\u0633\u06CC\u06A9\u06BE\u0627",
  sikhana: "\u0633\u06A9\u06BE\u0627\u0646\u0627",
  sikhaya: "\u0633\u06A9\u06BE\u0627\u06CC\u0627",
  dhona: "\u062F\u06BE\u0648\u0646\u0627",
  dhoya: "\u062F\u06BE\u0648\u06CC\u0627",
  pehanna: "\u067E\u06C1\u0646\u0646\u0627",
  pehna: "\u067E\u06C1\u0646\u0627",
  bechna: "\u0628\u06CC\u0686\u0646\u0627",
  becha: "\u0628\u06CC\u0686\u0627",
  khareedna: "\u062E\u0631\u06CC\u062F\u0646\u0627",
  khareeda: "\u062E\u0631\u06CC\u062F\u0627",
  bhejna: "\u0628\u06BE\u06CC\u062C\u0646\u0627",
  bheja: "\u0628\u06BE\u06CC\u062C\u0627",
  nikalna: "\u0646\u06A9\u0644\u0646\u0627",
  nikla: "\u0646\u06A9\u0644\u0627",
  girna: "\u06AF\u0631\u0646\u0627",
  gira: "\u06AF\u0631\u0627",
  pakarna: "\u067E\u06A9\u0691\u0646\u0627",
  pakra: "\u067E\u06A9\u0691\u0627",
  chhorna: "\u0686\u06BE\u0648\u0691\u0646\u0627",
  chhora: "\u0686\u06BE\u0648\u0691\u0627",
  torna: "\u062A\u0648\u0691\u0646\u0627",
  tora: "\u062A\u0648\u0691\u0627",
  katna: "\u06A9\u0627\u0679\u0646\u0627",
  kata: "\u06A9\u0627\u0679\u0627",
  daalna: "\u0688\u0627\u0644\u0646\u0627",
  dala: "\u0688\u0627\u0644\u0627",
  manna: "\u0645\u0627\u0646\u0646\u0627",
  mana: "\u0645\u0627\u0646\u0627",
  bulana: "\u0628\u0644\u0627\u0646\u0627",
  bulaya: "\u0628\u0644\u0627\u06CC\u0627",
  dikhana: "\u062F\u06A9\u06BE\u0627\u0646\u0627",
  dikhaya: "\u062F\u06A9\u06BE\u0627\u06CC\u0627",
  phenkna: "\u067E\u06BE\u06CC\u0646\u06A9\u0646\u0627",
  phenka: "\u067E\u06BE\u06CC\u0646\u06A9\u0627",
  letna: "\u0644\u06CC\u0679\u0646\u0627",
  jagna: "\u062C\u0627\u06AF\u0646\u0627",
  lautna: "\u0644\u0648\u0679\u0646\u0627",
  guzarna: "\u06AF\u0632\u0627\u0631\u0646\u0627",
  kamana: "\u06A9\u0645\u0627\u0646\u0627",
  kamaya: "\u06A9\u0645\u0627\u06CC\u0627",
  ginna: "\u06AF\u0646\u0646\u0627",
  bandhna: "\u0628\u0627\u0646\u062F\u06BE\u0646\u0627",
  bandha: "\u0628\u0627\u0646\u062F\u06BE\u0627",
  bharna: "\u0628\u06BE\u0631\u0646\u0627",
  bhara: "\u0628\u06BE\u0631\u0627",
  doobna: "\u0688\u0648\u0628\u0646\u0627",
  chamakna: "\u0686\u0645\u06A9\u0646\u0627",
  ghoomna: "\u06AF\u06BE\u0648\u0645\u0646\u0627",
  phirna: "\u067E\u06BE\u0631\u0646\u0627",
  phailna: "\u067E\u06BE\u06CC\u0644\u0646\u0627",
  // nouns
  insaan: "\u0627\u0646\u0633\u0627\u0646",
  larka: "\u0644\u0691\u06A9\u0627",
  larki: "\u0644\u0691\u06A9\u06CC",
  bacha: "\u0628\u0686\u06C1",
  bachi: "\u0628\u0686\u06CC",
  maan: "\u0645\u0627\u06BA",
  baap: "\u0628\u0627\u067E",
  beta: "\u0628\u06CC\u0679\u0627",
  beti: "\u0628\u06CC\u0679\u06CC",
  dushman: "\u062F\u0634\u0645\u0646",
  makaan: "\u0645\u06A9\u0627\u0646",
  kamra: "\u06A9\u0645\u0631\u06C1",
  darwaza: "\u062F\u0631\u0648\u0627\u0632\u06C1",
  khirki: "\u06A9\u06BE\u0691\u06A9\u06CC",
  chhat: "\u0686\u06BE\u062A",
  deewar: "\u062F\u06CC\u0648\u0627\u0631",
  farsh: "\u0641\u0631\u0634",
  qalam: "\u0642\u0644\u0645",
  kaghaz: "\u06A9\u0627\u063A\u0630",
  mez: "\u0645\u06CC\u0632",
  kursi: "\u06A9\u0631\u0633\u06CC",
  almari: "\u0627\u0644\u0645\u0627\u0631\u06CC",
  palang: "\u067E\u0644\u0646\u06AF",
  bistar: "\u0628\u0633\u062A\u0631",
  parda: "\u067E\u0631\u062F\u06C1",
  qaleen: "\u0642\u0627\u0644\u06CC\u0646",
  bartan: "\u0628\u0631\u062A\u0646",
  chamach: "\u0686\u0645\u0686",
  plate: "\u067E\u0644\u06CC\u0679",
  pyali: "\u067E\u06CC\u0627\u0644\u06CC",
  cup: "\u06A9\u067E",
  glass: "\u06AF\u0644\u0627\u0633",
  botal: "\u0628\u0648\u062A\u0644",
  dabba: "\u0688\u0628\u06C1",
  jharoo: "\u062C\u06BE\u0627\u0691\u0648",
  sabun: "\u0635\u0627\u0628\u0646",
  aaina: "\u0622\u0626\u06CC\u0646\u06C1",
  sheesha: "\u0634\u06CC\u0634\u06C1",
  kanghi: "\u06A9\u0646\u06AF\u06BE\u06CC",
  sui: "\u0633\u0648\u0626\u06CC",
  qainchi: "\u0642\u06CC\u0646\u0686\u06CC",
  tala: "\u062A\u0627\u0644\u0627",
  chabi: "\u0686\u0627\u0628\u06CC",
  ghari: "\u06AF\u06BE\u0691\u06CC",
  topi: "\u0679\u0648\u067E\u06CC",
  pagri: "\u067E\u06AF\u0691\u06CC",
  qameez: "\u0642\u0645\u06CC\u0636",
  shalwar: "\u0634\u0644\u0648\u0627\u0631",
  pajama: "\u067E\u0627\u062C\u0627\u0645\u06C1",
  pant: "\u067E\u06CC\u0646\u0679",
  shirt: "\u0634\u0631\u0679",
  coat: "\u06A9\u0648\u0679",
  shawl: "\u0634\u0627\u0644",
  dupatta: "\u062F\u0648\u067E\u0679\u06C1",
  joota: "\u062C\u0648\u062A\u0627",
  chappal: "\u0686\u067E\u0644",
  sandal: "\u0635\u0646\u062F\u0644",
  kapra: "\u06A9\u067E\u0691\u0627",
  doodh: "\u062F\u0648\u062F\u06BE",
  dahi: "\u062F\u06C1\u06CC",
  ghee: "\u06AF\u06BE\u06CC",
  chai: "\u0686\u0627\u0626\u06D2",
  qehwa: "\u0642\u06C1\u0648\u06C1",
  coffee: "\u06A9\u0627\u0641\u06CC",
  lassi: "\u0644\u0633\u06CC",
  juice: "\u062C\u0648\u0633",
  roti: "\u0631\u0648\u0679\u06CC",
  naan: "\u0646\u0627\u0646",
  paratha: "\u067E\u0631\u0627\u0679\u06BE\u0627",
  chawal: "\u0686\u0627\u0648\u0644",
  biryani: "\u0628\u0631\u06CC\u0627\u0646\u06CC",
  pulao: "\u067E\u0644\u0627\u0624",
  salan: "\u0633\u0627\u0644\u0646",
  qorma: "\u0642\u0648\u0631\u0645\u06C1",
  nihari: "\u0646\u06C1\u0627\u0631\u06CC",
  haleem: "\u062D\u0644\u06CC\u0645",
  kabab: "\u06A9\u0628\u0627\u0628",
  tikka: "\u062A\u06A9\u06C1",
  samosa: "\u0633\u0645\u0648\u0633\u06C1",
  daal: "\u062F\u0627\u0644",
  gosht: "\u06AF\u0648\u0634\u062A",
  qeema: "\u0642\u06CC\u0645\u06C1",
  murghi: "\u0645\u0631\u063A\u06CC",
  machhli: "\u0645\u0686\u06BE\u0644\u06CC",
  anda: "\u0627\u0646\u0688\u0627",
  sabzi: "\u0633\u0628\u0632\u06CC",
  maida: "\u0645\u06CC\u062F\u06C1",
  namak: "\u0646\u0645\u06A9",
  cheeni: "\u0686\u06CC\u0646\u06CC",
  mirch: "\u0645\u0631\u0686",
  haldi: "\u06C1\u0644\u062F\u06CC",
  dhaniya: "\u062F\u06BE\u0646\u06CC\u0627",
  zeera: "\u0632\u06CC\u0631\u06C1",
  lehsun: "\u0644\u06C1\u0633\u0646",
  adrak: "\u0627\u062F\u0631\u06A9",
  pyaz: "\u067E\u06CC\u0627\u0632",
  tamatar: "\u0679\u0645\u0627\u0679\u0631",
  aloo: "\u0622\u0644\u0648",
  gajar: "\u06AF\u0627\u062C\u0631",
  matar: "\u0645\u0679\u0631",
  palak: "\u067E\u0627\u0644\u06A9",
  gobhi: "\u06AF\u0648\u0628\u06BE\u06CC",
  bhindi: "\u0628\u06BE\u0646\u0688\u06CC",
  karela: "\u06A9\u0631\u06CC\u0644\u0627",
  kaddu: "\u06A9\u062F\u0648",
  kheera: "\u06A9\u06BE\u06CC\u0631\u0627",
  phal: "\u067E\u06BE\u0644",
  saib: "\u0633\u06CC\u0628",
  kela: "\u06A9\u06CC\u0644\u0627",
  angoor: "\u0627\u0646\u06AF\u0648\u0631",
  anar: "\u0627\u0646\u0627\u0631",
  amrood: "\u0627\u0645\u0631\u0648\u062F",
  tarbooz: "\u062A\u0631\u0628\u0648\u0632",
  badam: "\u0628\u0627\u062F\u0627\u0645",
  pista: "\u067E\u0633\u062A\u06C1",
  kaju: "\u06A9\u0627\u062C\u0648",
  kheer: "\u06A9\u06BE\u06CC\u0631",
  halwa: "\u062D\u0644\u0648\u06C1",
  zarda: "\u0632\u0631\u062F\u06C1",
  jalebi: "\u062C\u0644\u06CC\u0628\u06CC",
  kulfi: "\u06A9\u0644\u0641\u06CC",
  cake: "\u06A9\u06CC\u06A9",
  chocolate: "\u0686\u0627\u06A9\u0644\u06CC\u0679",
  mithai: "\u0645\u0679\u06BE\u0627\u0626\u06CC",
  salad: "\u0633\u0644\u0627\u062F",
  raita: "\u0631\u0627\u0626\u062A\u06C1",
  chatni: "\u0686\u0679\u0646\u06CC",
  achaar: "\u0627\u0686\u0627\u0631",
  dimagh: "\u062F\u0645\u0627\u063A",
  jism: "\u062C\u0633\u0645",
  sar: "\u0633\u0631",
  aankh: "\u0622\u0646\u06A9\u06BE",
  aankhein: "\u0622\u0646\u06A9\u06BE\u06CC\u06BA",
  kaan: "\u06A9\u0627\u0646",
  naak: "\u0646\u0627\u06A9",
  munh: "\u0645\u0646\u06C1",
  daant: "\u062F\u0627\u0646\u062A",
  zuban: "\u0632\u0628\u0627\u0646",
  gala: "\u06AF\u0644\u0627",
  gardan: "\u06AF\u0631\u062F\u0646",
  kandha: "\u06A9\u0646\u062F\u06BE\u0627",
  bazu: "\u0628\u0627\u0632\u0648",
  hath: "\u06C1\u0627\u062A\u06BE",
  ungli: "\u0627\u0646\u06AF\u0644\u06CC",
  seena: "\u0633\u06CC\u0646\u06C1",
  pet: "\u067E\u06CC\u0679",
  kamar: "\u06A9\u0645\u0631",
  taang: "\u0679\u0627\u0646\u06AF",
  paon: "\u067E\u0627\u0624\u06BA",
  haddi: "\u06C1\u0688\u06CC",
  khoon: "\u062E\u0648\u0646",
  jild: "\u062C\u0644\u062F",
  baal: "\u0628\u0627\u0644",
  chehra: "\u0686\u06C1\u0631\u06C1",
  sehat: "\u0635\u062D\u062A",
  beemari: "\u0628\u06CC\u0645\u0627\u0631\u06CC",
  dard: "\u062F\u0631\u062F",
  ilaj: "\u0639\u0644\u0627\u062C",
  dawa: "\u062F\u0648\u0627",
  goli: "\u06AF\u0648\u0644\u06CC",
  ishq: "\u0639\u0634\u0642",
  nafrat: "\u0646\u0641\u0631\u062A",
  gham: "\u063A\u0645",
  dukh: "\u062F\u06A9\u06BE",
  ummeed: "\u0627\u0645\u06CC\u062F",
  yaqeen: "\u06CC\u0642\u06CC\u0646",
  sach: "\u0633\u0686",
  jhoot: "\u062C\u06BE\u0648\u0679",
  insaf: "\u0627\u0646\u0635\u0627\u0641",
  zulm: "\u0638\u0644\u0645",
  izzat: "\u0639\u0632\u062A",
  dua: "\u062F\u0639\u0627",
  khwab: "\u062E\u0648\u0627\u0628",
  khayal: "\u062E\u06CC\u0627\u0644",
  maut: "\u0645\u0648\u062A",
  taqat: "\u0637\u0642\u062A",
  koshish: "\u06A9\u0648\u0634\u0634",
  kamyabi: "\u06A9\u0627\u0645\u06CC\u0627\u0628\u06CC",
  nakami: "\u0646\u0627\u06A9\u0627\u0645\u06CC",
  faisla: "\u0641\u06CC\u0635\u0644\u06C1",
  ghussa: "\u063A\u0635\u06C1",
  akhlaq: "\u0627\u062E\u0644\u0627\u0642",
  wafa: "\u0648\u0641\u0627",
  dosti: "\u062F\u0648\u0633\u062A\u06CC",
  sakoon: "\u0633\u06A9\u0648\u0646",
  ilm: "\u0639\u0644\u0645",
  taleem: "\u062A\u0639\u0644\u06CC\u0645",
  sabaq: "\u0633\u0628\u0642",
  imtihan: "\u0627\u0645\u062A\u062D\u0627\u0646",
  masla: "\u0645\u0633\u0626\u0644\u06C1",
  sawal: "\u0633\u0648\u0627\u0644",
  jawab: "\u062C\u0648\u0627\u0628",
  lafz: "\u0644\u0641\u0638",
  jumla: "\u062C\u0645\u0644\u06C1",
  maani: "\u0645\u0639\u0646\u06CC",
  matlab: "\u0645\u0637\u0644\u0628",
  khabar: "\u062E\u0628\u0631",
  akhbar: "\u0627\u062E\u0628\u0627\u0631",
  kahani: "\u06A9\u06C1\u0627\u0646\u06CC",
  qissa: "\u0642\u0635\u06C1",
  dastan: "\u062F\u0627\u0633\u062A\u0627\u0646",
  novel: "\u0646\u0627\u0648\u0644",
  mazmoon: "\u0645\u0636\u0645\u0648\u0646",
  ghazal: "\u063A\u0632\u0644",
  nazm: "\u0646\u0638\u0645",
  adab: "\u0627\u062F\u0628",
  tareekh: "\u062A\u0627\u0631\u06CC\u062E",
  science: "\u0633\u0627\u0626\u0646\u0633",
  falsafa: "\u0641\u0644\u0633\u0641\u06C1",
  saqafat: "\u062B\u0642\u0627\u0641\u062A",
  tehzeeb: "\u062A\u06C1\u0630\u06CC\u0628",
  moseeqi: "\u0645\u0648\u0633\u06CC\u0642\u06CC",
  tasweer: "\u062A\u0635\u0648\u06CC\u0631",
  rang: "\u0631\u0646\u06AF",
  awaz: "\u0622\u0648\u0627\u0632",
  khamoshi: "\u062E\u0627\u0645\u0648\u0634\u06CC",
  namaz: "\u0646\u0645\u0627\u0632",
  roza: "\u0631\u0648\u0632\u06C1",
  hajj: "\u062D\u062C",
  eid: "\u0639\u06CC\u062F",
  qurbani: "\u0642\u0631\u0628\u0627\u0646\u06CC",
  mazhab: "\u0645\u0630\u06C1\u0628",
  rasool: "\u0631\u0633\u0648\u0644",
  nabi: "\u0646\u0628\u06CC",
  quran: "\u0642\u0631\u0622\u0646",
  hadees: "\u062D\u062F\u06CC\u062B",
  deen: "\u062F\u06CC\u0646",
  imaan: "\u0627\u06CC\u0645\u0627\u0646",
  jannat: "\u062C\u0646\u062A",
  dozakh: "\u062F\u0648\u0632\u062E",
  farishta: "\u0641\u0631\u0634\u062A\u06C1",
  qayamat: "\u0642\u06CC\u0627\u0645\u062A",
  ibadat: "\u0639\u0628\u0627\u062F\u062A",
  gunah: "\u06AF\u0646\u0627\u06C1",
  rehmat: "\u0631\u062D\u0645\u062A",
  barkat: "\u0628\u0631\u06A9\u062A",
  naiki: "\u0646\u06CC\u06A9\u06CC",
  siyasat: "\u0633\u06CC\u0627\u0633\u062A",
  election: "\u0627\u0644\u06CC\u06A9\u0634\u0646",
  intikhab: "\u0627\u0646\u062A\u062E\u0627\u0628",
  vote: "\u0648\u0648\u0679",
  party: "\u067E\u0627\u0631\u0679\u06CC",
  jamaat: "\u062C\u0645\u0627\u0639\u062A",
  qanoon: "\u0642\u0627\u0646\u0648\u0646",
  dastoor: "\u062F\u0633\u062A\u0648\u0631",
  hukumat: "\u062D\u06A9\u0648\u0645\u062A",
  jurm: "\u062C\u0631\u0645",
  mujrim: "\u0645\u062C\u0631\u0645",
  saza: "\u0633\u0632\u0627",
  fauj: "\u0641\u0648\u062C",
  jang: "\u062C\u0646\u06AF",
  larai: "\u0644\u0691\u0627\u0626\u06CC",
  aman: "\u0627\u0645\u0646",
  sulah: "\u0635\u0644\u062D",
  tijarat: "\u062A\u062C\u0627\u0631\u062A",
  karobar: "\u06A9\u0627\u0631\u0648\u0628\u0627\u0631",
  sanat: "\u0635\u0646\u0639\u062A",
  taraqqi: "\u062A\u0631\u0642\u06CC",
  report: "\u0631\u067E\u0648\u0631\u0679",
  conference: "\u06A9\u0627\u0646\u0641\u0631\u0646\u0633",
  taqreer: "\u062A\u0642\u0631\u06CC\u0631",
  aasman: "\u0622\u0633\u0645\u0627\u0646",
  zameen: "\u0632\u0645\u06CC\u0646",
  sooraj: "\u0633\u0648\u0631\u062C",
  sitara: "\u0633\u062A\u0627\u0631\u06C1",
  pahaar: "\u067E\u06C1\u0627\u0691",
  nadi: "\u0646\u062F\u06CC",
  darya: "\u062F\u0631\u06CC\u0627",
  samundar: "\u0633\u0645\u0646\u062F\u0631",
  jungle: "\u062C\u0646\u06AF\u0644",
  bagh: "\u0628\u0627\u063A",
  phool: "\u067E\u06BE\u0648\u0644",
  darakht: "\u062F\u0631\u062E\u062A",
  pattay: "\u067E\u062A\u0651\u06D2",
  machli: "\u0645\u0686\u06BE\u0644\u06CC",
  parinday: "\u067E\u0631\u0646\u062F\u06D2",
  kutta: "\u06A9\u062A\u0627",
  billi: "\u0628\u0644\u06CC",
  ghora: "\u06AF\u06BE\u0648\u0691\u0627",
  gaay: "\u06AF\u0627\u0626\u06D2",
  bhains: "\u0628\u06BE\u06CC\u0633",
  bakra: "\u0628\u06A9\u0631\u0627",
  mendha: "\u0645\u06CC\u0688\u06BE\u0627",
  khargosh: "\u062E\u0631\u06AF\u0648\u0634",
  saanp: "\u0633\u0627\u0646\u067E",
  cheel: "\u0686\u06CC\u0644",
  kabootar: "\u06A9\u0628\u0648\u062A\u0631",
  tota: "\u062A\u0648\u062A\u0627",
  ullu: "\u0627\u0644\u0648",
  chuha: "\u0686\u0648\u06C1\u0627"
};

// src/transliterate.ts
var DIGRAPHS = {
  "\u0628\u06BE": "bh",
  "\u067E\u06BE": "ph",
  "\u062A\u06BE": "th",
  "\u0679\u06BE": "th",
  "\u062C\u06BE": "jh",
  "\u0686\u06BE": "chh",
  "\u062F\u06BE": "dh",
  "\u0688\u06BE": "dh",
  "\u0691\u06BE": "rh",
  "\u06A9\u06BE": "kh",
  "\u06AF\u06BE": "gh",
  "\u0644\u06BE": "lh",
  "\u0645\u06BE": "mh",
  "\u0646\u06BE": "nh",
  "\u0631\u06BE": "rh"
};
var LETTERS = {};
var VOWEL_LETTERS = /* @__PURE__ */ new Set();
for (const { ch, roman, vowel } of URDU_LETTERS) {
  LETTERS[ch] = roman;
  if (vowel) VOWEL_LETTERS.add(ch);
}
function romanizeWord(word) {
  const dictionary = WORD_DICTIONARY[word];
  if (dictionary) return dictionary;
  const chars = [...word];
  const pieces = [];
  for (let i = 0; i < chars.length; i++) {
    const last = i === chars.length - 1;
    const pair = chars[i] + (chars[i + 1] ?? "");
    const digraph = DIGRAPHS[pair];
    if (digraph) {
      pieces.push({ text: digraph, vowel: false });
      i++;
      continue;
    }
    const ch = chars[i];
    if (i === 0 && ch === "\u0627") {
      const next = chars[1];
      if (next === "\u0648") {
        pieces.push({ text: "o", vowel: true });
        i++;
        continue;
      }
      if (next === "\u06CC") {
        pieces.push({ text: "i", vowel: true });
        i++;
        continue;
      }
      pieces.push({ text: "a", vowel: true });
      continue;
    }
    if (i === 0 && ch === "\u0648") {
      pieces.push({ text: "w", vowel: false });
      continue;
    }
    if (i === 0 && ch === "\u06CC") {
      pieces.push({ text: "y", vowel: false });
      continue;
    }
    if (last && ch === "\u06C1" && pieces.length > 0) {
      pieces.push({ text: "a", vowel: true });
      continue;
    }
    if (ch === "\u06CC" && chars[i + 1] === "\u06BA" && i + 1 === chars.length - 1) {
      pieces.push({ text: "ein", vowel: true });
      i++;
      continue;
    }
    if (ch === "\u06CC" && !last) {
      pieces.push({ text: "e", vowel: true });
      continue;
    }
    pieces.push({ text: LETTERS[ch] ?? ch, vowel: VOWEL_LETTERS.has(ch) });
  }
  if (pieces.length > 2 && !pieces[0].vowel && !pieces[1].vowel) {
    pieces.splice(1, 0, { text: "a", vowel: true });
  }
  const out = pieces.map((p) => p.text).join("");
  return out;
}
function romanize(input, options = {}) {
  if (!input) return "";
  const clean = removeDiacritics(normalizeUrdu(input));
  const roman = clean.split(/(\s+)/u).map((chunk) => /^\s+$/u.test(chunk) ? chunk : romanizeWord(chunk)).join("");
  if (!options.capitalize) return roman;
  return roman.charAt(0).toUpperCase() + roman.slice(1);
}
var ROMAN_DICTIONARY = {};
for (const [urduWord, roman] of Object.entries(WORD_DICTIONARY)) {
  ROMAN_DICTIONARY[roman] = urduWord;
}
Object.assign(ROMAN_DICTIONARY, ROMAN_VARIANTS);
var ROMAN_RULES = [
  [/^kh/u, "\u06A9\u06BE"],
  [/^gh/u, "\u06AF\u06BE"],
  [/^chh/u, "\u0686\u06BE"],
  [/^ch/u, "\u0686"],
  [/^sh/u, "\u0634"],
  [/^th/u, "\u062A\u06BE"],
  [/^ph/u, "\u067E\u06BE"],
  [/^bh/u, "\u0628\u06BE"],
  [/^aa/u, "\u0622"],
  [/^oo/u, "\u0648"],
  [/^ee/u, "\u06CC"],
  [/^ai/u, "\u06CC"],
  [/^b/u, "\u0628"],
  [/^p/u, "\u067E"],
  [/^t/u, "\u062A"],
  [/^j/u, "\u062C"],
  [/^d/u, "\u062F"],
  [/^r/u, "\u0631"],
  [/^z/u, "\u0632"],
  [/^s/u, "\u0633"],
  [/^f/u, "\u0641"],
  [/^q/u, "\u0642"],
  [/^k/u, "\u06A9"],
  [/^g/u, "\u06AF"],
  [/^l/u, "\u0644"],
  [/^m/u, "\u0645"],
  [/^n/u, "\u0646"],
  [/^v|^w/u, "\u0648"],
  [/^h/u, "\u06C1"],
  [/^y/u, "\u06CC"],
  [/^a/u, "\u0627"],
  [/^e/u, "\u06CC"],
  [/^i/u, "\u06CC"],
  [/^o/u, "\u0648"],
  [/^u/u, "\u0648"]
];
function romanWordToUrdu(word) {
  const lower = word.toLowerCase();
  const dictionary = ROMAN_DICTIONARY[lower];
  if (dictionary) return dictionary;
  let rest = lower;
  let out = "";
  let position = 0;
  while (rest.length > 0) {
    let matched = false;
    for (const [pattern, replacement] of ROMAN_RULES) {
      const hit = pattern.exec(rest);
      if (!hit) continue;
      const isShortVowel = /^[aeiou]$/u.test(hit[0]);
      const skip = isShortVowel && position > 0 && rest.length > 1;
      if (!skip) out += replacement;
      rest = rest.slice(hit[0].length);
      position++;
      matched = true;
      break;
    }
    if (!matched) {
      out += rest[0];
      rest = rest.slice(1);
      position++;
    }
  }
  return out;
}
function romanToUrdu(input) {
  if (!input) return "";
  return input.split(/(\s+)/u).map((chunk) => /^\s+$/u.test(chunk) ? chunk : romanWordToUrdu(chunk)).join("");
}
function urduSlug(input, options = {}) {
  const { separator = "-", maxLength, preserveUrdu = false } = options;
  if (!input) return "";
  const words = splitWords(removeDiacritics(normalizeUrdu(input)));
  const parts = preserveUrdu ? words : words.map(romanizeWord);
  const allowed = preserveUrdu ? /[^\p{L}\p{N}]+/gu : /[^a-z0-9]+/gu;
  let slug = parts.map((part) => part.toLowerCase().replace(allowed, " ").trim()).flatMap((part) => part.split(/\s+/u)).filter((part) => part.length > 0).join(separator);
  if (maxLength && slug.length > maxLength) {
    slug = slug.slice(0, maxLength);
    const lastSeparator = slug.lastIndexOf(separator);
    if (lastSeparator > 0) slug = slug.slice(0, lastSeparator);
  }
  return slug;
}

// src/date.ts
var URDU_MONTHS_GREGORIAN = [
  "\u062C\u0646\u0648\u0631\u06CC",
  "\u0641\u0631\u0648\u0631\u06CC",
  "\u0645\u0627\u0631\u0686",
  "\u0627\u067E\u0631\u06CC\u0644",
  "\u0645\u0626\u06CC",
  "\u062C\u0648\u0646",
  "\u062C\u0648\u0644\u0627\u0626\u06CC",
  "\u0627\u06AF\u0633\u062A",
  "\u0633\u062A\u0645\u0628\u0631",
  "\u0627\u06A9\u062A\u0648\u0628\u0631",
  "\u0646\u0648\u0645\u0628\u0631",
  "\u062F\u0633\u0645\u0628\u0631"
];
var URDU_MONTHS_HIJRI = [
  "\u0645\u062D\u0631\u0645",
  "\u0635\u0641\u0631",
  "\u0631\u0628\u06CC\u0639 \u0627\u0644\u0627\u0648\u0644",
  "\u0631\u0628\u06CC\u0639 \u0627\u0644\u062B\u0627\u0646\u06CC",
  "\u062C\u0645\u0627\u062F\u06CC \u0627\u0644\u0627\u0648\u0644",
  "\u062C\u0645\u0627\u062F\u06CC \u0627\u0644\u062B\u0627\u0646\u06CC",
  "\u0631\u062C\u0628",
  "\u0634\u0639\u0628\u0627\u0646",
  "\u0631\u0645\u0636\u0627\u0646 \u0627\u0644\u0645\u0628\u0627\u0631\u06A9",
  "\u0634\u0648\u0627\u0644",
  "\u0630\u06CC \u0627\u0644\u0642\u0639\u062F\u06C1",
  "\u0630\u06CC \u0627\u0644\u062D\u062C\u06C1"
];
var URDU_WEEKDAYS = [
  "\u0627\u062A\u0648\u0627\u0631",
  "\u067E\u06CC\u0631",
  "\u0645\u0646\u06AF\u0644",
  "\u0628\u062F\u06BE",
  "\u062C\u0645\u0639\u0631\u0627\u062A",
  "\u062C\u0645\u0639\u06C1",
  "\u06C1\u0641\u062A\u06C1"
];
function parseDateInput(input) {
  if (input instanceof Date) {
    return isNaN(input.getTime()) ? null : input;
  }
  const date = new Date(input);
  return isNaN(date.getTime()) ? null : date;
}
function getUrduMonthName(monthIndex, calendar = "gregorian") {
  const normalizedIndex = Math.floor(monthIndex) % 12;
  const idx = normalizedIndex < 0 ? normalizedIndex + 12 : normalizedIndex;
  return calendar === "hijri" ? URDU_MONTHS_HIJRI[idx] : URDU_MONTHS_GREGORIAN[idx];
}
function getUrduWeekdayName(dayIndex) {
  const normalizedIndex = Math.floor(dayIndex) % 7;
  const idx = normalizedIndex < 0 ? normalizedIndex + 7 : normalizedIndex;
  return URDU_WEEKDAYS[idx];
}
function formatUrduDate(date, pattern = "DD MMMM YYYY", options = {}) {
  const d = parseDateInput(date);
  if (!d) return "";
  const digits = options.digits ?? "urdu";
  const calendar = options.calendar ?? "gregorian";
  const year = d.getFullYear();
  const month = d.getMonth();
  const dayOfMonth = d.getDate();
  const dayOfWeek = d.getDay();
  const hours24 = d.getHours();
  const hours12 = hours24 % 12 || 12;
  const minutes = d.getMinutes();
  const seconds = d.getSeconds();
  const pad = (n) => n < 10 ? `0${n}` : `${n}`;
  let periodDetailed;
  let periodSimple;
  if (hours24 >= 4 && hours24 < 12) {
    periodDetailed = "\u0635\u0628\u062D";
    periodSimple = "\u0635\u0628\u062D";
  } else if (hours24 >= 12 && hours24 < 16) {
    periodDetailed = "\u062F\u0648\u067E\u06C1\u0631";
    periodSimple = "\u0634\u0627\u0645";
  } else if (hours24 >= 16 && hours24 < 20) {
    periodDetailed = "\u0634\u0627\u0645";
    periodSimple = "\u0634\u0627\u0645";
  } else {
    periodDetailed = "\u0631\u0627\u062A";
    periodSimple = "\u0631\u0627\u062A";
  }
  const tokenValues = {
    YYYY: `${year}`,
    YY: `${year}`.slice(-2),
    MMMM: getUrduMonthName(month, calendar),
    MMM: getUrduMonthName(month, calendar),
    MM: pad(month + 1),
    M: `${month + 1}`,
    DD: pad(dayOfMonth),
    D: `${dayOfMonth}`,
    dddd: getUrduWeekdayName(dayOfWeek),
    ddd: getUrduWeekdayName(dayOfWeek),
    HH: pad(hours24),
    H: `${hours24}`,
    hh: pad(hours12),
    h: `${hours12}`,
    mm: pad(minutes),
    m: `${minutes}`,
    ss: pad(seconds),
    s: `${seconds}`,
    A: periodDetailed,
    a: periodSimple
  };
  const regex = /YYYY|YY|MMMM|MMM|MM|M|DD|D|dddd|ddd|HH|H|hh|h|mm|m|ss|s|A|a/g;
  const result = pattern.replace(regex, (match) => {
    const val = tokenValues[match];
    if (val === void 0) return match;
    if (digits === "urdu" && /^\d+$/.test(val)) {
      return toUrduDigits(val);
    }
    return val;
  });
  return result;
}
function timeAgoUrdu(date, relativeTo = /* @__PURE__ */ new Date(), options = {}) {
  const d = parseDateInput(date);
  const now = parseDateInput(relativeTo);
  if (!d || !now) return "";
  const digits = options.digits ?? "urdu";
  const addSuffix = options.addSuffix ?? true;
  const formatNum = (num) => {
    const s = `${num}`;
    return digits === "urdu" ? toUrduDigits(s) : s;
  };
  const diffMs = now.getTime() - d.getTime();
  const isPast = diffMs >= 0;
  const absDiffSeconds = Math.round(Math.abs(diffMs) / 1e3);
  if (absDiffSeconds < 45) {
    return isPast ? "\u0627\u0628\u06BE\u06CC" : "\u0686\u0646\u062F \u0644\u0645\u062D\u06D2 \u0628\u0639\u062F";
  }
  const minutes = Math.round(absDiffSeconds / 60);
  if (minutes <= 45) {
    if (minutes === 1) {
      if (!addSuffix) return "\u0627\u06CC\u06A9 \u0645\u0646\u0679";
      return isPast ? "\u0627\u06CC\u06A9 \u0645\u0646\u0679 \u067E\u06C1\u0644\u06D2" : "\u0627\u06CC\u06A9 \u0645\u0646\u0679 \u0628\u0639\u062F";
    }
    const count2 = formatNum(minutes);
    if (!addSuffix) return `${count2} \u0645\u0646\u0679`;
    return isPast ? `${count2} \u0645\u0646\u0679 \u067E\u06C1\u0644\u06D2` : `${count2} \u0645\u0646\u0679 \u0628\u0639\u062F`;
  }
  const hours = Math.round(minutes / 60);
  if (hours <= 22) {
    if (hours === 1) {
      if (!addSuffix) return "\u0627\u06CC\u06A9 \u06AF\u06BE\u0646\u0679\u06C1";
      return isPast ? "\u0627\u06CC\u06A9 \u06AF\u06BE\u0646\u0679\u06C1 \u067E\u06C1\u0644\u06D2" : "\u0627\u06CC\u06A9 \u06AF\u06BE\u0646\u0679\u06C1 \u0628\u0639\u062F";
    }
    const count2 = formatNum(hours);
    if (!addSuffix) return `${count2} \u06AF\u06BE\u0646\u0679\u06D2`;
    return isPast ? `${count2} \u06AF\u06BE\u0646\u0679\u06D2 \u067E\u06C1\u0644\u06D2` : `${count2} \u06AF\u06BE\u0646\u0679\u06D2 \u0628\u0639\u062F`;
  }
  const days = Math.round(hours / 24);
  if (days === 1) {
    return isPast ? "\u06A9\u0644" : "\u06A9\u0644";
  }
  if (days === 2) {
    return isPast ? "\u067E\u0631\u0633\u0648\u06BA" : "\u067E\u0631\u0633\u0648\u06BA";
  }
  if (days <= 6) {
    const count2 = formatNum(days);
    if (!addSuffix) return `${count2} \u062F\u0646`;
    return isPast ? `${count2} \u062F\u0646 \u067E\u06C1\u0644\u06D2` : `${count2} \u062F\u0646 \u0628\u0639\u062F`;
  }
  const weeks = Math.round(days / 7);
  if (days <= 28) {
    if (weeks === 1) {
      if (!addSuffix) return "\u0627\u06CC\u06A9 \u06C1\u0641\u062A\u06C1";
      return isPast ? "\u0627\u06CC\u06A9 \u06C1\u0641\u062A\u06C1 \u067E\u06C1\u0644\u06D2" : "\u0627\u06CC\u06A9 \u06C1\u0641\u062A\u06C1 \u0628\u0639\u062F";
    }
    const count2 = formatNum(weeks);
    if (!addSuffix) return `${count2} \u06C1\u0641\u062A\u06D2`;
    return isPast ? `${count2} \u06C1\u0641\u062A\u06D2 \u067E\u06C1\u0644\u06D2` : `${count2} \u06C1\u0641\u062A\u06D2 \u0628\u0639\u062F`;
  }
  const months = Math.round(days / 30.44);
  if (days <= 320) {
    if (months <= 1) {
      if (!addSuffix) return "\u0627\u06CC\u06A9 \u0645\u0627\u06C1";
      return isPast ? "\u0627\u06CC\u06A9 \u0645\u0627\u06C1 \u067E\u06C1\u0644\u06D2" : "\u0627\u06CC\u06A9 \u0645\u0627\u06C1 \u0628\u0639\u062F";
    }
    const count2 = formatNum(months);
    if (!addSuffix) return `${count2} \u0645\u0627\u06C1`;
    return isPast ? `${count2} \u0645\u0627\u06C1 \u067E\u06C1\u0644\u06D2` : `${count2} \u0645\u0627\u06C1 \u0628\u0639\u062F`;
  }
  const years = Math.round(days / 365.25);
  if (years <= 1) {
    if (!addSuffix) return "\u0627\u06CC\u06A9 \u0633\u0627\u0644";
    return isPast ? "\u0627\u06CC\u06A9 \u0633\u0627\u0644 \u067E\u06C1\u0644\u06D2" : "\u0627\u06CC\u06A9 \u0633\u0627\u0644 \u0628\u0639\u062F";
  }
  const count = formatNum(years);
  if (!addSuffix) return `${count} \u0633\u0627\u0644`;
  return isPast ? `${count} \u0633\u0627\u0644 \u067E\u06C1\u0644\u06D2` : `${count} \u0633\u0627\u0644 \u0628\u0639\u062F`;
}

// src/stemmer.ts
var URDU_PREFIXES = [
  "\u063A\u06CC\u0631",
  "\u062E\u0648\u062F",
  "\u0627\u06C1\u0644",
  "\u0628\u06D2",
  "\u0646\u0627",
  "\u0644\u0627",
  "\u0628\u062F",
  "\u06A9\u0645",
  "\u0627\u0646",
  "\u06C1\u0645",
  "\u0628\u0627",
  "\u067E\u064F\u0631"
];
var URDU_SUFFIXES = [
  // Compound / multi-syllable suffixes
  "\u06CC\u06BA\u06AF\u06D2",
  "\u06CC\u0646\u06AF\u06D2",
  "\u06D2\u06AF\u0627",
  "\u06D2\u06AF\u06CC",
  "\u06CC\u0646\u06AF\u06CC",
  "\u062F\u0627\u0631\u06CC",
  "\u06AF\u0627\u0631\u06CC",
  "\u06A9\u0627\u0631\u06CC",
  "\u0633\u0627\u0632\u06CC",
  "\u0628\u0627\u0632\u06CC",
  "\u0645\u0646\u062F\u06CC",
  "\u062A\u0631\u06CC\u0646",
  "\u0633\u062A\u0627\u0646",
  "\u062E\u0627\u0646\u06C1",
  "\u0646\u0627\u0645\u06C1",
  "\u062C\u0627\u062A",
  "\u06AF\u0627\u0646",
  // Adjectival / nominal / agentive suffixes
  "\u062F\u0627\u0631",
  "\u06AF\u0627\u0631",
  "\u06A9\u0627\u0631",
  "\u0633\u0627\u0632",
  "\u0628\u0627\u0632",
  "\u0645\u0646\u062F",
  "\u0646\u0627\u06A9",
  "\u0648\u0627\u0631",
  "\u062F\u0627\u0646",
  "\u0632\u0627\u0631",
  "\u06CC\u062A",
  "\u067E\u0646",
  "\u0627\u0626\u06CC",
  "\u062A\u0631",
  // Plural & verbal inflections
  "\u06CC\u0627\u06BA",
  "\u0626\u06CC\u06BA",
  "\u0624\u06BA",
  "\u06CC\u0648\u06BA",
  "\u0648\u06BA",
  "\u06CC\u06BA",
  "\u0627\u062A",
  "\u06C1\u0627",
  "\u06CC\u0646",
  "\u062A\u06CC\u06BA",
  "\u062A\u0627",
  "\u062A\u06CC",
  "\u062A\u06D2",
  "\u0646\u0627"
];
var PROTECTED_WORDS = /* @__PURE__ */ new Set([
  "\u06C1\u0645",
  "\u0646\u0627",
  "\u0644\u0627",
  "\u0628\u06D2",
  "\u06CC\u0627",
  "\u062A\u0648",
  "\u067E\u0631",
  "\u0633\u06D2",
  "\u06A9\u0648",
  "\u06A9\u0627",
  "\u06A9\u06CC",
  "\u06A9\u06D2",
  "\u0645\u06CC\u06BA",
  "\u0646\u06D2",
  "\u06C1\u06D2",
  "\u06C1\u06CC\u06BA",
  "\u06C1\u0648",
  "\u062A\u06BE\u0627",
  "\u062A\u06BE\u06CC",
  "\u062A\u06BE\u06D2",
  "\u062A\u06BE\u06CC\u06BA",
  "\u0628\u0627\u063A",
  "\u0646\u0627\u0645",
  "\u0633\u0641\u0631",
  "\u06C1\u0648\u0627",
  "\u062F\u0644",
  "\u0633\u0631",
  "\u0644\u0628",
  "\u062F\u0633\u062A",
  "\u06A9\u0627\u0631",
  "\u0628\u0627\u0631",
  "\u0628\u0627\u0644",
  "\u0628\u0627\u0646",
  "\u0634\u0627\u0645",
  "\u06A9\u0627\u0645",
  "\u062F\u0627\u0645",
  "\u062C\u0627\u0645",
  "\u0639\u0627\u0645",
  "\u0631\u0627\u0645",
  "\u06AF\u0627\u0645",
  "\u062A\u0627\u0631",
  "\u06CC\u0627\u0631",
  "\u0645\u0627\u0631",
  "\u0646\u0627\u0631",
  "\u062F\u0627\u0631",
  "\u06C1\u0627\u0631",
  "\u0632\u0627\u0631",
  "\u063A\u0627\u0631",
  "\u0631\u0627\u062A",
  "\u0628\u0627\u062A",
  "\u0645\u0627\u062A",
  "\u0630\u0627\u062A",
  "\u06C1\u0627\u062A\u06BE",
  "\u0633\u0627\u062A\u06BE",
  "\u062F\u06CC\u0646",
  "\u062A\u06CC\u0646",
  "\u0686\u06CC\u0646",
  "\u0628\u06CC\u0646",
  "\u0632\u0645\u06CC\u0646",
  "\u0627\u0646\u0633\u0627\u0646",
  "\u0627\u062D\u0633\u0627\u0646",
  "\u0627\u06CC\u0645\u0627\u0646",
  "\u0627\u0633\u0644\u0627\u0645",
  "\u0627\u0639\u0644\u0627\u0646",
  "\u0627\u0645\u06A9\u0627\u0646",
  "\u0627\u0631\u0645\u0627\u0646",
  "\u0627\u0641\u063A\u0627\u0646",
  "\u0627\u06CC\u0631\u0627\u0646",
  "\u0639\u0645\u0631\u0627\u0646",
  "\u0639\u062B\u0645\u0627\u0646",
  "\u0633\u0644\u0645\u0627\u0646",
  "\u0639\u0631\u0641\u0627\u0646",
  "\u0642\u0631\u0622\u0646",
  "\u0637\u0648\u0641\u0627\u0646",
  "\u067E\u06C1\u0686\u0627\u0646",
  "\u062F\u06A9\u0627\u0646",
  "\u0645\u06A9\u0627\u0646",
  "\u0627\u0633\u0645\u0627\u0646",
  "\u0622\u0633\u0645\u0627\u0646",
  "\u0645\u06C1\u0645\u0627\u0646",
  "\u0646\u0642\u0635\u0627\u0646"
]);
function applySuffixStripping(word, suffixes, minLen) {
  if (word.length <= minLen) return { stem: word };
  if (word.endsWith("\u06CC\u0627\u06BA") && word.length - 3 >= minLen) {
    const base = word.slice(0, -3);
    return { stem: `${base}\u06CC`, suffix: "\u06CC\u0627\u06BA" };
  }
  if (word.endsWith("\u06CC\u0648\u06BA") && word.length - 3 >= minLen) {
    const base = word.slice(0, -3);
    return { stem: `${base}\u06CC`, suffix: "\u06CC\u0648\u06BA" };
  }
  if (word.endsWith("\u0626\u06CC\u06BA") && word.length - 3 >= minLen) {
    const base = word.slice(0, -3);
    return { stem: base, suffix: "\u0626\u06CC\u06BA" };
  }
  if (word.endsWith("\u0624\u06BA") && word.length - 2 >= minLen) {
    const base = word.slice(0, -2);
    return { stem: base, suffix: "\u0624\u06BA" };
  }
  for (const suf of suffixes) {
    if (word.endsWith(suf)) {
      const remainder = word.slice(0, -suf.length).replace(/[\s\u200C\u200D]+$/, "");
      if (remainder.length >= minLen && !PROTECTED_WORDS.has(word)) {
        return { stem: remainder, suffix: suf };
      }
    }
  }
  return { stem: word };
}
function applyPrefixStripping(word, prefixes, minLen) {
  if (word.length <= minLen) return { stem: word };
  for (const pref of prefixes) {
    if (word.startsWith(pref)) {
      const remainder = word.slice(pref.length).replace(/^[\s\u200C\u200D]+/, "");
      if (remainder.length >= minLen && !PROTECTED_WORDS.has(word)) {
        return { stem: remainder, prefix: pref };
      }
    }
  }
  return { stem: word };
}
function getAffixes(input, options = {}) {
  if (!input || typeof input !== "string") {
    return { stem: "" };
  }
  const clean = removeDiacritics(normalizeUrdu(input.trim()));
  if (!clean) return { stem: "" };
  if (options.exceptions && options.exceptions[clean]) {
    return { stem: options.exceptions[clean] };
  }
  if (PROTECTED_WORDS.has(clean)) {
    return { stem: clean };
  }
  const minLen = options.minStemLength ?? 2;
  const doSuffixes = options.stripSuffixes ?? true;
  const doPrefixes = options.stripPrefixes ?? true;
  const suffixes = options.customSuffixes ?? URDU_SUFFIXES;
  const prefixes = options.customPrefixes ?? URDU_PREFIXES;
  let current = clean;
  let detectedSuffix;
  let detectedPrefix;
  if (doSuffixes) {
    const sRes = applySuffixStripping(current, suffixes, minLen);
    current = sRes.stem;
    detectedSuffix = sRes.suffix;
  }
  if (doPrefixes) {
    const pRes = applyPrefixStripping(current, prefixes, minLen);
    current = pRes.stem;
    detectedPrefix = pRes.prefix;
  }
  return {
    prefix: detectedPrefix,
    stem: current,
    suffix: detectedSuffix
  };
}
function stemUrdu(word, options = {}) {
  return getAffixes(word, options).stem;
}
function stemUrduText(text, options = {}) {
  if (!text || typeof text !== "string") return "";
  const tokens = text.split(/([\s\p{P}\p{S}]+)/u);
  return tokens.map((token) => {
    if (/[\u0600-\u06FF\u0750-\u077F\uFB50-\uFDFF\uFE70-\uFEFF]/.test(token)) {
      return stemUrdu(token, options);
    }
    return token;
  }).join("");
}

// src/names.ts
var URDU_FIRST_NAMES = {
  // Male names
  "\u0645\u062D\u0645\u062F": "Muhammad",
  "\u0627\u062D\u0645\u062F": "Ahmed",
  "\u0639\u0644\u06CC": "Ali",
  "\u0639\u0645\u0631": "Umar",
  "\u0639\u062B\u0645\u0627\u0646": "Usman",
  "\u0627\u0628\u0648\u0628\u06A9\u0631": "Abubakar",
  "\u06CC\u0648\u0633\u0641": "Yusuf",
  "\u06CC\u0639\u0642\u0648\u0628": "Yaquob",
  "\u0627\u0633\u0645\u0627\u0639\u06CC\u0644": "Ismail",
  "\u0627\u0628\u0631\u0627\u06C1\u06CC\u0645": "Ibrahim",
  "\u0627\u0633\u062D\u0627\u0642": "Ishaq",
  "\u062D\u0633\u06CC\u0646": "Hussain",
  "\u062D\u0633\u0646": "Hasan",
  "\u0632\u06CC\u062F": "Zaid",
  "\u062D\u0645\u0632\u06C1": "Hamza",
  "\u0633\u0644\u0645\u0627\u0646": "Salman",
  "\u0641\u0631\u062D\u0627\u0646": "Farhan",
  "\u0627\u062F\u0646\u0627\u0646": "Adnan",
  "\u0628\u0644\u0627\u0644": "Bilal",
  "\u0637\u0627\u0631\u0642": "Tariq",
  "\u062C\u0627\u0648\u06CC\u062F": "Javed",
  "\u0639\u0631\u0641\u0627\u0646": "Irfan",
  "\u06A9\u0627\u0634\u0641": "Kashif",
  "\u0646\u062F\u06CC\u0645": "Nadeem",
  "\u06CC\u0627\u0633\u0631": "Yasir",
  "\u0631\u0636\u0648\u0627\u0646": "Rizwan",
  "\u0641\u06CC\u0635\u0644": "Faisal",
  "\u062E\u0627\u0644\u062F": "Khalid",
  "\u0631\u0627\u0634\u062F": "Rashid",
  "\u0634\u0627\u06C1\u062F": "Shahid",
  "\u0633\u0639\u06CC\u062F": "Saeed",
  "\u0646\u0639\u06CC\u0645": "Naeem",
  "\u0648\u0633\u06CC\u0645": "Waseem",
  "\u0631\u0641\u06CC\u0642": "Rafiq",
  "\u062C\u0645\u06CC\u0644": "Jamil",
  "\u0632\u0628\u06CC\u0631": "Zubair",
  "\u0637\u0627\u06C1\u0631": "Tahir",
  "\u0639\u0627\u0631\u0641": "Arif",
  "\u0646\u0639\u0645\u0627\u0646": "Noman",
  "\u062B\u0627\u0642\u0628": "Saqib",
  "\u0639\u062F\u06CC\u0644": "Adeel",
  "\u0639\u0645\u0631\u0627\u0646": "Imran",
  "\u0641\u0648\u0627\u062F": "Fawad",
  "\u0622\u0635\u0641": "Asif",
  "\u0634\u0639\u06CC\u0628": "Shoaib",
  "\u0632\u0627\u06C1\u062F": "Zahid",
  "\u0639\u0627\u0645\u0631": "Amer",
  "\u0645\u062C\u06CC\u062F": "Majid",
  "\u0633\u0631\u0641\u0631\u0627\u0632": "Sarfraz",
  "\u062D\u0645\u06CC\u062F": "Hamid",
  "\u0646\u0638\u06CC\u0631": "Nazir",
  "\u0642\u06CC\u0635\u0631": "Qaiser",
  "\u0644\u0637\u06CC\u0641": "Latif",
  "\u062A\u0646\u0648\u06CC\u0631": "Tanveer",
  "\u0633\u0644\u06CC\u0645\u0627\u0646": "Suleman",
  "\u0627\u0641\u062A\u062E\u0627\u0631": "Iftikhar",
  "\u0634\u0628\u06CC\u0631": "Shabbir",
  "\u0633\u0627\u062C\u062F": "Sajid",
  "\u0645\u0646\u0635\u0648\u0631": "Mansoor",
  "\u0633\u0644\u0637\u0627\u0646": "Sultan",
  "\u0646\u0635\u06CC\u0631": "Nasir",
  "\u062D\u0628\u06CC\u0628": "Habib",
  "\u0645\u0642\u0635\u0648\u062F": "Maqsood",
  "\u0645\u0633\u0639\u0648\u062F": "Masood",
  "\u0633\u06C1\u06CC\u0644": "Sohail",
  "\u0627\u0634\u0631\u0641": "Ashraf",
  "\u0645\u0628\u0627\u0631\u06A9": "Mubarak",
  "\u0641\u06C1\u062F": "Fahad",
  "\u0627\u0638\u06C1\u0631": "Azhar",
  "\u0648\u06A9\u06CC\u0644": "Wakeel",
  "\u0631\u0624\u0641": "Rauf",
  "\u062F\u0627\u0646\u06CC\u0627\u0644": "Daniyal",
  "\u0630\u06CC\u0634\u0627\u0646": "Zeeshan",
  "\u0645\u0635\u0637\u0641\u06CC": "Mustafa",
  // Female names
  "\u0641\u0627\u0637\u0645\u06C1": "Fatima",
  "\u0639\u0627\u0626\u0634\u06C1": "Ayesha",
  "\u062E\u062F\u06CC\u062C\u06C1": "Khadija",
  "\u062D\u0633\u0646\u0627": "Husna",
  "\u0632\u06CC\u0646\u0628": "Zainab",
  "\u0622\u0645\u0646\u06C1": "Amina",
  "\u0633\u0627\u0631\u0627": "Sara",
  "\u0627\u062F\u06CC\u06C1": "Adia",
  "\u0646\u0648\u0631": "Noor",
  "\u062D\u0631\u0627": "Hira",
  "\u0627\u0642\u0635\u06CC": "Aqsa",
  "\u0645\u0627\u06C1\u0645": "Maham",
  "\u0627\u06CC\u0645\u0627\u0646": "Iman",
  "\u0644\u0627\u0626\u0628\u06C1": "Laiba",
  "\u06C1\u0627\u0646\u06CC\u06C1": "Hania",
  "\u0631\u0645\u0634\u06C1": "Rimsha",
  "\u0645\u06CC\u0645\u0648\u0646\u06C1": "Memoona",
  "\u062B\u0646\u0627": "Sana",
  "\u062D\u0646\u0627": "Hina",
  "\u0627\u0642\u0631\u0627": "Iqra",
  "\u0641\u06CC\u0632\u0627": "Fiza",
  "\u0641\u0636\u06C1": "Fizza",
  "\u0633\u062F\u0631\u06C1": "Sidra",
  "\u0631\u062F\u0627": "Rida",
  "\u0646\u062F\u0627": "Nida",
  "\u0645\u0648\u0645\u06CC\u0646\u06C1": "Momina",
  "\u062B\u0648\u0628\u06CC\u06C1": "Sobia",
  "\u0646\u0627\u0626\u0644\u06C1": "Naila",
  "\u0628\u0634\u0631\u06CC": "Bushra",
  "\u0631\u062E\u0633\u0627\u0646\u06C1": "Rukhsana",
  "\u0634\u0627\u0632\u06CC\u06C1": "Shazia",
  "\u0646\u0627\u06C1\u06CC\u062F": "Naheed",
  "\u067E\u0631\u0648\u06CC\u0646": "Parveen",
  "\u0641\u0631\u0632\u0627\u0646\u06C1": "Farzana",
  "\u0646\u0627\u0632\u06CC\u06C1": "Nazia",
  "\u0635\u0628\u06CC\u062D\u06C1": "Sabiha",
  "\u0631\u0628\u0627\u0628": "Rubab",
  "\u0635\u0627\u0626\u0645\u06C1": "Saima",
  "\u0645\u06C1\u0631\u06CC\u0646": "Mehreen",
  "\u0639\u0646\u0628\u0631\u06CC\u0646": "Ambreen",
  "\u06A9\u0627\u0626\u0646\u0627\u062A": "Kainat",
  "\u0637\u0627\u06C1\u0631\u06C1": "Tahira",
  "\u0633\u0645\u06CC\u0639\u06C1": "Samia",
  "\u0633\u0627\u0645\u06CC\u06C1": "Samiya",
  "\u0633\u0644\u0645\u06CC": "Salma",
  "\u0631\u0648\u0632\u06CC\u0646\u06C1": "Rozina",
  "\u0645\u0631\u06CC\u0645": "Maryam",
  "\u0631\u0627\u0628\u0639\u06C1": "Rabia",
  "\u062A\u0633\u0644\u06CC\u0645": "Tasleem",
  "\u0627\u0633\u0645\u0627\u0621": "Asma",
  "\u0627\u0631\u0645": "Iram",
  "\u0646\u0627\u0632": "Naaz",
  "\u0641\u0631\u062D": "Farah",
  "\u0646\u0627\u062F\u06CC\u06C1": "Nadia",
  "\u0633\u06CC\u0645\u0627": "Seema",
  "\u06C1\u0645\u0627": "Huma",
  "\u0646\u0632\u06C1\u062A": "Nuzhat",
  "\u0639\u0638\u0645\u06CC": "Uzma",
  "\u06A9\u0631\u0646": "Kiran",
  "\u0633\u0645\u06CC\u0631\u0627": "Sumaira",
  "\u0641\u0631\u062E\u0646\u062F\u06C1": "Farkhanda",
  "\u062A\u0633\u0646\u06CC\u0645": "Tasneem",
  "\u0632\u0628\u06CC\u062F\u06C1": "Zubaida",
  "\u062C\u0648\u06CC\u0631\u06CC\u06C1": "Javeria",
  "\u0645\u06C1\u0648\u0634": "Mehwish",
  "\u0639\u0627\u0644\u06CC\u06C1": "Alia"
};
var URDU_FAMILY_NAMES = {
  "\u062E\u0627\u0646": "Khan",
  "\u0634\u0627\u06C1": "Shah",
  "\u0686\u0648\u06C1\u062F\u0631\u06CC": "Chaudhry",
  "\u0645\u0644\u06A9": "Malik",
  "\u0634\u06CC\u062E": "Sheikh",
  "\u0642\u0631\u06CC\u0634\u06CC": "Qureshi",
  "\u0633\u06CC\u062F": "Syed",
  "\u0646\u06CC\u0627\u0632\u06CC": "Niazi",
  "\u062C\u062F\u0648\u0646": "Jadoon",
  "\u0633\u0648\u0627\u062A\u06CC": "Swati",
  "\u06A9\u06BE\u0679\u06A9": "Khattak",
  "\u06CC\u0648\u0633\u0641\u0632\u0626\u06CC": "Yusufzai",
  "\u06A9\u06BE\u0648\u0633\u06C1": "Khosa",
  "\u062A\u0627\u0644\u067E\u0648\u0631": "Talpur",
  "\u062C\u0648\u0646\u06CC\u062C\u0648": "Junejo",
  "\u0628\u06BE\u0679\u06CC": "Bhatti",
  "\u0631\u0627\u062C\u067E\u0648\u062A": "Rajput",
  "\u0633\u0648\u0645\u0631\u0648": "Soomro",
  "\u062F\u06C1\u0627\u0631": "Dahar",
  "\u06AF\u06CC\u0644\u0627\u0646\u06CC": "Gillani",
  "\u0679\u0648\u0627\u0646\u0627\u0633": "Tiwanas",
  "\u0679\u0648\u0627\u0646\u06C1": "Tiwana",
  "\u062F\u0648\u0644\u062A\u0627\u0646\u06CC": "Doltani",
  "\u062F\u0627\u0644\u062A\u0627\u0646\u06CC": "Daltani",
  "\u06AF\u0648\u0631\u0686\u0627\u0646\u06CC": "Gurchani",
  "\u0631\u0646\u062F": "Rind",
  "\u0628\u06AF\u0679\u06CC": "Bugti",
  "\u0645\u0631\u06CC": "Marri",
  "\u0628\u0632\u06CC\u0646\u062C\u0648": "Bizenjo",
  "\u0645\u06CC\u0646\u06AF\u0644": "Mengal",
  "\u0632\u0631\u062F\u0627\u0631\u06CC": "Zardari",
  "\u0628\u06BE\u0679\u0648": "Bhutto",
  "\u0634\u0631\u06CC\u0641": "Sharif"
};
var HONORIFICS = {
  "\u062C\u0646\u0627\u0628": "Janab",
  "\u0635\u0627\u062D\u0628": "Sahib",
  "\u0627\u0633\u062A\u0627\u062F": "Ustad",
  "\u062D\u06A9\u06CC\u0645": "Hakim",
  "\u0688\u0627\u06A9\u0679\u0631": "Dr.",
  "\u067E\u0631\u0648\u0641\u06CC\u0633\u0631": "Prof.",
  "\u0627\u0646\u062C\u06CC\u0646\u0626\u0631": "Eng.",
  "\u0627\u06CC\u0688\u0648\u0648\u06A9\u06CC\u0679": "Adv.",
  "\u0631\u06CC\u0679\u0627\u0626\u0631\u0688": "Retd.",
  "\u0634\u06C1\u06CC\u062F": "Shaheed"
};
var NAME_PREFIXES = {
  "\u0633\u06CC\u062F": "Syed",
  "\u0634\u06CC\u062E": "Sheikh",
  "\u0686\u0648\u06C1\u062F\u0631\u06CC": "Chowdhury",
  "\u0645\u0644\u06A9": "Malik",
  "\u0645\u06CC\u0627\u06BA": "Mian",
  "\u062E\u0627\u0646": "Khan",
  "\u0628\u06CC\u06AF\u0645": "Begum",
  "\u0635\u0627\u062D\u0628": "Sahib"
};
var ENGLISH_TO_URDU = /* @__PURE__ */ new Map();
for (const table of [HONORIFICS, URDU_FIRST_NAMES, URDU_FAMILY_NAMES, NAME_PREFIXES]) {
  for (const [urduWord, englishWord] of Object.entries(table)) {
    ENGLISH_TO_URDU.set(englishWord.toLowerCase(), urduWord);
  }
}
var ENGLISH_NAME_ALIASES = {
  hassan: "\u062D\u0633\u0646",
  // vs. canonical Hasan
  omar: "\u0639\u0645\u0631",
  // vs. canonical Umar
  omer: "\u0639\u0645\u0631",
  // vs. canonical Umar
  yaqoob: "\u06CC\u0639\u0642\u0648\u0628",
  // vs. canonical Yaquob
  jameel: "\u062C\u0645\u06CC\u0644",
  // vs. canonical Jamil
  majeed: "\u0645\u062C\u06CC\u062F",
  // vs. canonical Majid
  amna: "\u0622\u0645\u0646\u06C1",
  // vs. canonical Amina
  gilani: "\u06AF\u06CC\u0644\u0627\u0646\u06CC",
  // vs. canonical Gillani
  sahab: "\u0635\u0627\u062D\u0628",
  // vs. canonical Sahib
  doctor: "\u0688\u0627\u06A9\u0679\u0631",
  // vs. canonical Dr.
  professor: "\u067E\u0631\u0648\u0641\u06CC\u0633\u0631",
  // vs. canonical Prof.
  engineer: "\u0627\u0646\u062C\u06CC\u0646\u0626\u0631",
  // vs. canonical Eng.
  advocate: "\u0627\u06CC\u0688\u0648\u0648\u06A9\u06CC\u0679",
  // vs. canonical Adv.
  retd: "\u0631\u06CC\u0679\u0627\u0626\u0631\u0688"
  // vs. canonical Retd.
};
function transliterateSingleName(urduName) {
  const normalized = removeDiacritics(normalizeUrdu(urduName));
  const words = normalized.split(/\s+/).filter((w) => w.length > 0);
  const result = [];
  for (const word of words) {
    const honorific = HONORIFICS[word];
    if (honorific) {
      result.push(honorific);
      continue;
    }
    const firstName = URDU_FIRST_NAMES[word];
    if (firstName) {
      result.push(firstName);
      continue;
    }
    const familyName = URDU_FAMILY_NAMES[word];
    if (familyName) {
      result.push(familyName);
      continue;
    }
    const prefix = NAME_PREFIXES[word];
    if (prefix) {
      result.push(prefix);
      continue;
    }
    result.push(transliterateNameWord(word));
  }
  return result.join(" ");
}
function transliterateNameWord(word) {
  if (!word) return "";
  const consonants = {
    "\u0628": "b",
    "\u067E": "p",
    "\u062A": "t",
    "\u0679": "t",
    "\u062C": "j",
    "\u0686": "ch",
    "\u062D": "h",
    "\u062E": "kh",
    "\u062F": "d",
    "\u0688": "d",
    "\u0631": "r",
    "\u0691": "r",
    "\u0632": "z",
    "\u0633": "s",
    "\u0634": "sh",
    "\u0635": "s",
    "\u0636": "z",
    "\u0637": "t",
    "\u0638": "z",
    "\u0639": "a",
    "\u063A": "gh",
    "\u0641": "f",
    "\u0642": "q",
    "\u06A9": "k",
    "\u06AF": "g",
    "\u0644": "l",
    "\u0645": "m",
    "\u0646": "n",
    "\u0648": "w",
    "\u06C1": "h",
    "\u06BE": "h",
    "\u06CC": "y"
  };
  let result = "";
  const chars = [...word];
  for (let i = 0; i < chars.length; i++) {
    const ch = chars[i];
    const next = chars[i + 1];
    if (next === "\u06BE" && consonants[ch]) {
      const base = consonants[ch];
      result += base + "h";
      i++;
      continue;
    }
    if (ch === "\u0622") {
      result += "Aa";
      continue;
    }
    if (ch === "\u0627" && i === 0) {
      result += "A";
      continue;
    }
    if (ch === "\u0627") {
      result += "a";
      continue;
    }
    if (ch === "\u06CC" && i === chars.length - 1) {
      result += "i";
      continue;
    }
    if (ch === "\u06CC" && next === "\u06BA") {
      result += "ain";
      i++;
      continue;
    }
    if (ch === "\u0648" && i === 0) {
      result += "W";
      continue;
    }
    if (ch === "\u0648") {
      result += "o";
      continue;
    }
    if (consonants[ch]) {
      result += consonants[ch];
      continue;
    }
    result += ch;
  }
  return result.charAt(0).toUpperCase() + result.slice(1);
}
function transliterateNameToEnglish(urduName, options = {}) {
  if (!urduName) return "";
  const { preserveCase = true, includeHonorifics = true } = options;
  const result = transliterateSingleName(urduName);
  if (!includeHonorifics) {
    return result.split(/\s+/).filter((word) => !Object.values(HONORIFICS).includes(word)).join(" ");
  }
  return preserveCase ? result : result.toLowerCase();
}
function transliterateNameToUrdu(englishName) {
  if (!englishName) return "";
  const words = englishName.split(/\s+/).filter((w) => w.length > 0);
  return words.map((word) => reverseTransliterateName(word)).join(" ");
}
function reverseTransliterateName(englishName) {
  const lower = englishName.toLowerCase();
  return ENGLISH_TO_URDU.get(lower) ?? ENGLISH_NAME_ALIASES[lower] ?? englishName;
}
function extractNameParts(fullName) {
  const normalized = removeDiacritics(normalizeUrdu(fullName));
  const words = normalized.split(/\s+/).filter((w) => w.length > 0);
  const honorifics = Object.keys(HONORIFICS);
  const suffixes = ["sahib", "sahab", "\u0628\u06CC\u06AF\u0645", "begum"];
  let honorific;
  let suffix;
  const nameWords = [];
  for (const word of words) {
    if (honorifics.includes(word)) {
      if (!honorific) {
        honorific = word;
      } else {
        suffix = word;
      }
    } else if (suffixes.includes(word)) {
      suffix = word;
    } else {
      nameWords.push(word);
    }
  }
  const familyName = nameWords.length > 1 ? nameWords[nameWords.length - 1] : void 0;
  const firstName = nameWords.length > 1 ? nameWords.slice(0, -1).join(" ") : nameWords[0] || "";
  return { honorific, firstName, familyName, suffix };
}

exports.URDU_MONTHS_GREGORIAN = URDU_MONTHS_GREGORIAN;
exports.URDU_MONTHS_HIJRI = URDU_MONTHS_HIJRI;
exports.URDU_PREFIXES = URDU_PREFIXES;
exports.URDU_STOP_WORDS = URDU_STOP_WORDS;
exports.URDU_SUFFIXES = URDU_SUFFIXES;
exports.URDU_WEEKDAYS = URDU_WEEKDAYS;
exports.analyzeUrdu = analyzeUrdu;
exports.compareUrdu = compareUrdu;
exports.convertNumbers = convertNumbers;
exports.countSentences = countSentences;
exports.countWords = countWords;
exports.editDistance = editDistance;
exports.extractNameParts = extractNameParts;
exports.filterStopWords = filterStopWords;
exports.foldUrdu = foldUrdu;
exports.formatUrduDate = formatUrduDate;
exports.getAffixes = getAffixes;
exports.getUrduMonthName = getUrduMonthName;
exports.getUrduWeekdayName = getUrduWeekdayName;
exports.hasUrduSpecificLetters = hasUrduSpecificLetters;
exports.highlightUrdu = highlightUrdu;
exports.isStopWord = isStopWord;
exports.isUrdu = isUrdu;
exports.normalizeUrdu = normalizeUrdu;
exports.numberToUrduWords = numberToUrduWords;
exports.parseUrduNumber = parseUrduNumber;
exports.removeDiacritics = removeDiacritics;
exports.removeStopWords = removeStopWords;
exports.romanToUrdu = romanToUrdu;
exports.romanize = romanize;
exports.searchUrdu = searchUrdu;
exports.searchUrduRanked = searchUrduRanked;
exports.sortUrdu = sortUrdu;
exports.splitSentences = splitSentences;
exports.splitWords = splitWords;
exports.stemUrdu = stemUrdu;
exports.stemUrduText = stemUrduText;
exports.timeAgoUrdu = timeAgoUrdu;
exports.toArabicIndicDigits = toArabicIndicDigits;
exports.toEnglishDigits = toEnglishDigits;
exports.toUrduDigits = toUrduDigits;
exports.transliterateNameToEnglish = transliterateNameToEnglish;
exports.transliterateNameToUrdu = transliterateNameToUrdu;
exports.urduRatio = urduRatio;
exports.urduSlug = urduSlug;
//# sourceMappingURL=index.cjs.map
//# sourceMappingURL=index.cjs.map