Z29967

{
    "Z1K1": "Z2",
    "Z2K1": {
        "Z1K1": "Z6",
        "Z6K1": "Z29967"
    },
    "Z2K2": {
        "Z1K1": "Z14",
        "Z14K1": "Z22849",
        "Z14K3": {
            "Z1K1": "Z16",
            "Z16K1": "Z600",
            "Z16K2": "function Z22849(\n    Z22849K1,\n    Z22849K2,\n    Z22849K3,\n    Z22849K4,\n    Z22849K5,\n    Z22849K6,\n    Z22849K7\n) {\n    const end = '\" ';\n    const TypedList = 'Z1K1 Z7 Z7K1 Z881 Z881K1 ';\n    const FirstArgument = '\"Z8K1 Z17 Z1K1 Z17 Z17K1 ';\n\n    let l3 = *;\n    let l1 = *;\n    let k1 = *;\n\n    // -------- K1 ----------\n    if (Z22849K1) {\n        let start = '\"Z8K2 ';\n        let Type = *;\n\n        if (Z22849K1.includes('(')) {\n            // generic type\n            if (Z22849K1.toUpperCase().startsWith('Z881(')) {\n                start += TypedList;\n                Type = Z22849K1.slice(5, -1);\n            }\n        } else {\n            Type = Z22849K1;\n            l1 = start + TypedList + Type.toUpperCase() + end;\n            l3 = `\"Z17K1 ${Type.toUpperCase()} ${end}OR \"Z17K1 ${TypedList}${Type.toUpperCase()} ${end}`;\n        }\n\n        k1 = start + Type.toUpperCase() + end;\n    } else {\n        k1 = *;\n        l1 = *;\n    }\n\n    // -------- K2 ----------\n    let k2 = *;\n    if (Z22849K2) {\n        for (const T of Z22849K2) {\n            let start, Type;\n            if (T.includes('(') \u0026\u0026 T.startsWith('Z881(')) {\n                start = '!\"Z8K2 ' + TypedList;\n                Type = T.slice(5, -1);\n            } else {\n                start = '!\"Z8K2 ';\n                Type = T;\n            }\n            k2 += start + Type.toUpperCase() + end;\n        }\n    }\n\n    // -------- K3 ----------\n    let k3 = *;\n    if (Z22849K3) {\n        for (const T of Z22849K3) {\n            let start, Type;\n            if (T.includes('(') \u0026\u0026 T.startsWith('Z881(')) {\n                start = '\"Z17K1 ' + TypedList;\n                Type = T.slice(5, -1);\n            } else {\n                start = '\"Z17K1 ';\n                Type = T;\n            }\n            k3 += start + Type.toUpperCase() + end;\n        }\n    }\n\n    // -------- K4 ----------\n    let k4 = *;\n    if (Z22849K4 \u0026\u0026 Z22849K4.length \u003E 0) {\n        for (const T of Z22849K4) {\n            let start, Type;\n            if (T.includes('(') \u0026\u0026 T.startsWith('Z881(')) {\n                start = '!\"Z17K1 ' + TypedList;\n                Type = T.slice(5, -1);\n            } else {\n                start = '!\"Z17K1 ';\n                Type = T;\n            }\n            k4 += start + Type.toUpperCase() + end;\n        }\n    }\n\n    // -------- K5 ----------\n    let k5 = *;\n    if (Z22849K5 \u0026\u0026 Z22849K5.length \u003E 0) {\n        let start, Type;\n        if (Z22849K5.includes('(') \u0026\u0026 Z22849K5.startsWith('Z881(')) {\n            start = FirstArgument + TypedList;\n            Type = Z22849K5.slice(5, -1);\n        } else {\n            start = FirstArgument;\n            Type = Z22849K5;\n        }\n        k5 = start + Type.toUpperCase() + end;\n    }\n\n    // -------- K6 ----------\n    let k6 = *;\n    if (Z22849K6) {\n        let OR = *;\n        for (const T of Z22849K6) {\n            let start, Type;\n            if (T.includes('(') \u0026\u0026 T.startsWith('Z881(')) {\n                start = FirstArgument + TypedList;\n                Type = T.slice(5, -1);\n            } else {\n                start = FirstArgument;\n                Type = T;\n            }\n            k6 += OR + start + Type.toUpperCase() + end;\n            OR = 'OR ';\n        }\n    }\n\n    // -------- K7 ----------\n    let k7 = '';\n    if (Z22849K7 \u0026\u0026 Z22849K7.length \u003E 0) {\n        for (const T of Z22849K7) {\n            let start, Type;\n            if (T.includes('(') \u0026\u0026 T.startsWith('Z881(')) {\n                start = '!' + FirstArgument + TypedList;\n                Type = T.slice(5, -1);\n            } else {\n                start = '!' + FirstArgument;\n                Type = T;\n            }\n            k7 += start + Type.toUpperCase() + end;\n        }\n    }\n\n    // -------- target ----------\n    let start;\n    if (k1 + k3 + k5 + k6) {\n        start = ' : ';\n    } else {\n        start = ' : \"Z1K1 Z8 Z8K1\" ';\n    }\n\n    const target = start + k1 + k2 + k3 + k4 + k5 + k7 + k6;\n\n    let searches = [];\n    searches.push(target);\n\n    if (l1) {\n        const listTarget =\n            start + k5 + k1 + 'OR ' + l1 + k2 + k3 + k4 + k7 + k6;\n        searches.push(listTarget);\n\n        if (l3 \u0026\u0026 !k3) searches.push(listTarget + 'OR ' + l3);\n    }\n\n    if (l3 \u0026\u0026 !k3) {\n        searches.push(' : ' + l3);\n        searches.push(' : ' + `\"Z17K1 ${Z22849K1.toUpperCase()} ${end}`);\n    }\n\n    searches.push(target + 'Z8K3 Z8K4 Z8K5 !\"Z8K4 Z14 Z8K5\" !\"Z8K3 Z20 Z8K4\" ');\n\n    return searches;\n}\n"
        }
    },
    "Z2K3": {
        "Z1K1": "Z12",
        "Z12K1": [
            "Z11",
            {
                "Z1K1": "Z11",
                "Z11K1": "Z1002",
                "Z11K2": "Strings for function searches, JS"
            }
        ]
    },
    "Z2K4": {
        "Z1K1": "Z32",
        "Z32K1": [
            "Z31"
        ]
    },
    "Z2K5": {
        "Z1K1": "Z12",
        "Z12K1": [
            "Z11"
        ]
    }
}