[{"data":1,"prerenderedAt":875},["ShallowReactive",2],{"page-\u002Fnuxt\u002Fpages-et-routage":3,"pieces-nuxt":828,"autour-\u002Fnuxt\u002Fpages-et-routage":857,"prerequis-\u002Fnuxt\u002Fpages-et-routage":862,"plan-nuxt":864},{"id":4,"title":5,"body":6,"description":791,"extension":792,"ligne":793,"meta":794,"motsCles":795,"navigation":284,"niveau":801,"path":802,"prerequis":803,"ressources":805,"seo":813,"sources":814,"stem":826,"__hash__":827},"docs\u002Fnuxt\u002F03.pages-et-routage.md","Pages et routage",{"type":7,"value":8,"toc":783},"minimark",[9,14,43,47,59,128,143,190,194,206,217,319,337,341,351,473,482,488,536,540,551,630,640,686,696,739,743,779],[10,11,13],"h2",{"id":12},"ce-que-tu-vas-apprendre","Ce que tu vas apprendre",[15,16,17,21,33,40],"ul",{},[18,19,20],"li",{},"Transformer un fichier en page, et un dossier en morceau d'adresse.",[18,22,23,24,28,29,32],{},"Créer une page dynamique qui sert toutes les recettes : ",[25,26,27],"code",{},"\u002Frecettes\u002F1",", ",[25,30,31],{},"\u002Frecettes\u002F2","...",[18,34,35,36,39],{},"Passer d'une page à l'autre sans recharger, avec ",[25,37,38],{},"\u003CNuxtLink>",".",[18,41,42],{},"Partager un en-tête et un pied de page entre toutes les pages.",[10,44,46],{"id":45},"un-fichier-une-adresse","Un fichier, une adresse",[48,49,50,51,54,55,58],"p",{},"Tout fichier ",[25,52,53],{},".vue"," placé dans ",[25,56,57],{},"app\u002Fpages\u002F"," devient une page. Son chemin donne l'adresse :",[60,61,62,75],"table",{},[63,64,65],"thead",{},[66,67,68,72],"tr",{},[69,70,71],"th",{},"Fichier",[69,73,74],{},"Adresse",[76,77,78,91,103,115],"tbody",{},[66,79,80,86],{},[81,82,83],"td",{},[25,84,85],{},"app\u002Fpages\u002Findex.vue",[81,87,88],{},[25,89,90],{},"\u002F",[66,92,93,98],{},[81,94,95],{},[25,96,97],{},"app\u002Fpages\u002Fa-propos.vue",[81,99,100],{},[25,101,102],{},"\u002Fa-propos",[66,104,105,110],{},[81,106,107],{},[25,108,109],{},"app\u002Fpages\u002Frecettes\u002Findex.vue",[81,111,112],{},[25,113,114],{},"\u002Frecettes",[66,116,117,122],{},[81,118,119],{},[25,120,121],{},"app\u002Fpages\u002Frecettes\u002F[id].vue",[81,123,124,28,126,32],{},[25,125,27],{},[25,127,31],{},[48,129,130,131,134,135,138,139,142],{},"Le mot ",[25,132,133],{},"index"," veut dire « la page du dossier lui-même ». Pour que les pages s'affichent, ",[25,136,137],{},"app\u002Fapp.vue"," contient le composant ",[25,140,141],{},"\u003CNuxtPage \u002F>"," : c'est l'emplacement où Nuxt place la page demandée.",[144,145,150],"pre",{"className":146,"code":147,"filename":137,"language":148,"meta":149,"style":149},"language-vue shiki shiki-themes github-light-default github-dark-default github-dark-default","\u003Ctemplate>\n  \u003CNuxtPage \u002F>\n\u003C\u002Ftemplate>\n","vue","",[25,151,152,168,180],{"__ignoreMap":149},[153,154,157,161,165],"span",{"class":155,"line":156},"line",1,[153,158,160],{"class":159},"scfrF","\u003C",[153,162,164],{"class":163},"s5JFL","template",[153,166,167],{"class":159},">\n",[153,169,171,174,177],{"class":155,"line":170},2,[153,172,173],{"class":159},"  \u003C",[153,175,176],{"class":163},"NuxtPage",[153,178,179],{"class":159}," \u002F>\n",[153,181,183,186,188],{"class":155,"line":182},3,[153,184,185],{"class":159},"\u003C\u002F",[153,187,164],{"class":163},[153,189,167],{"class":159},[10,191,193],{"id":192},"les-pages-dynamiques","Les pages dynamiques",[48,195,196,197,201,202,205],{},"Ton site aura des dizaines de recettes. Tu ne vas pas écrire un fichier par recette. Les crochets dans le nom de fichier créent un ",[198,199,200],"strong",{},"paramètre"," : ",[25,203,204],{},"[id].vue"," accepte n'importe quelle valeur à cet endroit de l'adresse.",[48,207,208,209,212,213,216],{},"Dans la page, ",[25,210,211],{},"useRoute()"," donne accès à l'adresse en cours, et ",[25,214,215],{},"params.id"," à la valeur reçue :",[144,218,220],{"className":146,"code":219,"filename":121,"language":148,"meta":149,"style":149},"\u003Cscript setup lang=\"ts\">\nconst route = useRoute()\n\u002F\u002F Pour \u002Frecettes\u002F12, route.params.id vaut \"12\" (toujours une chaîne de caractères).\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n  \u003Ch1>Recette n° {{ route.params.id }}\u003C\u002Fh1>\n\u003C\u002Ftemplate>\n",[25,221,222,245,264,270,279,286,295,310],{"__ignoreMap":149},[153,223,224,226,229,233,236,239,243],{"class":155,"line":156},[153,225,160],{"class":159},[153,227,228],{"class":163},"script",[153,230,232],{"class":231},"s5iOY"," setup",[153,234,235],{"class":231}," lang",[153,237,238],{"class":159},"=",[153,240,242],{"class":241},"shWOn","\"ts\"",[153,244,167],{"class":159},[153,246,247,251,254,257,261],{"class":155,"line":170},[153,248,250],{"class":249},"sOnC1","const",[153,252,253],{"class":231}," route",[153,255,256],{"class":249}," =",[153,258,260],{"class":259},"syCW7"," useRoute",[153,262,263],{"class":159},"()\n",[153,265,266],{"class":155,"line":182},[153,267,269],{"class":268},"sd6ml","\u002F\u002F Pour \u002Frecettes\u002F12, route.params.id vaut \"12\" (toujours une chaîne de caractères).\n",[153,271,273,275,277],{"class":155,"line":272},4,[153,274,185],{"class":159},[153,276,228],{"class":163},[153,278,167],{"class":159},[153,280,282],{"class":155,"line":281},5,[153,283,285],{"emptyLinePlaceholder":284},true,"\n",[153,287,289,291,293],{"class":155,"line":288},6,[153,290,160],{"class":159},[153,292,164],{"class":163},[153,294,167],{"class":159},[153,296,298,300,303,306,308],{"class":155,"line":297},7,[153,299,173],{"class":159},[153,301,302],{"class":163},"h1",[153,304,305],{"class":159},">Recette n° {{ route.params.id }}\u003C\u002F",[153,307,302],{"class":163},[153,309,167],{"class":159},[153,311,313,315,317],{"class":155,"line":312},8,[153,314,185],{"class":159},[153,316,164],{"class":163},[153,318,167],{"class":159},[320,321,322],"note",{},[48,323,324,325,328,329,332,333,336],{},"Il existe deux variantes : ",[25,326,327],{},"[[id]].vue"," rend le paramètre facultatif, et ",[25,330,331],{},"[...chemin].vue"," attrape tout le reste de l'adresse, slashs compris. Ce site utilise d'ailleurs un ",[25,334,335],{},"[...slug].vue"," pour afficher tous ses cours.",[10,338,340],{"id":339},"naviguer-sans-recharger","Naviguer sans recharger",[48,342,343,344,347,348,350],{},"Un lien ",[25,345,346],{},"\u003Ca href>"," classique recharge la page entière. ",[25,349,38],{}," change de page dans le navigateur, sans rechargement : seul le contenu qui change est remplacé.",[144,352,354],{"className":146,"code":353,"language":148,"meta":149,"style":149},"\u003Ctemplate>\n  \u003Cnav>\n    \u003CNuxtLink to=\"\u002F\">Accueil\u003C\u002FNuxtLink>\n    \u003CNuxtLink to=\"\u002Frecettes\">Toutes les recettes\u003C\u002FNuxtLink>\n    \u003CNuxtLink :to=\"`\u002Frecettes\u002F${recette.id}`\">{{ recette.titre }}\u003C\u002FNuxtLink>\n  \u003C\u002Fnav>\n\u003C\u002Ftemplate>\n",[25,355,356,364,373,396,416,456,465],{"__ignoreMap":149},[153,357,358,360,362],{"class":155,"line":156},[153,359,160],{"class":159},[153,361,164],{"class":163},[153,363,167],{"class":159},[153,365,366,368,371],{"class":155,"line":170},[153,367,173],{"class":159},[153,369,370],{"class":163},"nav",[153,372,167],{"class":159},[153,374,375,378,381,384,386,389,392,394],{"class":155,"line":182},[153,376,377],{"class":159},"    \u003C",[153,379,380],{"class":163},"NuxtLink",[153,382,383],{"class":231}," to",[153,385,238],{"class":159},[153,387,388],{"class":241},"\"\u002F\"",[153,390,391],{"class":159},">Accueil\u003C\u002F",[153,393,380],{"class":163},[153,395,167],{"class":159},[153,397,398,400,402,404,406,409,412,414],{"class":155,"line":272},[153,399,377],{"class":159},[153,401,380],{"class":163},[153,403,383],{"class":231},[153,405,238],{"class":159},[153,407,408],{"class":241},"\"\u002Frecettes\"",[153,410,411],{"class":159},">Toutes les recettes\u003C\u002F",[153,413,380],{"class":163},[153,415,167],{"class":159},[153,417,418,420,422,425,428,430,433,436,439,441,444,447,449,452,454],{"class":155,"line":281},[153,419,377],{"class":159},[153,421,380],{"class":163},[153,423,424],{"class":159}," :",[153,426,427],{"class":231},"to",[153,429,238],{"class":159},[153,431,432],{"class":159},"\"",[153,434,435],{"class":241},"`\u002Frecettes\u002F${",[153,437,438],{"class":159},"recette",[153,440,39],{"class":241},[153,442,443],{"class":159},"id",[153,445,446],{"class":241},"}`",[153,448,432],{"class":159},[153,450,451],{"class":159},">{{ recette.titre }}\u003C\u002F",[153,453,380],{"class":163},[153,455,167],{"class":159},[153,457,458,461,463],{"class":155,"line":288},[153,459,460],{"class":159},"  \u003C\u002F",[153,462,370],{"class":163},[153,464,167],{"class":159},[153,466,467,469,471],{"class":155,"line":297},[153,468,185],{"class":159},[153,470,164],{"class":163},[153,472,167],{"class":159},[48,474,475,476,478,479,481],{},"Bonus : quand un ",[25,477,38],{}," apparaît à l'écran, Nuxt précharge en arrière-plan le code de la page visée. Le clic paraît instantané. Pour un lien vers un autre site, ",[25,480,38],{}," se comporte comme un lien normal.",[48,483,484,485,424],{},"Pour changer de page depuis le code (après l'envoi d'un formulaire, par exemple), utilise ",[25,486,487],{},"navigateTo",[144,489,493],{"className":490,"code":491,"language":492,"meta":149,"style":149},"language-ts shiki shiki-themes github-light-default github-dark-default github-dark-default","async function enregistrer() {\n  \u002F\u002F ... envoi de la recette\n  await navigateTo('\u002Frecettes')\n}\n","ts",[25,494,495,509,514,531],{"__ignoreMap":149},[153,496,497,500,503,506],{"class":155,"line":156},[153,498,499],{"class":249},"async",[153,501,502],{"class":249}," function",[153,504,505],{"class":259}," enregistrer",[153,507,508],{"class":159},"() {\n",[153,510,511],{"class":155,"line":170},[153,512,513],{"class":268},"  \u002F\u002F ... envoi de la recette\n",[153,515,516,519,522,525,528],{"class":155,"line":182},[153,517,518],{"class":249},"  await",[153,520,521],{"class":259}," navigateTo",[153,523,524],{"class":159},"(",[153,526,527],{"class":241},"'\u002Frecettes'",[153,529,530],{"class":159},")\n",[153,532,533],{"class":155,"line":272},[153,534,535],{"class":159},"}\n",[10,537,539],{"id":538},"les-gabarits-layouts","Les gabarits (layouts)",[48,541,542,543,546,547,550],{},"L'en-tête et le pied de page se répètent sur toutes les pages. Plutôt que de les copier, tu les places dans un gabarit : ",[25,544,545],{},"app\u002Flayouts\u002Fdefault.vue",". Le ",[25,548,549],{},"\u003Cslot \u002F>"," marque l'endroit où la page s'insère.",[144,552,554],{"className":146,"code":553,"filename":545,"language":148,"meta":149,"style":149},"\u003Ctemplate>\n  \u003Cheader>Mes recettes\u003C\u002Fheader>\n  \u003Cmain>\n    \u003Cslot \u002F>\n  \u003C\u002Fmain>\n  \u003Cfooter>Fait avec Nuxt\u003C\u002Ffooter>\n\u003C\u002Ftemplate>\n",[25,555,556,564,578,587,600,608,622],{"__ignoreMap":149},[153,557,558,560,562],{"class":155,"line":156},[153,559,160],{"class":159},[153,561,164],{"class":163},[153,563,167],{"class":159},[153,565,566,568,571,574,576],{"class":155,"line":170},[153,567,173],{"class":159},[153,569,570],{"class":163},"header",[153,572,573],{"class":159},">Mes recettes\u003C\u002F",[153,575,570],{"class":163},[153,577,167],{"class":159},[153,579,580,582,585],{"class":155,"line":182},[153,581,173],{"class":159},[153,583,584],{"class":163},"main",[153,586,167],{"class":159},[153,588,589,591,594,598],{"class":155,"line":272},[153,590,377],{"class":159},[153,592,593],{"class":163},"slot",[153,595,597],{"class":596},"st2BK"," \u002F",[153,599,167],{"class":159},[153,601,602,604,606],{"class":155,"line":281},[153,603,460],{"class":159},[153,605,584],{"class":163},[153,607,167],{"class":159},[153,609,610,612,615,618,620],{"class":155,"line":288},[153,611,173],{"class":159},[153,613,614],{"class":163},"footer",[153,616,617],{"class":159},">Fait avec Nuxt\u003C\u002F",[153,619,614],{"class":163},[153,621,167],{"class":159},[153,623,624,626,628],{"class":155,"line":297},[153,625,185],{"class":159},[153,627,164],{"class":163},[153,629,167],{"class":159},[48,631,632,633,636,637,424],{},"Pour activer les gabarits, ",[25,634,635],{},"app.vue"," entoure la page avec ",[25,638,639],{},"\u003CNuxtLayout>",[144,641,643],{"className":146,"code":642,"filename":137,"language":148,"meta":149,"style":149},"\u003Ctemplate>\n  \u003CNuxtLayout>\n    \u003CNuxtPage \u002F>\n  \u003C\u002FNuxtLayout>\n\u003C\u002Ftemplate>\n",[25,644,645,653,662,670,678],{"__ignoreMap":149},[153,646,647,649,651],{"class":155,"line":156},[153,648,160],{"class":159},[153,650,164],{"class":163},[153,652,167],{"class":159},[153,654,655,657,660],{"class":155,"line":170},[153,656,173],{"class":159},[153,658,659],{"class":163},"NuxtLayout",[153,661,167],{"class":159},[153,663,664,666,668],{"class":155,"line":182},[153,665,377],{"class":159},[153,667,176],{"class":163},[153,669,179],{"class":159},[153,671,672,674,676],{"class":155,"line":272},[153,673,460],{"class":159},[153,675,659],{"class":163},[153,677,167],{"class":159},[153,679,680,682,684],{"class":155,"line":281},[153,681,185],{"class":159},[153,683,164],{"class":163},[153,685,167],{"class":159},[48,687,688,689,692,693,424],{},"Une page peut choisir un autre gabarit avec ",[25,690,691],{},"definePageMeta",". Ici, la page d'administration utilise ",[25,694,695],{},"app\u002Flayouts\u002Fadmin.vue",[144,697,700],{"className":146,"code":698,"filename":699,"language":148,"meta":149,"style":149},"\u003Cscript setup lang=\"ts\">\ndefinePageMeta({ layout: 'admin' })\n\u003C\u002Fscript>\n","app\u002Fpages\u002Fadmin.vue",[25,701,702,718,731],{"__ignoreMap":149},[153,703,704,706,708,710,712,714,716],{"class":155,"line":156},[153,705,160],{"class":159},[153,707,228],{"class":163},[153,709,232],{"class":231},[153,711,235],{"class":231},[153,713,238],{"class":159},[153,715,242],{"class":241},[153,717,167],{"class":159},[153,719,720,722,725,728],{"class":155,"line":170},[153,721,691],{"class":259},[153,723,724],{"class":159},"({ layout: ",[153,726,727],{"class":241},"'admin'",[153,729,730],{"class":159}," })\n",[153,732,733,735,737],{"class":155,"line":182},[153,734,185],{"class":159},[153,736,228],{"class":163},[153,738,167],{"class":159},[10,740,742],{"id":741},"à-retenir","À retenir",[15,744,745,751,760,769],{},[18,746,747,748,750],{},"Un fichier de ",[25,749,57],{}," est une page ; son chemin donne l'adresse.",[18,752,753,755,756,759],{},[25,754,204],{}," crée une page dynamique ; ",[25,757,758],{},"useRoute().params.id"," lit la valeur (une chaîne).",[18,761,762,764,765,768],{},[25,763,38],{}," navigue sans recharger et précharge la page visée ; ",[25,766,767],{},"navigateTo()"," fait la même chose depuis le code.",[18,770,771,772,775,776,778],{},"Les éléments communs vont dans ",[25,773,774],{},"app\u002Flayouts\u002F",", avec ",[25,777,549],{}," pour la page.",[780,781,782],"style",{},"html pre.shiki code .scfrF, html code.shiki .scfrF{--shiki-light:#1F2328;--shiki-default:#E6EDF3;--shiki-dark:#E6EDF3}html pre.shiki code .s5JFL, html code.shiki .s5JFL{--shiki-light:#116329;--shiki-default:#7EE787;--shiki-dark:#7EE787}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s5iOY, html code.shiki .s5iOY{--shiki-light:#0550AE;--shiki-default:#79C0FF;--shiki-dark:#79C0FF}html pre.shiki code .shWOn, html code.shiki .shWOn{--shiki-light:#0A3069;--shiki-default:#A5D6FF;--shiki-dark:#A5D6FF}html pre.shiki code .sOnC1, html code.shiki .sOnC1{--shiki-light:#CF222E;--shiki-default:#FF7B72;--shiki-dark:#FF7B72}html pre.shiki code .syCW7, html code.shiki .syCW7{--shiki-light:#8250DF;--shiki-default:#D2A8FF;--shiki-dark:#D2A8FF}html pre.shiki code .sd6ml, html code.shiki .sd6ml{--shiki-light:#6E7781;--shiki-default:#8B949E;--shiki-dark:#8B949E}html pre.shiki code .st2BK, html code.shiki .st2BK{--shiki-light:#82071E;--shiki-light-font-style:italic;--shiki-default:#FFA198;--shiki-default-font-style:italic;--shiki-dark:#FFA198;--shiki-dark-font-style:italic}",{"title":149,"searchDepth":170,"depth":182,"links":784},[785,786,787,788,789,790],{"id":12,"depth":170,"text":13},{"id":45,"depth":170,"text":46},{"id":192,"depth":170,"text":193},{"id":339,"depth":170,"text":340},{"id":538,"depth":170,"text":539},{"id":741,"depth":170,"text":742},"Créer des pages, des adresses dynamiques comme \u002Frecettes\u002F12, des liens sans rechargement et des gabarits communs.","md","nuxt",{},[796,797,798,380,799,487,800,691],"pages","routage","route dynamique","useRoute","layouts","debutant","\u002Fnuxt\u002Fpages-et-routage",[804],"\u002Fnuxt\u002Fstructure",[806,810],{"nom":807,"url":808,"type":809,"anglais":284},"Documentation officielle de Nuxt","https:\u002F\u002Fnuxt.com\u002Fdocs\u002F4.x\u002Fgetting-started\u002Frouting","doc",{"nom":811,"url":812,"type":809},"Guide officiel de Vue","https:\u002F\u002Ffr.vuejs.org\u002Fguide\u002Fintroduction.html",{"title":5,"description":791},[815,817,820,823],{"nom":816,"url":808},"Routage (en anglais)",{"nom":818,"url":819},"Dossier pages (en anglais)","https:\u002F\u002Fnuxt.com\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Fpages",{"nom":821,"url":822},"Composant NuxtLink (en anglais)","https:\u002F\u002Fnuxt.com\u002Fdocs\u002F4.x\u002Fapi\u002Fcomponents\u002Fnuxt-link",{"nom":824,"url":825},"Dossier layouts (en anglais)","https:\u002F\u002Fnuxt.com\u002Fdocs\u002F4.x\u002Fdirectory-structure\u002Fapp\u002Flayouts","nuxt\u002F03.pages-et-routage","XGx-HuzDcRv78uNxwHqN3bEqxuC7_Dqr6I9BKBgdMUE",[829,833,836,837,841,845,849,853],{"path":830,"title":831,"stem":832},"\u002Fnuxt\u002Fintroduction","Introduction à Nuxt","nuxt\u002F01.introduction",{"path":804,"title":834,"stem":835},"La structure d'un projet","nuxt\u002F02.structure",{"path":802,"title":5,"stem":826},{"path":838,"title":839,"stem":840},"\u002Fnuxt\u002Fcomposants","Les composants","nuxt\u002F04.composants",{"path":842,"title":843,"stem":844},"\u002Fnuxt\u002Frecuperer-des-donnees","Récupérer des données","nuxt\u002F05.recuperer-des-donnees",{"path":846,"title":847,"stem":848},"\u002Fnuxt\u002Froutes-api","Les routes API","nuxt\u002F06.routes-api",{"path":850,"title":851,"stem":852},"\u002Fnuxt\u002Fmodes-de-rendu","Les modes de rendu","nuxt\u002F07.modes-de-rendu",{"path":854,"title":855,"stem":856},"\u002Fnuxt","Nuxt","nuxt\u002Findex",[858,860],{"title":834,"path":804,"stem":835,"description":859,"children":-1},"Les dossiers d'un projet Nuxt 4 et le rôle de chacun.",{"title":839,"path":838,"stem":840,"description":861,"children":-1},"Découper l'interface en composants importés automatiquement, leur passer des données et charger les plus lourds à la demande.",[863],{"path":804,"title":834,"ligne":793},[865,866,867,868,869,871,872,873],{"path":830,"title":831,"niveau":801,"stem":832},{"path":804,"title":834,"niveau":801,"stem":835},{"path":802,"title":5,"niveau":801,"stem":826},{"path":838,"title":839,"niveau":801,"stem":840},{"path":842,"title":843,"niveau":870,"stem":844},"intermediaire",{"path":846,"title":847,"niveau":870,"stem":848},{"path":850,"title":851,"niveau":870,"stem":852},{"path":854,"title":855,"niveau":874,"stem":856},"memo",1794583439950]