HEX
Server: Apache
System: Linux vps.mmtprep.com 4.18.0-477.21.1.el8_8.x86_64 #1 SMP Thu Aug 10 13:51:50 EDT 2023 x86_64
User: mmtprep (1001)
PHP: 8.1.34
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/beta3F13-2-mrZwszvI.js.map
{"version":3,"file":"beta3F13-2-mrZwszvI.js","sources":["../../src/exercices/beta/beta3F13-2.js"],"sourcesContent":["import { graphiqueInterpole } from '../../lib/2d/courbes.js'\nimport { point } from '../../lib/2d/points.js'\nimport { polygoneRegulier } from '../../lib/2d/polygones.js'\nimport { repere } from '../../lib/2d/reperes.js'\nimport { shuffle } from '../../lib/outils/arrayOutils'\nimport { colorToLatexOrHTML, mathalea2d } from '../../modules/2dGeneralites.js'\nimport { context } from '../../modules/context.js'\nimport { listeQuestionsToContenu, randint } from '../../modules/outils.js'\nimport Exercice from '../Exercice.js'\nimport { setReponse } from '../../lib/interactif/gestionInteractif.js'\nimport { ajouteChampTexteMathLive } from '../../lib/interactif/questionMathLive.js'\n\nexport const titre = 'Spécial escape game'\nexport const interactifReady = true\nexport const interactifType = 'mathLive'\n\n/**\n * @author Jean-Claude Lhote\n * publié le  15/11/2020\n * ref 3F13-2\n */\nexport const uuid = 'be398'\nexport const ref = 'beta3F13-2'\n\nexport function cesar (word, decal) {\n  let mot = ''\n  let code = 65\n  for (let x = 0; x < word.length; x++) {\n    code = word.charCodeAt(x) % 65\n    code = (code + decal) % 26 + 65\n    mot += String.fromCharCode(code)\n  }\n  return mot\n}\n\nexport function codeCesar (mots, decal) {\n  const motsCodes = []\n  for (let x = 0; x < mots.length; x++) {\n    motsCodes.push(cesar(mots[x], decal))\n  }\n  return motsCodes\n}\n\nexport default function PremierEscapeGameMathalea () {\n  Exercice.call(this) // Héritage de la classe Exercice()\n  this.titre = titre\n  this.consigne = 'Trouver le mot de passe.'\n  this.nbQuestions = 1\n  context.isHtml ? this.spacingCorr = 1 : this.spacingCorr = 1.5\n  context.isHtml ? this.spacing = 1 : this.spacing = 2\n  this.nbCols = 1\n  this.nbColsCorr = 1\n  this.sup = 1\n  // this.sup2 = ''\n  this.pasDeVersionLatex = false\n  this.nouvelleVersion = function () {\n    const lettres = []\n    const mots = ['BMDF', 'OGNQ', 'BUQP', 'BAUP', 'BXGE', 'BDUJ', 'MZSXQE', 'BDUEYQ', 'BMDFUQ', 'HMXQGD', 'OAGBXQ', 'PDAUFQ', 'DQXMFUAZ', 'BMDMNAXQ', 'MPPUFUAZ', 'QJBAEMZF', 'RAZOFUAZ', 'OAYBXQJQ']\n    let alphabet = []\n    this.listeQuestions = []\n    this.listeCorrections = []\n    let texte = ''\n    let texteCorr = ''\n    let f1\n    let f2\n    let f3\n    let f4\n    let p\n    // Initialisation des tableaux\n    for (let i = 0; i < 26; i++) {\n      alphabet.push(String.fromCharCode(65 + i))\n    }\n    for (let y = 0; y < 5; y++) {\n      lettres.push(['*', '*', '*', '*', '*', '*'])\n    }\n\n    const type = parseInt(this.sup)\n    const mdp = cesar(mots[randint(0, 5) + (type - 1) * 6], 14)\n    const absc = []\n    const ord = []\n    let car\n    texte += ajouteChampTexteMathLive(this, 0, 'alphanumeric', { texteAvant: 'Taper le mot de passe en majuscules : ' })\n    texteCorr += `Le mot de passe comporte ${2 + 2 * type} lettres.`\n    setReponse(this, 0, mdp, { formatInteractif: 'texte' })\n    for (let x = 0; x < type * 2 + 2; x++) {\n      car = mdp[x]\n      alphabet = alphabet.filter(item => item !== car)\n      if (x % 2 === 0) {\n        absc.push(randint(0, 2))\n      } else {\n        absc.push(randint(3, 5))\n      }\n      // Pour l'abscisse, pas de problème de doublons\n      if (x % 2 === 0) {\n        ord.push(randint(0, 4))// premier point, l'ordonnée n'est pas contrainte.\n      } else {\n        ord.push(randint(0, 4, ord[x - 1]))\n      } // pour le deuxième, on évite l'ordonnée précédente\n      if (lettres[ord[x]][absc[x]] === '*') {\n        lettres[ord[x]][absc[x]] = car\n      } else if (lettres[ord[x]][absc[x]] !== car) {\n        for (let i = 0; i < x; i++) {\n          if (absc[i] === absc[x] && ord[i] === ord[x]) {\n            ord[x] = (ord[x] + 1) % 5\n            i = 0\n          }\n        }\n        lettres[ord[x]][absc[x]] = car\n      }\n    }\n    for (let i = 0; i < type * 2 + 2; i++) {\n      absc[i]++ // On corrige les coordonnées des points\n      ord[i]++\n    }\n    // On complète la grille de lettres\n    alphabet = shuffle(alphabet)\n    for (let x = 0; x < 6; x++) {\n      for (let y = 0; y < 5; y++) {\n        if (lettres[y][x] === '*' && alphabet.length > 0) {\n          lettres[y][x] = alphabet.pop()\n        }\n      }\n    }\n    // On calcule les ordonnées de début et de fin de chaque courbe\n    const ord0 = [0, 0, 0, 0]\n    const ord6 = [0, 0, 0, 0]\n    const r = repere({ xMin: -1, yMin: -1, xMax: 7, yMax: 6, xUnite: 2 })\n\n    for (let i = 0; i < type * 2 + 2; i += 2) {\n      if (ord[i] > ord[i + 1]) {\n        ord0[i / 2] = -2.34 + randint(0, 2)\n        ord6[i / 2] = 8.17 - randint(0, 2)\n      } else {\n        ord6[i / 2] = -2.34 + randint(0, 2)\n        ord0[i / 2] = 8.17 - randint(0, 2)\n      }\n    }\n    switch (type) {\n      case 1: // N&B\n        p = polygoneRegulier(point(-1, -2), point(15, -2), 4)\n        p.couleurDeRemplissage = colorToLatexOrHTML('gray')\n        p.opacite = 0.2\n        f1 = graphiqueInterpole([[0, ord0[0]], [absc[0], ord[0]], [absc[1], ord[1]], [7, ord6[0]]], {\n          repere: r,\n          color: 'black',\n          step: 0.1\n        })\n        f2 = graphiqueInterpole([[0, ord0[1]], [absc[2], ord[2]], [absc[3], ord[3]], [7, ord6[1]]], {\n          repere: r,\n          color: 'white',\n          step: 0.1\n        })\n        f1.epaisseur = 2\n        f2.epaisseur = 2\n        texte += mathalea2d({ xmin: -1, ymin: -1, xmax: 15, ymax: 7, pixelsParCm: 30 }, p, r, f1, f2) + '<br>'\n        break\n      case 2: // RGB\n        p = polygoneRegulier(point(-1, -2), point(15, -2), 4)\n        p.opacite = 0.2\n        p.couleurDeRemplissage = colorToLatexOrHTML('gray')\n        f1 = graphiqueInterpole([[0, ord0[0]], [absc[0], ord[0]], [absc[1], ord[1]], [7, ord6[0]]], {\n          repere: r,\n          color: 'red',\n          step: 0.1\n        })\n        f2 = graphiqueInterpole([[0, ord0[1]], [absc[2], ord[2]], [absc[3], ord[3]], [7, ord6[1]]], {\n          repere: r,\n          color: 'green',\n          step: 0.1\n        })\n        f3 = graphiqueInterpole([[0, ord0[2]], [absc[4], ord[4]], [absc[5], ord[5]], [7, ord6[2]]], {\n          repere: r,\n          color: 'blue',\n          step: 0.1\n        })\n        f1.epaisseur = 2\n        f2.epaisseur = 2\n        f3.pepaisseur = 2\n        texte += mathalea2d({ xmin: -1, ymin: -1, xmax: 15, ymax: 7, pixelsParCm: 30 }, p, r, f1, f2, f3) + '<br>'\n        break\n      case 3: // CJMN\n        p = polygoneRegulier(point(-1, -2), point(15, -2), 4)\n        p.opacite = 0.2\n        p.couleurDeRemplissage = colorToLatexOrHTML('gray')\n        f1 = graphiqueInterpole([[0, ord0[0]], [absc[0], ord[0]], [absc[1], ord[1]], [7, ord6[0]]], {\n          repere: r,\n          color: 'cyan',\n          step: 0.1\n        })\n        f2 = graphiqueInterpole([[0, ord0[1]], [absc[2], ord[2]], [absc[3], ord[3]], [7, ord6[1]]], {\n          repere: r,\n          color: 'yellow',\n          step: 0.1\n        })\n        f3 = graphiqueInterpole([[0, ord0[2]], [absc[4], ord[4]], [absc[5], ord[5]], [7, ord6[2]]], {\n          repere: r,\n          color: 'magenta',\n          step: 0.1\n        })\n        f4 = graphiqueInterpole([[0, ord0[3]], [absc[6], ord[6]], [absc[7], ord[7]], [7, ord6[3]]], {\n          repere: r,\n          color: 'black',\n          step: 0.1\n        })\n        f1.epaisseur = 2\n        f2.epaisseur = 2\n        f3.pepaisseur = 2\n        f4.epaisseur = 2\n        texte += mathalea2d({\n          xmin: -1,\n          ymin: -1,\n          xmax: 15,\n          ymax: 7,\n          pixelsParCm: 30\n        }, p, r, f1, f2, f3, f4) + '<br>'\n        break\n    }\n    texte += '$\\\\begin{array}{|l|' + 'c|'.repeat(6) + '}\\n'\n    texte += '\\\\hline\\n'\n    texte += ' '\n    for (let j = 0; j < 6; j++) {\n      texte += ` & \\\\text{${j + 1}}`\n    }\n    texte += '\\\\\\\\\\\\hline\\n'\n    for (let i = 0; i < 5; i++) {\n      texte += `\\\\text{${i + 1}}`\n      for (let j = 0; j < 6; j++) {\n        texte += '& ' + lettres[i][j] // valeur dans le tableau\n      }\n      texte += '\\\\\\\\\\\\hline\\n'\n    }\n    texte += '\\\\end{array}\\n$'\n    texte += '<br>'\n\n    this.listeQuestions.push(texte)\n    this.listeCorrections.push(texteCorr)\n    listeQuestionsToContenu(this)\n\n    // this.besoinFormulaire2Numerique = ['Coefficient de réduction(problèmes de type1)', 3, ' 1 : Décimal\\n 2 : Non décimal\\n 3 : Décimal ou non'];\n  }\n  this.besoinFormulaireNumerique = ['Catégorie', 3, ' 1 : Noir & Blanc\\n 2 : RGB\\n 3 : CJMN']\n  // this.besoinFormulaire2Texte = ['Quel est ton mot de passe ?', 1, 'Mot de passe (en majuscule):']\n}\n"],"names":["titre","interactifReady","interactifType","uuid","ref","cesar","word","decal","mot","code","codeCesar","mots","motsCodes","x","PremierEscapeGameMathalea","Exercice","context","lettres","alphabet","texte","texteCorr","f1","f2","f3","f4","p","i","y","type","mdp","randint","absc","ord","car","ajouteChampTexteMathLive","setReponse","item","shuffle","ord0","ord6","r","repere","polygoneRegulier","point","colorToLatexOrHTML","graphiqueInterpole","mathalea2d","j","listeQuestionsToContenu"],"mappings":"oMAYY,MAACA,EAAQ,sBACRC,EAAkB,GAClBC,EAAiB,WAOjBC,EAAO,QACPC,EAAM,aAEZ,SAASC,EAAOC,EAAMC,EAAO,CAClC,IAAIC,EAAM,GACNC,EAAO,GACX,QAAS,EAAI,EAAG,EAAIH,EAAK,OAAQ,IAC/BG,EAAOH,EAAK,WAAW,CAAC,EAAI,GAC5BG,GAAQA,EAAOF,GAAS,GAAK,GAC7BC,GAAO,OAAO,aAAaC,CAAI,EAEjC,OAAOD,CACT,CAEO,SAASE,EAAWC,EAAMJ,EAAO,CACtC,MAAMK,EAAY,CAAE,EACpB,QAASC,EAAI,EAAGA,EAAIF,EAAK,OAAQE,IAC/BD,EAAU,KAAKP,EAAMM,EAAKE,CAAC,EAAGN,CAAK,CAAC,EAEtC,OAAOK,CACT,CAEe,SAASE,GAA6B,CACnDC,EAAS,KAAK,IAAI,EAClB,KAAK,MAAQf,EACb,KAAK,SAAW,2BAChB,KAAK,YAAc,EACnBgB,EAAQ,OAAS,KAAK,YAAc,EAAI,KAAK,YAAc,IAC3DA,EAAQ,OAAS,KAAK,QAAU,EAAI,KAAK,QAAU,EACnD,KAAK,OAAS,EACd,KAAK,WAAa,EAClB,KAAK,IAAM,EAEX,KAAK,kBAAoB,GACzB,KAAK,gBAAkB,UAAY,CACjC,MAAMC,EAAU,CAAE,EACZN,EAAO,CAAC,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,OAAQ,SAAU,SAAU,SAAU,SAAU,SAAU,SAAU,WAAY,WAAY,WAAY,WAAY,WAAY,UAAU,EAChM,IAAIO,EAAW,CAAE,EACjB,KAAK,eAAiB,CAAE,EACxB,KAAK,iBAAmB,CAAE,EAC1B,IAAIC,EAAQ,GACRC,EAAY,GACZC,EACAC,EACAC,EACAC,EACAC,EAEJ,QAASC,EAAI,EAAGA,EAAI,GAAIA,IACtBR,EAAS,KAAK,OAAO,aAAa,GAAKQ,CAAC,CAAC,EAE3C,QAASC,EAAI,EAAGA,EAAI,EAAGA,IACrBV,EAAQ,KAAK,CAAC,IAAK,IAAK,IAAK,IAAK,IAAK,GAAG,CAAC,EAG7C,MAAMW,EAAO,SAAS,KAAK,GAAG,EACxBC,EAAMxB,EAAMM,EAAKmB,EAAQ,EAAG,CAAC,GAAKF,EAAO,GAAK,CAAC,EAAG,EAAE,EACpDG,EAAO,CAAE,EACTC,EAAM,CAAE,EACd,IAAIC,EACJd,GAASe,EAAyB,KAAM,EAAG,eAAgB,CAAE,WAAY,yCAA0C,EACnHd,GAAa,4BAA4B,EAAI,EAAIQ,CAAI,YACrDO,EAAW,KAAM,EAAGN,EAAK,CAAE,iBAAkB,QAAS,EACtD,QAAShB,EAAI,EAAGA,EAAIe,EAAO,EAAI,EAAGf,IAchC,GAbAoB,EAAMJ,EAAIhB,CAAC,EACXK,EAAWA,EAAS,OAAOkB,GAAQA,IAASH,CAAG,EAC3CpB,EAAI,IAAM,EACZkB,EAAK,KAAKD,EAAQ,EAAG,CAAC,CAAC,EAEvBC,EAAK,KAAKD,EAAQ,EAAG,CAAC,CAAC,EAGrBjB,EAAI,IAAM,EACZmB,EAAI,KAAKF,EAAQ,EAAG,CAAC,CAAC,EAEtBE,EAAI,KAAKF,EAAQ,EAAG,EAAGE,EAAInB,EAAI,CAAC,CAAC,CAAC,EAEhCI,EAAQe,EAAInB,CAAC,CAAC,EAAEkB,EAAKlB,CAAC,CAAC,IAAM,IAC/BI,EAAQe,EAAInB,CAAC,CAAC,EAAEkB,EAAKlB,CAAC,CAAC,EAAIoB,UAClBhB,EAAQe,EAAInB,CAAC,CAAC,EAAEkB,EAAKlB,CAAC,CAAC,IAAMoB,EAAK,CAC3C,QAAS,EAAI,EAAG,EAAIpB,EAAG,IACjBkB,EAAK,CAAC,IAAMA,EAAKlB,CAAC,GAAKmB,EAAI,CAAC,IAAMA,EAAInB,CAAC,IACzCmB,EAAInB,CAAC,GAAKmB,EAAInB,CAAC,EAAI,GAAK,EACxB,EAAI,GAGRI,EAAQe,EAAInB,CAAC,CAAC,EAAEkB,EAAKlB,CAAC,CAAC,EAAIoB,CAC5B,CAEH,QAASP,EAAI,EAAGA,EAAIE,EAAO,EAAI,EAAGF,IAChCK,EAAKL,CAAC,IACNM,EAAIN,CAAC,IAGPR,EAAWmB,EAAQnB,CAAQ,EAC3B,QAASL,EAAI,EAAGA,EAAI,EAAGA,IACrB,QAASc,EAAI,EAAGA,EAAI,EAAGA,IACjBV,EAAQU,CAAC,EAAEd,CAAC,IAAM,KAAOK,EAAS,OAAS,IAC7CD,EAAQU,CAAC,EAAEd,CAAC,EAAIK,EAAS,IAAK,GAKpC,MAAMoB,EAAO,CAAC,EAAG,EAAG,EAAG,CAAC,EAClBC,EAAO,CAAC,EAAG,EAAG,EAAG,CAAC,EAClBC,EAAIC,EAAO,CAAE,KAAM,GAAI,KAAM,GAAI,KAAM,EAAG,KAAM,EAAG,OAAQ,CAAC,CAAE,EAEpE,QAASf,EAAI,EAAGA,EAAIE,EAAO,EAAI,EAAGF,GAAK,EACjCM,EAAIN,CAAC,EAAIM,EAAIN,EAAI,CAAC,GACpBY,EAAKZ,EAAI,CAAC,EAAI,MAAQI,EAAQ,EAAG,CAAC,EAClCS,EAAKb,EAAI,CAAC,EAAI,KAAOI,EAAQ,EAAG,CAAC,IAEjCS,EAAKb,EAAI,CAAC,EAAI,MAAQI,EAAQ,EAAG,CAAC,EAClCQ,EAAKZ,EAAI,CAAC,EAAI,KAAOI,EAAQ,EAAG,CAAC,GAGrC,OAAQF,EAAI,CACV,IAAK,GACHH,EAAIiB,EAAiBC,EAAM,GAAI,EAAE,EAAGA,EAAM,GAAI,EAAE,EAAG,CAAC,EACpDlB,EAAE,qBAAuBmB,EAAmB,MAAM,EAClDnB,EAAE,QAAU,GACZJ,EAAKwB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,QACP,KAAM,EAChB,CAAS,EACDlB,EAAKuB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,QACP,KAAM,EAChB,CAAS,EACDnB,EAAG,UAAY,EACfC,EAAG,UAAY,EACfH,GAAS2B,EAAW,CAAE,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,EAAG,YAAa,EAAI,EAAErB,EAAGe,EAAGnB,EAAIC,CAAE,EAAI,OAChG,MACF,IAAK,GACHG,EAAIiB,EAAiBC,EAAM,GAAI,EAAE,EAAGA,EAAM,GAAI,EAAE,EAAG,CAAC,EACpDlB,EAAE,QAAU,GACZA,EAAE,qBAAuBmB,EAAmB,MAAM,EAClDvB,EAAKwB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,MACP,KAAM,EAChB,CAAS,EACDlB,EAAKuB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,QACP,KAAM,EAChB,CAAS,EACDjB,EAAKsB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,OACP,KAAM,EAChB,CAAS,EACDnB,EAAG,UAAY,EACfC,EAAG,UAAY,EACfC,EAAG,WAAa,EAChBJ,GAAS2B,EAAW,CAAE,KAAM,GAAI,KAAM,GAAI,KAAM,GAAI,KAAM,EAAG,YAAa,EAAE,EAAIrB,EAAGe,EAAGnB,EAAIC,EAAIC,CAAE,EAAI,OACpG,MACF,IAAK,GACHE,EAAIiB,EAAiBC,EAAM,GAAI,EAAE,EAAGA,EAAM,GAAI,EAAE,EAAG,CAAC,EACpDlB,EAAE,QAAU,GACZA,EAAE,qBAAuBmB,EAAmB,MAAM,EAClDvB,EAAKwB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,OACP,KAAM,EAChB,CAAS,EACDlB,EAAKuB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,SACP,KAAM,EAChB,CAAS,EACDjB,EAAKsB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,UACP,KAAM,EAChB,CAAS,EACDhB,EAAKqB,EAAmB,CAAC,CAAC,EAAGP,EAAK,CAAC,CAAC,EAAG,CAACP,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAACD,EAAK,CAAC,EAAGC,EAAI,CAAC,CAAC,EAAG,CAAC,EAAGO,EAAK,CAAC,CAAC,CAAC,EAAG,CAC1F,OAAQC,EACR,MAAO,QACP,KAAM,EAChB,CAAS,EACDnB,EAAG,UAAY,EACfC,EAAG,UAAY,EACfC,EAAG,WAAa,EAChBC,EAAG,UAAY,EACfL,GAAS2B,EAAW,CAClB,KAAM,GACN,KAAM,GACN,KAAM,GACN,KAAM,EACN,YAAa,EACvB,EAAWrB,EAAGe,EAAGnB,EAAIC,EAAIC,EAAIC,CAAE,EAAI,OAC3B,KACH,CACDL,GAAS,sBAAwB,KAAK,OAAO,CAAC,EAAI;AAAA,EAClDA,GAAS;AAAA,EACTA,GAAS,IACT,QAAS4B,EAAI,EAAGA,EAAI,EAAGA,IACrB5B,GAAS,aAAa4B,EAAI,CAAC,IAE7B5B,GAAS;AAAA,EACT,QAASO,EAAI,EAAGA,EAAI,EAAGA,IAAK,CAC1BP,GAAS,UAAUO,EAAI,CAAC,IACxB,QAASqB,EAAI,EAAGA,EAAI,EAAGA,IACrB5B,GAAS,KAAOF,EAAQS,CAAC,EAAEqB,CAAC,EAE9B5B,GAAS;AAAA,CACV,CACDA,GAAS;AAAA,GACTA,GAAS,OAET,KAAK,eAAe,KAAKA,CAAK,EAC9B,KAAK,iBAAiB,KAAKC,CAAS,EACpC4B,EAAwB,IAAI,CAG7B,EACD,KAAK,0BAA4B,CAAC,YAAa,EAAG;AAAA;AAAA,UAAwC,CAE5F"}