Z12057

{
    "Z1K1": "Z2",
    "Z2K1": {
        "Z1K1": "Z6",
        "Z6K1": "Z12057"
    },
    "Z2K2": {
        "Z1K1": "Z14",
        "Z14K1": "Z11822",
        "Z14K3": {
            "Z1K1": "Z16",
            "Z16K1": "Z610",
            "Z16K2": "def Z11822(Z11822K1, Z11822K2):\n\timport re\n\t\n\tform_no = int(Z11822K1) - 1\n\t\n\tger = Z11822K2\n\tstem = re.sub('\\u0646\\u0627$', *, ger)\n\tstemi = re.sub('\\u0650?\\u06CC$', lambda m: {'\\u0650\\u06CC': '\\u06CC', '\\u06CC': '\\u06D2'}[m.group(0)], stem)\n\t\n\tm1suffix = '\\u0627'\n\tm2suffix = '\\u06D2'\n\tf1suffix = '\\u06CC'\n\tf2suffix = '\\u0650\\u06CC\\u06BA'\n\t\n\tconpp = stem + ' \\u06A9'\n\tpotpp = stem + '\\u0646'\n\timppp = stem + '\\u062A'\n\tprfm1 = re.sub('\\u06D2|\\u064F?\\u0648|\\u0627$', lambda m: {'\\u06D2': '\\u06CC', '\\u064F\\u0648': '\\u0648', '\\u0648': '\\u0648\\u06CC', '\\u0627': '\\u0627\\u06CC'}[m.group(0)], stemi)\n\tprfother = re.sub('[\\u0627\\u0648]$', '\\g\u003C0\u003E\\u0626' , prfm1)\n\t\n\tsbj1s = re.sub('\\u06D2|\\u064F?\\u0648|\\u0627$', lambda m: {'\\u06D2': '\\u064F\\u0648', '\\u064F\\u0648': '\\u0648\\u0624', '\\u0648': '\\u0648\\u0624', '\\u0627': '\\u0627\\u0624'}[m.group(0)], stemi)\n\tsbj1s = re.sub('[^\\u0624\\u0648]$', '\\g\u003C0\u003E\\u064F\\u0648', sbj1s) + '\\u06BA'\n\tsbj13p = stem + '\\u06CC\\u06BA'\n\tsbj23s = stem + m2suffix\n\tsbj2p = stem + '\\u0648'\n\t\n\tpolite1 = stem + '\\u06CC\\u0648'\n\tpolite2 = stem + '\\u0626\\u06CC\\u06D2'\n\t\n\tdefinite = '\\u06AF'\n\tdef1s = sbj1s + '\\u200C' + definite\n\tdef13p = sbj13p + '\\u200C' + definite\n\tdef23s = sbj23s + definite\n\tdef2p = sbjep + definite\n\t\n\tif (form_no == 2):\n\t\treturn potpp + m2suffix\n*'\nfunction Z11822(Z11822K1, Z11822K2) {\n\tif (!Z11822K2)\n\t\treturn \"\";\n\n    let form_no = Number(Z11822K1) - 1;\n\n\tlet ger = Z11822K2;\n\tlet stem = ger.replace(/\\u0646\\u0627$/, \"\"); // -nA\n\tlet stemi = ger.replace(/\\u0646\\u0627$/, \"\"); // -nA\n\n\tif (stem.match(/\\u0650\\u06CC$/)) {\n\t\tstemi = stem.replace(/\\u0650\\u06CC$/, \"\\u06CC\"); // -I\n\t} else if (stem.match(/\\u06CC$/)) {\n\t\tstemi = stem.replace(/\\u06CC$/, \"\\u06D2\"); // -e\n\t}\n\n\tlet m1suffix = \"\\u0627\"; // +A\n\tlet m2suffix = \"\\u06D2\"; // +e\n\tlet f1suffix = \"\\u06CC\"; // +I\n\tlet f2suffix = \"\\u0650\\u06CC\\u06BA\"; // +I~\n\n\tlet conpp = stem + \" \\u06A9\"; // [stem]+ k\n\tlet potpp = stem + \"\\u0646\"; // [stem]+n\n\tlet imppp = stem + \"\\u062A\"; // [stem]+t\n\tlet prfm1 = stem; // [stem]+(0)\n\tlet prfother = stem; // [stem]+(0)\n\n\tlet sbj1s = stem + \"\\u064F\\u0648\\u06BA\"; // [stem]+U~\n\tlet sbj13p = stem + \"\\u06CC\\u06BA\"; // [stem]+e~\n\tlet sbj23s = stem + m2suffix; // [stem]+e\n\tlet sbj2p = stem + \"\\u0648\"; // [stem]+o\n\n\tlet polite1 = stem + \"\\u06CC\\u0648\"; // [stem]+iyo\n\tlet polite2 = stem + \"\\u0626\\u06CC\\u06D2\"; // [stem]+iye\n\n\tif (stem.match(/\\u06CC$/)) { // -I~e\n\t\tprfm1 = stemi.replace(/\\u06D2$/, \"\\u06CC\"); // [stem]-I+y\n\t\tprfother = stemi.replace(/\\u06D2$/, \"\\u06CC\"); // [stem]-I+y\n\t\tsbj1s = stemi.replace(/\\u06D2$/, \"\") + \"\\u064F\\u0648\\u06BA\"; // [stem]+U~\n\t\tsbj13p = stemi.replace(/\\u06D2$/, \"\") + \"\\u06CC\\u06BA\"; // [stem]+e~\n\t\tsbj23s = stemi.replace(/\\u06D2$/, \"\") + m2suffix; // [stem]+e\n\t\tsbj2p = stemi.replace(/\\u06D2$/, \"\") + \"\\u0648\"; // [stem]+o\n\t\tpolite1 = stemi.replace(/\\u06D2$/, \"\\u06CC\") + \"\\u0648\"; // [stem]-e+o\n\t\tpolite2 = stemi.replace(/\\u06D2$/, \"\\u06CC\").replace(/\\u06CC$/, \"\\u0650\\u06CC\") + \"\\u062C\\u06CC\\u06D2\"; // [stem]+jiye\n\t} else if (stem.match(/\\u064F\\u0648$/)) { // -U\n\t\tprfm1 = stem.replace(/\\u064F\\u0648$/, \"\\u0648\"); // [stem]-U+u\n\t\tprfother = stem.replace(/\\u064F\\u0648$/, \"\\u0648\\u0626\"); // [stem]-U+uy'\n\t\tsbj1s = prfm1 + \"\\u0624\\u06BA\"; // [stem]-U+u+u'~\n\t\tsbj13p = prfother + \"\\u06CC\\u06BA\"; // [stem]-U+uy'+e~\n\t\tsbj23s = prfother + \"\\u06D2\"; // [stem]-U+uy'+e\n\t\tsbj2p = prfm1 + \"\\u0624\"; // [stem]-U+u+o\n\t\tpolite1 = prfm1 + \"\\u06CC\\u0648\"; // [stem]-U+u+yo\n\t\tpolite2 = prfother + \"\\u06CC\\u06D2\"; // [stem]-U+u+ye\n\t} else if (stem.match(/\\u0627$/) || stem.match(/\\u0648$/)) { // -A || -o\n\t\tprfm1 = stem + \"\\u06CC\"; // [stem]+y\n\t\tprfother = stem + \"\\u0626\"; // [stem]+y'\n\t\tsbj1s = stem + \"\\u0624\\u06BA\"; // [stem]+u'~\n\t\tsbj13p = stem + \"\\u0626\\u06CC\\u06BA\"; // [stem]+y'e~\n\t\tsbj23s = stem + \"\\u0626\" + m2suffix; // [stem]+y'e\n\t\tsbj2p = stem + \"\\u0624\"; // [stem]+u'\n\t\tpolite1 = stem + \"\\u06CC\\u0648\"; // [stem]+yo\n\t}\n\n\tlet definite = \"\\u06AF\"; // +g\n\tlet def1s = sbj1s + \"\\u200C\" + definite; // (ZWNJ)\n\tlet def13p = sbj13p + \"\\u200C\" + definite; // (ZWNJ)\n\tlet def23s = sbj23s + definite;\n\tlet def2p = sbj2p + definite;\n\n\tlet form_index = [\n\t\tger,\n\t\tpotpp + m2suffix,\n\t\tstemi,\n\t\tconpp + m2suffix,\n\t\tconpp + \"\\u0631\", // +r\n\n\t\tger,\n\t\tpotpp + m2suffix,\n\t\tpotpp + f1suffix,\n\t\tpotpp + f2suffix,\n\t\timppp + m1suffix,\n\t\timppp + m2suffix,\n\t\timppp + f1suffix,\n\t\timppp + f2suffix,\n\t\tprfm1 + m1suffix,\n\t\tprfother + m2suffix,\n\t\tprfother + f1suffix,\n\t\tprfother + f2suffix,\n\n\t\tsbj1s,\n\t\tsbj13p,\n\t\tsbj23s,\n\t\tsbj2p,\n\t\tsbj23s,\n\t\tsbj13p,\n\n\t\tdef1s + m1suffix,\n\t\tdef13p + m2suffix,\n\t\tdef1s + f1suffix,\n\t\tdef13p + f1suffix,\n\t\tdef23s + m1suffix,\n\t\tdef2p + m2suffix,\n\t\tdef23s + f1suffix,\n\t\tdef2p + f1suffix,\n\t\tdef23s + m1suffix,\n\t\tdef13p + m2suffix,\n\t\tdef23s + f1suffix,\n\t\tdef13p + f1suffix,\n\n\t\tstemi,\n\t\tsbj2p,\n\t\tpolite1,\n\t\tpolite2,\n\t\tpolite2 + definite + m1suffix,\n\t];\n\t\n\treturn form_index[form_no];\n\n}\n'''"
        }
    },
    "Z2K3": {
        "Z1K1": "Z12",
        "Z12K1": [
            "Z11",
            {
                "Z1K1": "Z11",
                "Z11K1": "Z1430",
                "Z11K2": "Indische Verben in Python"
            }
        ]
    },
    "Z2K4": {
        "Z1K1": "Z32",
        "Z32K1": [
            "Z31"
        ]
    },
    "Z2K5": {
        "Z1K1": "Z12",
        "Z12K1": [
            "Z11"
        ]
    }
}