File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/6C33-zWaioZDB.js.map
{"version":3,"file":"6C33-zWaioZDB.js","sources":["../../src/exercices/6e/6C33.js"],"sourcesContent":["import { choice, combinaisonListes, enleveElement } from '../../lib/outils/arrayOutils'\nimport { miseEnEvidence } from '../../lib/outils/embellissements'\nimport { nombreDeChiffresDansLaPartieEntiere, range1, rangeMinMax } from '../../lib/outils/nombres.js'\nimport { lettreDepuisChiffre } from '../../lib/outils/outilString.js'\nimport { listeDesDiviseurs } from '../../lib/outils/primalite.js'\nimport Exercice from '../Exercice.js'\nimport { context } from '../../modules/context.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\n\nexport const titre = 'Calculate using operational priorities'\nexport const amcReady = true\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\nexport const amcType = 'AMCNum'\n\nexport const dateDeModifImportante = '21/05/2023'\n\n/**\n * Plusieurs type de calcul avec des entiers.\n *\n * Sans parenthèses :\n * * a+b*c\n * * a+b÷c\n * * a÷b*c\n * * a-b*c\n * * a*b÷c\n * * a*b+c\n * * a-b+c\n * * a+b+c*d\n * * a*b+c*d\n * * a*b*c-d\n * * a*b-c÷d\n * * a*b+c÷d\n *\n * Avec parenthèses :\n * * a*(b-c)\n * * (a-b)*c\n * * (a-b)÷c\n * * a÷(b+c)\n * * (a-b)÷c\n * * a*(b-c)*d\n * * a*b*(c-d)\n * * a*(b-c*d)\n * * (a+b*c)÷d\n * * a*(b-c*d)\n * * a*b÷(c+d)\n * * a*(b÷c+d)\n * @author Rémi Angot\n * Référence 6C33\n */\nexport const uuid = '4c10a'\nexport const ref = '6C33'\nexport default function Priorites () {\n Exercice.call(this) // Héritage de la classe Exercice()\n this.titre = titre\n this.consigne = 'Calculate.'\n this.nbQuestions = 5\n this.nbCols = 2\n this.nbColsCorr = 1\n this.sup = 3\n this.sup2 = false\n this.sup3 = true\n this.sup4 = true\n\n this.nouvelleVersion = function () {\n this.sup = parseInt(this.sup)\n this.listeQuestions = [] // Liste de questions\n this.listeCorrections = [] // Liste de questions corrigées\n this.autoCorrection = []\n let questionsDisponibles = [] //\n if (parseInt(this.sup) === 1) {\n questionsDisponibles = range1(12)\n } else if (parseInt(this.sup) === 2) {\n questionsDisponibles = range1(22, range1(12))\n } else {\n questionsDisponibles = range1(22)\n }\n if (!this.sup3) questionsDisponibles = questionsDisponibles.filter(el => !rangeMinMax(13, 22).includes(el))\n if (!this.sup4) questionsDisponibles = questionsDisponibles.filter(el => ![2, 3, 5, 8, 11, 12, 15, 16, 17, 21, 22].includes(el))\n const listeTypeDeQuestions = combinaisonListes(\n questionsDisponibles,\n this.nbQuestions\n )\n for (\n let i = 0, texte, texteCorr, liste, somme, a, b, c, d, cpt = 0;\n i < this.nbQuestions && cpt < 50;\n ) {\n switch (listeTypeDeQuestions[i]) {\n case 1:\n a = randint(2, 11)\n b = randint(2, 11)\n c = randint(2, 11)\n texte = `$${a}+${b}\\\\times${c}$`\n texteCorr = `$${a}+${miseEnEvidence(b + '\\\\times' + c)}=${a}+${b * c\n }=${a + b * c}$`\n setReponse(this, i, a + b * c)\n break\n case 2:\n a = randint(2, 11)\n c = randint(2, 11)\n b = c * randint(2, 11)\n texte = `$${a}+${b}\\\\div${c}$`\n texteCorr = `$${a}+${miseEnEvidence(b + '\\\\div' + c)}=${a}+${b / c\n }=${a + b / c}$`\n setReponse(this, i, a + b / c)\n break\n case 3:\n b = randint(2, 11)\n c = randint(2, 11)\n a = b * randint(2, 11)\n texte = `$${a}\\\\div${b}\\\\times${c}$`\n texteCorr = `$${miseEnEvidence(a + '\\\\div' + b)}\\\\times${c}=${a / b\n }\\\\times${c}=${(a / b) * c}$`\n setReponse(this, i, (a / b) * c)\n break\n case 4:\n b = randint(2, 11)\n c = randint(2, 11)\n a = b * c + randint(2, 11)\n texte = `$${a}-${b}\\\\times${c}$`\n texteCorr = `$${a}-${miseEnEvidence(b + '\\\\times' + c)}=${a}-${b * c\n }=${a - b * c}$`\n setReponse(this, i, a - b * c)\n break\n case 5:\n if (choice([true, false])) {\n // a is a multiple of c\n c = randint(2, 6)\n a = c * randint(2, 5)\n b = randint(2, 6)\n } else {\n // b is a multiple of c\n c = randint(2, 6)\n b = c * randint(2, 5)\n a = randint(2, 6)\n }\n texte = `$${a}\\\\times${b}\\\\div${c}$`\n texteCorr = `$${miseEnEvidence(a + '\\\\times' + b)}\\\\div${c}=${a * b\n }\\\\div${c}=${(a * b) / c}$`\n setReponse(this, i, (a * b) / c)\n break\n case 6:\n a = randint(2, 11)\n b = randint(2, 11)\n c = randint(2, 11)\n texte = `$${a}\\\\times${b}+${c}$`\n texteCorr = `$${miseEnEvidence(a + '\\\\times' + b)}+${c}=${a * b\n }+${c}=${a * b + c}$`\n setReponse(this, i, a * b + c)\n break\n case 7:\n b = randint(20, 59)\n a = b + randint(11, 29)\n c = randint(11, 29)\n texte = `$${a}-${b}+${c}$`\n texteCorr = `$${miseEnEvidence(a + '-' + b)}+${c}=${a - b}+${c}=${a - b + c}$`\n setReponse(this, i, a - b + c)\n break\n case 8:\n a = randint(2, 20)\n b = randint(2, 20)\n c = randint(2, 11)\n d = randint(2, 11)\n texte = `$${a}+${b}+${c}\\times${d}$`\n texteCorr = `$${a}+${b}+${miseEnEvidence(\n c + '\\\\times' + d\n )}=${a}+${b}+${c * d}=${a + b + c * d}$`\n setReponse(this, i, a + b + c * d)\n break\n case 9:\n a = randint(2, 11)\n b = randint(2, 11)\n c = randint(2, 11)\n d = randint(2, 11)\n texte = `$${a}\\\\times${b}+${c}\\\\times${d}$`\n texteCorr = `$${miseEnEvidence(\n a + '\\\\times' + b\n )}+${miseEnEvidence(c + '\\\\times' + d)}=${a * b}+${c * d}=${a * b + c * d}$`\n setReponse(this, i, a * b + c * d)\n break\n case 10:\n a = randint(2, 5)\n b = randint(2, 5)\n c = randint(2, 5)\n d = randint(2, a * b * c - 1)\n texte = `$${a}\\\\times${b}\\\\times${c}-${d}$`\n texteCorr = `$${miseEnEvidence(\n a + '\\\\times' + b\n )}\\\\times${c}-${d}=${miseEnEvidence(a * b + '\\\\times' + c)}-${d}=${a * b * c - d}$`\n setReponse(this, i, a * b * c - d)\n break\n case 11:\n a = randint(3, 11)\n b = randint(3, 11)\n d = randint(2, 11)\n c = d * randint(2, 8)\n texte = `$${a}\\\\times${b}-${c}\\\\div${d}$`\n texteCorr = `$${miseEnEvidence(\n a + '\\\\times' + b\n )}-${miseEnEvidence(c + '\\\\div' + d)}=${a * b}-${c / d}=${a * b - c / d}$`\n setReponse(this, i, a * b - c / d)\n break\n case 12:\n a = randint(2, 11)\n b = randint(2, 11)\n d = randint(2, 11)\n c = d * randint(2, 8)\n texte = `$${a}\\\\times${b}+${c}\\\\div${d}$`\n texteCorr = `$${miseEnEvidence(\n a + '\\\\times' + b\n )}+${miseEnEvidence(c + '\\\\div' + d)}=${a * b}+${c / d}=${a * b + c / d}$`\n setReponse(this, i, a * b + c / d)\n break\n case 13:\n a = randint(2, 11)\n c = randint(2, 11)\n b = c + randint(2, 11)\n texte = `$${a}\\\\times(${b}-${c})$`\n texteCorr = `$${a}\\\\times(${miseEnEvidence(\n b + '-' + c\n )})=${a}\\\\times${b - c}=${a * (b - c)}$`\n setReponse(this, i, a * (b - c))\n break\n case 14:\n b = randint(11, 39)\n a = b + randint(2, 11)\n c = randint(2, 11)\n texte = `$(${a}-${b})\\\\times${c}$`\n texteCorr = `$(${miseEnEvidence(a + '-' + b)})\\\\times${c}=${a - b\n }\\\\times${c}=${(a - b) * c}$`\n setReponse(this, i, (a - b) * c)\n break\n case 15:\n c = randint(2, 11)\n b = randint(11, 39)\n a = b + c * randint(2, 9)\n texte = `$(${a}-${b})\\\\div${c}$`\n texteCorr = `$(${miseEnEvidence(a + '-' + b)})\\\\div${c}=${a - b\n }\\\\div${c}=${(a - b) / c}$`\n setReponse(this, i, (a - b) / c)\n break\n case 16:\n b = randint(2, 5)\n c = randint(2, 6)\n a = (b + c) * randint(2, 9)\n texte = `$${a}\\\\div(${b}+${c})$`\n texteCorr = `$${a}\\\\div(${miseEnEvidence(b + '+' + c)})=${a}\\\\div${b + c\n }=${a / (b + c)}$`\n setReponse(this, i, a / (b + c))\n break\n case 17:\n c = randint(2, 11)\n b = randint(11, 39)\n a = b + c * randint(2, 9)\n texte = `$(${a}-${b})\\\\div${c}$`\n texteCorr = `$(${miseEnEvidence(a + '-' + b)})\\\\div${c}=${a - b\n }\\\\div${c}=${(a - b) / c}$`\n setReponse(this, i, (a - b) / c)\n break\n case 18:\n c = randint(11, 39)\n b = c + randint(2, 5)\n a = randint(2, 5)\n d = randint(2, 5)\n texte = `$${a}\\\\times(${b}-${c})\\\\times${d}$`\n texteCorr = `$${a}\\\\times(${miseEnEvidence(\n b + '-' + c\n )})\\\\times${d}=${a}\\\\times${b - c}\\\\times${d}=${a * (b - c) * d}$`\n setReponse(this, i, a * (b - c) * d)\n break\n case 19:\n d = randint(11, 39)\n c = d + randint(2, 5)\n a = randint(2, 5)\n b = randint(2, 5)\n texte = `$${a}\\\\times${b}\\\\times(${c}-${d})$`\n texteCorr = `$${a}\\\\times${b}\\\\times(${miseEnEvidence(\n c + '-' + d\n )})=${a}\\\\times${b}\\\\times${c - d}=${a * b * (c - d)}$`\n setReponse(this, i, a * b * (c - d))\n break\n case 20:\n a = randint(2, 11)\n c = randint(2, 11)\n d = randint(2, 11)\n b = c * d + randint(2, 11)\n texte = `$${a}\\\\times(${b}-${c}\\\\times${d})$`\n texteCorr = `$${a}\\\\times(${b}-${miseEnEvidence(\n c + '\\\\times' + d\n )})=${a}\\\\times(${miseEnEvidence(b + '-' + c * d)})=${a}\\\\times${b - c * d\n }=${a * (b - c * d)}$`\n setReponse(this, i, a * (b - c * d))\n break\n case 21:\n a = randint(2, 11)\n b = randint(2, 11)\n liste = listeDesDiviseurs(a * b)\n if (liste.length > 2) {\n liste.pop() // on supprime le plus grand diviseur qui est le produit\n }\n if (liste.length > 2) {\n enleveElement(liste, liste[1]) // on supprime le plus petit diviseur (autre que 1)\n }\n\n somme = choice(liste, [1]) // la somme doit être un diviseur différent de 1\n c = randint(1, somme - 1)\n d = somme - c\n texte = `$${a}\\\\times${b}\\\\div(${c}+${d})$`\n texteCorr = `$${a}\\\\times${b}\\\\div(${miseEnEvidence(\n c + '+' + d\n )})=${miseEnEvidence(a + '\\\\times' + b)}\\\\div${c + d}=${a * b\n }\\\\div${c + d}=${(a * b) / (c + d)}$`\n setReponse(this, i, (a * b) / (c + d))\n break\n case 22:\n a = randint(2, 11)\n c = randint(2, 11)\n b = c * randint(2, 5)\n d = randint(2, 6)\n texte = `$${a}\\\\times(${b}\\\\div${c}+${d})$`\n texteCorr = `$${a}\\\\times(${miseEnEvidence(\n b + '\\\\div' + c\n )}+${d})=${a}\\\\times(${miseEnEvidence(\n b / c + '+' + d\n )})=${a}\\\\times${b / c + d}=${a * (b / c + d)}$`\n setReponse(this, i, a * (b / c + d))\n break\n }\n if (this.sup2) {\n texte = `${lettreDepuisChiffre(i + 1)} = ${texte}`\n // We cut\n const etapes = texteCorr.split('=')\n texteCorr = ''\n etapes.forEach(function (etape) {\n etape = etape.replace('$', '')\n if (context.isHtml) {\n texteCorr += '<br>'\n }\n texteCorr += `${lettreDepuisChiffre(i + 1)} = $${etape}$ <br>`\n })\n }\n if (this.interactif && context.isHtml) texte = texte.substring(0, texte.length - 1) + '~=$' + ajouteChampTexteMathLive(this, i, 'width15 inline')\n if (this.listeQuestions.indexOf(texte) === -1) {\n if (context.isAmc) {\n this.autoCorrection[i].enonce = texte.substring(0, texte.length - 1) + '~=$'\n this.autoCorrection[i].propositions = [{ texte: texteCorr, statut: '' }]\n this.autoCorrection[i].reponse.param.digits = nombreDeChiffresDansLaPartieEntiere(this.autoCorrection[i].reponse.valeur[0]) + 1\n this.autoCorrection[i].reponse.param.decimals = 0\n }\n // If the question has never been asked, we create another one\n this.listeQuestions.push(texte)\n this.listeCorrections.push(texteCorr)\n i++\n }\n cpt++\n }\n listeQuestionsToContenu(this)\n }\n this.besoinFormulaireNumerique = [\n 'Type of calculations',\n 3,\n '1: Without parentheses\\n2: With parentheses\\n3: Mixture'\n ]\n this.besoinFormulaire2CaseACocher = ['Presentation of corrections in columns']\n this.besoinFormulaire3CaseACocher = ['Include parentheses']\n this.besoinFormulaire4CaseACocher = ['Include divisions']\n}\n"],"names":["titre","amcReady","interactifReady","interactifType","amcType","dateDeModifImportante","uuid","ref","Priorites","Exercice","questionsDisponibles","range1","el","rangeMinMax","listeTypeDeQuestions","combinaisonListes","i","texte","texteCorr","liste","somme","a","b","c","d","cpt","randint","miseEnEvidence","setReponse","choice","listeDesDiviseurs","enleveElement","lettreDepuisChiffre","etapes","etape","context","ajouteChampTexteMathLive","nombreDeChiffresDansLaPartieEntiere","listeQuestionsToContenu"],"mappings":"gJAWY,MAACA,EAAQ,yCACRC,EAAW,GACXC,EAAkB,GAClBC,EAAiB,WACjBC,EAAU,SAEVC,EAAwB,aAmCxBC,EAAO,QACPC,EAAM,OACJ,SAASC,GAAa,CACnCC,EAAS,KAAK,IAAI,EAClB,KAAK,MAAQT,EACb,KAAK,SAAW,aAChB,KAAK,YAAc,EACnB,KAAK,OAAS,EACd,KAAK,WAAa,EAClB,KAAK,IAAM,EACX,KAAK,KAAO,GACZ,KAAK,KAAO,GACZ,KAAK,KAAO,GAEZ,KAAK,gBAAkB,UAAY,CACjC,KAAK,IAAM,SAAS,KAAK,GAAG,EAC5B,KAAK,eAAiB,CAAE,EACxB,KAAK,iBAAmB,CAAE,EAC1B,KAAK,eAAiB,CAAE,EACxB,IAAIU,EAAuB,CAAE,EACzB,SAAS,KAAK,GAAG,IAAM,EACzBA,EAAuBC,EAAO,EAAE,EACvB,SAAS,KAAK,GAAG,IAAM,EAChCD,EAAuBC,EAAO,GAAIA,EAAO,EAAE,CAAC,EAE5CD,EAAuBC,EAAO,EAAE,EAE7B,KAAK,OAAMD,EAAuBA,EAAqB,OAAOE,GAAM,CAACC,EAAY,GAAI,EAAE,EAAE,SAASD,CAAE,CAAC,GACrG,KAAK,OAAMF,EAAuBA,EAAqB,OAAOE,GAAM,CAAC,CAAC,EAAG,EAAG,EAAG,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,EAAE,EAAE,SAASA,CAAE,CAAC,GAC/H,MAAME,EAAuBC,EAC3BL,EACA,KAAK,WACN,EACD,QACMM,EAAI,EAAGC,EAAOC,EAAWC,EAAOC,EAAOC,EAAGC,EAAGC,EAAGC,EAAGC,EAAM,EAC7DT,EAAI,KAAK,aAAeS,EAAM,IAC9B,CACA,OAAQX,EAAqBE,CAAC,EAAC,CAC7B,IAAK,GACHK,EAAIK,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBT,EAAQ,IAAII,CAAC,IAAIC,CAAC,UAAUC,CAAC,IAC7BL,EAAY,IAAIG,CAAC,IAAIM,EAAeL,EAAI,UAAYC,CAAC,CAAC,IAAIF,CAAC,IAAIC,EAAIC,CACxD,IAAGF,EAAIC,EAAIC,CAAC,IACvBK,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,CAAC,EAC7B,MACF,IAAK,GACHF,EAAIK,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBJ,EAAIC,EAAIG,EAAQ,EAAG,EAAE,EACrBT,EAAQ,IAAII,CAAC,IAAIC,CAAC,QAAQC,CAAC,IAC3BL,EAAY,IAAIG,CAAC,IAAIM,EAAeL,EAAI,QAAUC,CAAC,CAAC,IAAIF,CAAC,IAAIC,EAAIC,CACtD,IAAGF,EAAIC,EAAIC,CAAC,IACvBK,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,CAAC,EAC7B,MACF,IAAK,GACHD,EAAII,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBL,EAAIC,EAAII,EAAQ,EAAG,EAAE,EACrBT,EAAQ,IAAII,CAAC,QAAQC,CAAC,UAAUC,CAAC,IACjCL,EAAY,IAAIS,EAAeN,EAAI,QAAUC,CAAC,CAAC,UAAUC,CAAC,IAAIF,EAAIC,CAC5E,UAA8BC,CAAC,IAAKF,EAAIC,EAAKC,CAAC,IACpCK,EAAW,KAAMZ,EAAIK,EAAIC,EAAKC,CAAC,EAC/B,MACF,IAAK,GACHD,EAAII,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBL,EAAIC,EAAIC,EAAIG,EAAQ,EAAG,EAAE,EACzBT,EAAQ,IAAII,CAAC,IAAIC,CAAC,UAAUC,CAAC,IAC7BL,EAAY,IAAIG,CAAC,IAAIM,EAAeL,EAAI,UAAYC,CAAC,CAAC,IAAIF,CAAC,IAAIC,EAAIC,CACxD,IAAGF,EAAIC,EAAIC,CAAC,IACvBK,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,CAAC,EAC7B,MACF,IAAK,GACCM,EAAO,CAAC,GAAM,EAAK,CAAC,GAEtBN,EAAIG,EAAQ,EAAG,CAAC,EAChBL,EAAIE,EAAIG,EAAQ,EAAG,CAAC,EACpBJ,EAAII,EAAQ,EAAG,CAAC,IAGhBH,EAAIG,EAAQ,EAAG,CAAC,EAChBJ,EAAIC,EAAIG,EAAQ,EAAG,CAAC,EACpBL,EAAIK,EAAQ,EAAG,CAAC,GAElBT,EAAQ,IAAII,CAAC,UAAUC,CAAC,QAAQC,CAAC,IACjCL,EAAY,IAAIS,EAAeN,EAAI,UAAYC,CAAC,CAAC,QAAQC,CAAC,IAAIF,EAAIC,CAC5E,QAA4BC,CAAC,IAAKF,EAAIC,EAAKC,CAAC,IAClCK,EAAW,KAAMZ,EAAIK,EAAIC,EAAKC,CAAC,EAC/B,MACF,IAAK,GACHF,EAAIK,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBT,EAAQ,IAAII,CAAC,UAAUC,CAAC,IAAIC,CAAC,IAC7BL,EAAY,IAAIS,EAAeN,EAAI,UAAYC,CAAC,CAAC,IAAIC,CAAC,IAAIF,EAAIC,CACxE,IAAwBC,CAAC,IAAIF,EAAIC,EAAIC,CAAC,IAC5BK,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,CAAC,EAC7B,MACF,IAAK,GACHD,EAAII,EAAQ,GAAI,EAAE,EAClBL,EAAIC,EAAII,EAAQ,GAAI,EAAE,EACtBH,EAAIG,EAAQ,GAAI,EAAE,EAClBT,EAAQ,IAAII,CAAC,IAAIC,CAAC,IAAIC,CAAC,IACvBL,EAAY,IAAIS,EAAeN,EAAI,IAAMC,CAAC,CAAC,IAAIC,CAAC,IAAIF,EAAIC,CAAC,IAAIC,CAAC,IAAIF,EAAIC,EAAIC,CAAC,IAC3EK,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,CAAC,EAC7B,MACF,IAAK,GACHF,EAAIK,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBF,EAAIE,EAAQ,EAAG,EAAE,EACjBT,EAAQ,IAAII,CAAC,IAAIC,CAAC,IAAIC,CAAC,QAASC,CAAC,IACjCN,EAAY,IAAIG,CAAC,IAAIC,CAAC,IAAIK,EACZJ,EAAI,UAAYC,CACnB,CAAA,IAAIH,CAAC,IAAIC,CAAC,IAAIC,EAAIC,CAAC,IAAIH,EAAIC,EAAIC,EAAIC,CAAC,IAC/CI,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,EAAIC,CAAC,EACjC,MACF,IAAK,GACHH,EAAIK,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBF,EAAIE,EAAQ,EAAG,EAAE,EACjBT,EAAQ,IAAII,CAAC,UAAUC,CAAC,IAAIC,CAAC,UAAUC,CAAC,IACxCN,EAAY,IAAIS,EACFN,EAAI,UAAYC,CACxC,CAAqB,IAAIK,EAAeJ,EAAI,UAAYC,CAAC,CAAC,IAAIH,EAAIC,CAAC,IAAIC,EAAIC,CAAC,IAAIH,EAAIC,EAAIC,EAAIC,CAAC,IACnFI,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,EAAIC,CAAC,EACjC,MACF,IAAK,IACHH,EAAIK,EAAQ,EAAG,CAAC,EAChBJ,EAAII,EAAQ,EAAG,CAAC,EAChBH,EAAIG,EAAQ,EAAG,CAAC,EAChBF,EAAIE,EAAQ,EAAGL,EAAIC,EAAIC,EAAI,CAAC,EAC5BN,EAAQ,IAAII,CAAC,UAAUC,CAAC,UAAUC,CAAC,IAAIC,CAAC,IACxCN,EAAY,IAAIS,EACFN,EAAI,UAAYC,CACxC,CAAqB,UAAUC,CAAC,IAAIC,CAAC,IAAIG,EAAeN,EAAIC,EAAI,UAAYC,CAAC,CAAC,IAAIC,CAAC,IAAIH,EAAIC,EAAIC,EAAIC,CAAC,IAC1FI,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,EAAIC,CAAC,EACjC,MACF,IAAK,IACHH,EAAIK,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,EAAG,EAAE,EACjBF,EAAIE,EAAQ,EAAG,EAAE,EACjBH,EAAIC,EAAIE,EAAQ,EAAG,CAAC,EACpBT,EAAQ,IAAII,CAAC,UAAUC,CAAC,IAAIC,CAAC,QAAQC,CAAC,IACtCN,EAAY,IAAIS,EACFN,EAAI,UAAYC,CACxC,CAAqB,IAAIK,EAAeJ,EAAI,QAAUC,CAAC,CAAC,IAAIH,EAAIC,CAAC,IAAIC,EAAIC,CAAC,IAAIH,EAAIC,EAAIC,EAAIC,CAAC,IACjFI,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,EAAIC,CAAC,EACjC,MACF,IAAK,IACHH,EAAIK,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,EAAG,EAAE,EACjBF,EAAIE,EAAQ,EAAG,EAAE,EACjBH,EAAIC,EAAIE,EAAQ,EAAG,CAAC,EACpBT,EAAQ,IAAII,CAAC,UAAUC,CAAC,IAAIC,CAAC,QAAQC,CAAC,IACtCN,EAAY,IAAIS,EACFN,EAAI,UAAYC,CACxC,CAAqB,IAAIK,EAAeJ,EAAI,QAAUC,CAAC,CAAC,IAAIH,EAAIC,CAAC,IAAIC,EAAIC,CAAC,IAAIH,EAAIC,EAAIC,EAAIC,CAAC,IACjFI,EAAW,KAAMZ,EAAGK,EAAIC,EAAIC,EAAIC,CAAC,EACjC,MACF,IAAK,IACHH,EAAIK,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBJ,EAAIC,EAAIG,EAAQ,EAAG,EAAE,EACrBT,EAAQ,IAAII,CAAC,WAAWC,CAAC,IAAIC,CAAC,KAC9BL,EAAY,IAAIG,CAAC,WAAWM,EACdL,EAAI,IAAMC,CACb,CAAA,KAAKF,CAAC,UAAUC,EAAIC,CAAC,IAAIF,GAAKC,EAAIC,EAAE,IAC/CK,EAAW,KAAMZ,EAAGK,GAAKC,EAAIC,EAAE,EAC/B,MACF,IAAK,IACHD,EAAII,EAAQ,GAAI,EAAE,EAClBL,EAAIC,EAAII,EAAQ,EAAG,EAAE,EACrBH,EAAIG,EAAQ,EAAG,EAAE,EACjBT,EAAQ,KAAKI,CAAC,IAAIC,CAAC,WAAWC,CAAC,IAC/BL,EAAY,KAAKS,EAAeN,EAAI,IAAMC,CAAC,CAAC,WAAWC,CAAC,IAAIF,EAAIC,CAC1E,UAA8BC,CAAC,KAAKF,EAAIC,GAAKC,CAAC,IACpCK,EAAW,KAAMZ,GAAIK,EAAIC,GAAKC,CAAC,EAC/B,MACF,IAAK,IACHA,EAAIG,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,GAAI,EAAE,EAClBL,EAAIC,EAAIC,EAAIG,EAAQ,EAAG,CAAC,EACxBT,EAAQ,KAAKI,CAAC,IAAIC,CAAC,SAASC,CAAC,IAC7BL,EAAY,KAAKS,EAAeN,EAAI,IAAMC,CAAC,CAAC,SAASC,CAAC,IAAIF,EAAIC,CACxE,QAA4BC,CAAC,KAAKF,EAAIC,GAAKC,CAAC,IAClCK,EAAW,KAAMZ,GAAIK,EAAIC,GAAKC,CAAC,EAC/B,MACF,IAAK,IACHD,EAAII,EAAQ,EAAG,CAAC,EAChBH,EAAIG,EAAQ,EAAG,CAAC,EAChBL,GAAKC,EAAIC,GAAKG,EAAQ,EAAG,CAAC,EAC1BT,EAAQ,IAAII,CAAC,SAASC,CAAC,IAAIC,CAAC,KAC5BL,EAAY,IAAIG,CAAC,SAASM,EAAeL,EAAI,IAAMC,CAAC,CAAC,KAAKF,CAAC,QAAQC,EAAIC,CAC5D,IAAGF,GAAKC,EAAIC,EAAE,IACzBK,EAAW,KAAMZ,EAAGK,GAAKC,EAAIC,EAAE,EAC/B,MACF,IAAK,IACHA,EAAIG,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,GAAI,EAAE,EAClBL,EAAIC,EAAIC,EAAIG,EAAQ,EAAG,CAAC,EACxBT,EAAQ,KAAKI,CAAC,IAAIC,CAAC,SAASC,CAAC,IAC7BL,EAAY,KAAKS,EAAeN,EAAI,IAAMC,CAAC,CAAC,SAASC,CAAC,IAAIF,EAAIC,CACxE,QAA4BC,CAAC,KAAKF,EAAIC,GAAKC,CAAC,IAClCK,EAAW,KAAMZ,GAAIK,EAAIC,GAAKC,CAAC,EAC/B,MACF,IAAK,IACHA,EAAIG,EAAQ,GAAI,EAAE,EAClBJ,EAAIC,EAAIG,EAAQ,EAAG,CAAC,EACpBL,EAAIK,EAAQ,EAAG,CAAC,EAChBF,EAAIE,EAAQ,EAAG,CAAC,EAChBT,EAAQ,IAAII,CAAC,WAAWC,CAAC,IAAIC,CAAC,WAAWC,CAAC,IAC1CN,EAAY,IAAIG,CAAC,WAAWM,EACdL,EAAI,IAAMC,CAClC,CAAqB,WAAWC,CAAC,IAAIH,CAAC,UAAUC,EAAIC,CAAC,UAAUC,CAAC,IAAIH,GAAKC,EAAIC,GAAKC,CAAC,IACzEI,EAAW,KAAMZ,EAAGK,GAAKC,EAAIC,GAAKC,CAAC,EACnC,MACF,IAAK,IACHA,EAAIE,EAAQ,GAAI,EAAE,EAClBH,EAAIC,EAAIE,EAAQ,EAAG,CAAC,EACpBL,EAAIK,EAAQ,EAAG,CAAC,EAChBJ,EAAII,EAAQ,EAAG,CAAC,EAChBT,EAAQ,IAAII,CAAC,UAAUC,CAAC,WAAWC,CAAC,IAAIC,CAAC,KACzCN,EAAY,IAAIG,CAAC,UAAUC,CAAC,WAAWK,EACzBJ,EAAI,IAAMC,CACb,CAAA,KAAKH,CAAC,UAAUC,CAAC,UAAUC,EAAIC,CAAC,IAAIH,EAAIC,GAAKC,EAAIC,EAAE,IAC9DI,EAAW,KAAMZ,EAAGK,EAAIC,GAAKC,EAAIC,EAAE,EACnC,MACF,IAAK,IACHH,EAAIK,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBF,EAAIE,EAAQ,EAAG,EAAE,EACjBJ,EAAIC,EAAIC,EAAIE,EAAQ,EAAG,EAAE,EACzBT,EAAQ,IAAII,CAAC,WAAWC,CAAC,IAAIC,CAAC,UAAUC,CAAC,KACzCN,EAAY,IAAIG,CAAC,WAAWC,CAAC,IAAIK,EACnBJ,EAAI,UAAYC,CACxC,CAAqB,KAAKH,CAAC,WAAWM,EAAeL,EAAI,IAAMC,EAAIC,CAAC,CAAC,KAAKH,CAAC,UAAUC,EAAIC,EAAIC,CAC7F,IAAwBH,GAAKC,EAAIC,EAAIC,EAAE,IAC7BI,EAAW,KAAMZ,EAAGK,GAAKC,EAAIC,EAAIC,EAAE,EACnC,MACF,IAAK,IACHH,EAAIK,EAAQ,EAAG,EAAE,EACjBJ,EAAII,EAAQ,EAAG,EAAE,EACjBP,EAAQW,EAAkBT,EAAIC,CAAC,EAC3BH,EAAM,OAAS,GACjBA,EAAM,IAAK,EAETA,EAAM,OAAS,GACjBY,EAAcZ,EAAOA,EAAM,CAAC,CAAC,EAG/BC,EAAQS,EAAOV,EAAO,CAAC,CAAC,CAAC,EACzBI,EAAIG,EAAQ,EAAGN,EAAQ,CAAC,EACxBI,EAAIJ,EAAQG,EACZN,EAAQ,IAAII,CAAC,UAAUC,CAAC,SAASC,CAAC,IAAIC,CAAC,KACvCN,EAAY,IAAIG,CAAC,UAAUC,CAAC,SAASK,EACvBJ,EAAI,IAAMC,CACb,CAAA,KAAKG,EAAeN,EAAI,UAAYC,CAAC,CAAC,QAAQC,EAAIC,CAAC,IAAIH,EAAIC,CAChF,QAA4BC,EAAIC,CAAC,IAAKH,EAAIC,GAAMC,EAAIC,EAAE,IAC5CI,EAAW,KAAMZ,EAAIK,EAAIC,GAAMC,EAAIC,EAAE,EACrC,MACF,IAAK,IACHH,EAAIK,EAAQ,EAAG,EAAE,EACjBH,EAAIG,EAAQ,EAAG,EAAE,EACjBJ,EAAIC,EAAIG,EAAQ,EAAG,CAAC,EACpBF,EAAIE,EAAQ,EAAG,CAAC,EAChBT,EAAQ,IAAII,CAAC,WAAWC,CAAC,QAAQC,CAAC,IAAIC,CAAC,KACvCN,EAAY,IAAIG,CAAC,WAAWM,EACdL,EAAI,QAAUC,CACjB,CAAA,IAAIC,CAAC,KAAKH,CAAC,WAAWM,EACnBL,EAAIC,EAAI,IAAMC,CACjB,CAAA,KAAKH,CAAC,UAAUC,EAAIC,EAAIC,CAAC,IAAIH,GAAKC,EAAIC,EAAIC,EAAE,IACvDI,EAAW,KAAMZ,EAAGK,GAAKC,EAAIC,EAAIC,EAAE,EACnC,KACH,CACD,GAAI,KAAK,KAAM,CACbP,EAAQ,GAAGe,EAAoBhB,EAAI,CAAC,CAAC,MAAMC,CAAK,GAEhD,MAAMgB,EAASf,EAAU,MAAM,GAAG,EAClCA,EAAY,GACZe,EAAO,QAAQ,SAAUC,EAAO,CAC9BA,EAAQA,EAAM,QAAQ,IAAK,EAAE,EACzBC,EAAQ,SACVjB,GAAa,QAEfA,GAAa,GAAGc,EAAoBhB,EAAI,CAAC,CAAC,OAAOkB,CAAK,QAChE,CAAS,CACF,CACG,KAAK,YAAcC,EAAQ,SAAQlB,EAAQA,EAAM,UAAU,EAAGA,EAAM,OAAS,CAAC,EAAI,MAAQmB,EAAyB,KAAMpB,EAAG,gBAAgB,GAC5I,KAAK,eAAe,QAAQC,CAAK,IAAM,KACrCkB,EAAQ,QACV,KAAK,eAAenB,CAAC,EAAE,OAASC,EAAM,UAAU,EAAGA,EAAM,OAAS,CAAC,EAAI,MACvE,KAAK,eAAeD,CAAC,EAAE,aAAe,CAAC,CAAE,MAAOE,EAAW,OAAQ,GAAI,EACvE,KAAK,eAAeF,CAAC,EAAE,QAAQ,MAAM,OAASqB,EAAoC,KAAK,eAAerB,CAAC,EAAE,QAAQ,OAAO,CAAC,CAAC,EAAI,EAC9H,KAAK,eAAeA,CAAC,EAAE,QAAQ,MAAM,SAAW,GAGlD,KAAK,eAAe,KAAKC,CAAK,EAC9B,KAAK,iBAAiB,KAAKC,CAAS,EACpCF,KAEFS,GACD,CACDa,EAAwB,IAAI,CAC7B,EACD,KAAK,0BAA4B,CAC/B,uBACA,EACA;AAAA;AAAA,WACD,EACD,KAAK,6BAA+B,CAAC,wCAAwC,EAC7E,KAAK,6BAA+B,CAAC,qBAAqB,EAC1D,KAAK,6BAA+B,CAAC,mBAAmB,CAC1D"}