Z16407

{
    "Z1K1": "Z2",
    "Z2K1": {
        "Z1K1": "Z6",
        "Z6K1": "Z16407"
    },
    "Z2K2": {
        "Z1K1": "Z14",
        "Z14K1": "Z16398",
        "Z14K3": {
            "Z1K1": "Z16",
            "Z16K1": "Z610",
            "Z16K2": "def Z16398(Z16398K1):\n    Z16398K1 = int(Z16398K1)\n    ones = [\"um\", \"dois\", \"três\", \"quatro\", \"cinco\", \"seis\", \"sete\", \"oito\", \"nove\"]\n    teens = [\"dez\", \"onze\", \"doze\", \"treze\", \"catorze\", \"quinze\", \"dezesseis\", \"dezessete\", \"dezoito\", \"dezenove\"]\n    tens = [\"vinte\", \"trinta\", \"quarenta\", \"cinquenta\", \"sessenta\", \"setenta\", \"oitenta\", \"noventa\"]\n    hundreds = [\"cento\", \"duzentos\", \"trezentos\", \"quatrocentos\", \"quinhentos\", \"seiscentos\", \"setecentos\", \"oitocentos\", \"novecentos\"]\n    larger = [\"mil\", \"milhão\", \"bilhão\", \"trilhão\", \"quadrilhão\", \"quintilhão\", \"sextilhão\", \"septilhão\", \"octilhão\", \"nonilhão\", \"decilhão\", \"undecilhão\", \"dodecilhão\", \"tredecilhão\", \"quatuordecilhão\", \"quindecilhão\", \"sedecilhão\", \"septendecilhão\", \"octodecilhão\", \"novendecilhão\", \"vigintilhão\"]\n    largest = \"centilhão\"\n\n    if Z16398K1 == 0:\n        return \"zero\"\n    elif Z16398K1 == 100:\n        return \"cem\"\n    elif Z16398K1 == 1000:\n        return \"mil\"\n    elif Z16398K1 \u003C 10:\n        return ones[Z16398K1 - 1]\n    elif Z16398K1 \u003C 20:\n        return teens[Z16398K1 - 10]\n    elif Z16398K1 \u003C 100:\n        return tens[Z16398K1 // 10 - 2] + (\" e \" + Z16398(Z16398K1 % 10) if Z16398K1 % 10 != 0 else \"\")\n    elif Z16398K1 \u003C 1000:\n        if Z16398K1 % 100 == 0:\n            return hundreds[Z16398K1 // 100 - 1]\n        return hundreds[Z16398K1 // 100 - 1] + (\" e \" + Z16398(Z16398K1 % 100) if Z16398K1 % 100 != 0 else \"\")\n    elif Z16398K1 \u003E 1000:\n        for i in range(len(larger)):\n            if Z16398K1 \u003C 1000 ** (i + 2):\n                thousands_value = Z16398K1 // 1000 ** (i + 1)\n                thousands_name = larger[i]\n\n                remaining = Z16398K1 % 1000 ** (i + 1)\n                add_e = (remaining \u003C 100)\n\n                return (Z16398(thousands_value) + \" \" if thousands_value \u003E 1 else \"\") + thousands_name + (\" e\" if add_e else \"\") + (\" \" + Z16398(remaining) if remaining != 0 else \"\")\n        return Z16398(Z16398K1 // 1000 ** 20) + \" \" + largest + (\" e \" + Z16398(Z16398K1 % 1000 ** 20) if Z16398K1 % 1000 ** 20 != 0 else \"\")"
        }
    },
    "Z2K3": {
        "Z1K1": "Z12",
        "Z12K1": [
            "Z11",
            {
                "Z1K1": "Z11",
                "Z11K1": "Z1002",
                "Z11K2": "parser in python"
            },
            {
                "Z1K1": "Z11",
                "Z11K1": "Z1004",
                "Z11K2": "cardinal en portugais brésilien, en Python"
            },
            {
                "Z1K1": "Z11",
                "Z11K1": "Z1430",
                "Z11K2": "Kardinalzahl in brasil. Portugiesisch, Python"
            }
        ]
    },
    "Z2K4": {
        "Z1K1": "Z32",
        "Z32K1": [
            "Z31"
        ]
    },
    "Z2K5": {
        "Z1K1": "Z12",
        "Z12K1": [
            "Z11"
        ]
    }
}